Skip to main content

Plock is a Plone Installer for the Pip-loving Crowd

Project description

plock

Plock is a Plone Installer for the Pip-loving Crowd

https://travis-ci.org/aclark4life/plock.png?branch=master

Installation

Installing and running Plone with Plock (inside a virtualenv) looks like this:

$ virtualenv-2.7 .
$ source bin/activate
(venv)$ pip install plock
(venv)$ plock
Plock is installing Plone. This may take a while.......(3)....(4)....(4)....(4)....(5)....(5)....(9)....(14)....(21)....(24)....(29)....(33)....(38)....(43)....(48)....(54)....(58)....(62)....(66)....(71)....(74)....(78)....(78)....(83)....(87)....(89)....(92)....(97)....(98)....(98)....(98)....(98)....(98)....(100)....(102)....(103)....(108)....(110)....(113)....(115)....(120)....(123)....(128)....(133)....(138)....(142)....(148)....(153)....(158)....(161)....(163)....(168)....(171)....(175)....(179)....(181)....(184)....(189)....(193)....(195)....(198)....(203)....(205)....(210)....(214)....(221)....(224)....(228)....(234). done.
(venv)$ plone fg

Configuration

Plone uses Buildout to manage its installation and configuration. Plock creates a buildout.cfg file for you that initially looks like this:

[buildout]
extends = https://raw.github.com/plock/pins/master/plone-4.3

Add-ons

To list available add-ons:

$ plock --list-addons

To install add-ons, add the desired Python package name(s) to the command line e.g.:

$ plock --add-on Products.PloneFormGen

Restart Plone and install the add-on(s) in Plone via Site Setup -> Add-ons. After you install add-ons with Plock your buildout.cfg file will look like this:

[buildout]
extends = release.cfg

[plone]
eggs =
    ${base:packages}
    ${addon:packages}
    Products.PloneFormGen

Advanced

Environment variables

PLOCK_EXPERT

If you are already familiar with Buildout, you may be using a ~/.buildout/default.cfg file to define various settings such as the Buildout eggs-directory. In this case, you probably want to use the eggs installed in your already-defined eggs-directory (rather than letting Plock create and populate a new eggs-directory). To configure such behavior, set PLOCK_EXPERT to True e.g.:

$ export PLOCK_EXPERT=True

Now Plock will respect your ~/.buildout/default.cfg settings. Alternatively you can use the --expert command line argument to enable expert mode.

PLOCK_TIMEOUT

If you are installing via a slow internet connection, you can adjust the timeout length from its default value of 45 seconds to whatever you like with the PLOCK_TIMEOUT variable:

$ export PLOCK_TIMEOUT=60

FAQ

Why build Plock on top of Buildout?

Plock is a work around for pip install Plone which works but requires a lengthy requirements.txt, and lacks additional features provided by Buildout that are needed to use Plone.

Why support pip?

To advance the state of Plone such that Buildout can be used, but not required.

Why make Buildout optional?

To market Plone to Python programmers who are generally more familiar with pip than Buildout.

Why the name Plock?

Plock is a single by the band Plone.

Changelog

0.1.8 (2013-12-28)

  • Support mutually exclusive options plock . and plock -l

  • Restore preserve addons functionality and make it default

0.1.7 (2013-12-28)

  • New features:
    • Create install_dir if it does not exist

    • Use Plock Pins instead of PythonPackages as zc.buildout configuration host

    • Add -v, –version to display version

  • Bug fixes
    • Don’t break –list-addons

    • Don’t break –install-addons

  • Removed features:
    • Remove –insecure

    • Remove –virtualenv

    • Remove –zope2-only

0.1.6 (2013-08-12)

  • Bug fixes:
    • Fix Buildout command execution

0.1.5 (2013-08-12)

  • Bug fixes:
    • Fix Buildout command execution

0.1.4 (2013-08-12)

  • New features:
    • Add --expert command line argument, does same thing as PLOCK_EXPERT environment variable

    • Add --insecure command line argument to allow extending remote hosted configuration files

  • Bug fixes:
    • Prevent inadvertently switching from Plone to Zope2 or vice versa

    • Configure Buildout command relative to current working directory, instead of relying on source bin/activate

0.1.3 (2013-07-31)

  • New features:
    • Added experimental --zope2-only option to install Zope2 only.

  • Bug fixes:
    • Exit Plock when egg count remains the same for longer than or equal to PLOCK_TIMEOUT

0.1.2 (2013-07-29)

  • Document PLOCK_EXPERT environment variable to respect .buildout/default.cfg

  • Bug fixes:
    • Fixed ref to args.add_on via --preserve

0.1.1 (2013-07-28)

  • Fix “brown bag”

0.1.0 (2013-07-28)

  • Make “secure”
    • All Buildout configuration files (for Plone, Zope2, the ZTK, etc.) are included in plock; this eliminates the possibility of a MITM-attack via remote extends (now you just need to trust PyPI and dist.plone.org.)

  • Changed features:
    • Renamed script: install-plone to plock.

    • Renamed arg: --install-addons to --add-on (to improve argparse-provided usage statement).

0.0.9 (2013-07-25)

  • Bug fixes:
    • Don’t print “Wrote buildout.cfg” if buildout.cfg exists.

0.0.8 (2013-07-25)

  • New features:
    • Added –write-config to write buildout.cfg and exit.

0.0.7 (2013-07-24)

  • Bug fixes:
    • Restore -U

0.0.6 (2013-07-24)

  • Bug fixes:
    • Make sure addons list is sorted.

0.0.5 (2013-07-24)

  • New features:
    • Added --raw, for use with --list-addons e.g. bin/install-plone –list–addons –raw

    • Added --preserve for use with --install-addons e.g. bin/install-plone –install-addons Products.PloneFormGen –preserve

  • Bug fixes:
    • bin/install-plone –install-addons PACKAGE(S) can now be run the first time to install both Plone and add-ons.

    • bin/install-plone –install-addons PACKAGE(S) saves a copy of buildout.cfg and reverts changes if a Buildout run fails.

0.0.4 (2013-07-23)

  • Provide updated add-on installation instructions

  • Install add-ons with bin/install-plone –install-addons PACKAGE(S)

0.0.3 (2013-07-22)

  • List add-ons with bin/install-plone –list-addons

0.0.2 (2013-07-19)

  • Provide add-on installation instructions

  • Write local buildout.cfg instead of relying on -c remote_cfg.cfg

0.0.1 (2013-07-15)

  • Initial release

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

plock-0.1.8.zip (16.4 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page