Staging environment

Auto-deploying to staging

On every change to the master branch, our development server builds a staging environment with latest code on fresh live data. This is done with a cronjob invoked script that does the following:

  1. Check if there were any changes from last time.
  2. Get latest changes.
  3. Run bin/buildout -c staging.
  4. Rsync Data.fs from the production server.
  5. Rsync blobstorage from the production server.
  6. Restart Zope.

Note

The script is invoked every 5 minutes.

Note

There is no need to purge the staging environment for every re-build as we don’t need to test the entire build process – Travis already does that for us.

TODO: How is staging server actually set up? Permissions TODO: crontab script that I describe below doesn’t exist yet