Python helpers for Yola's Deployment system.
Hooks are specified in deploy/hooks.py
in the application, as the
variable hook
. It should be a class, implementing the interface
yodeploy.hooks.base.DeployHook
.
yodeploy.hooks
includes a set of more useful hook classes, useful
for subclassing or using as-is:
`yodeploy.hooks.python.PythonApp`:
All your virtualenv needs. Declare requirements in
`requirements.txt` in the root of your application.
A directory named `virtualenv` will be created in the
application's directory.
The current hook points are:
`prepare`:
Post-unpack, but before the `live` symlink is swung.
`deployed`:
After the symlink is swung.
/srv/app: Deploy root
`versions`
*hash*: Each unpacked version of the application
`unpack`: Working area
`live`: Symlink to `versions/`\ *live-version*.
`virtualenvs`
*hash*: Each unpacked virtualenv (symlinked to from the unpacked
application)
`unpack`: Working area
app/target/artifact/version : A particular version of an artifact.
app/target/artifact/version.meta: The metadata for an artifact. Only used in stores that don't support metadata on objects.
app/target/artifact/latest: A text file containing the version of the most recent artifact.
Artifacts have a 'deploy_compat' attribute, defining the deployment
system they were designed for. It is defined in deploy/compat
in the
source.
- Yola's legacy deployment system. No longer supported.
- The legacy repository with yola.deploy < 0.3. No longer supported.
- yola.deploy 0.3.x. No longer supported.
- yodeploy >= 0.4 (after the rename).
- Python 3 apps with yodeploy >= 0.8.1.
Run nosetests