Deployment - adaptive-learning/flocs GitHub Wiki

Deployment architecture has 4 steps: development (locally), testing, staging and production. Don't skip any of these step under any circumstances.

Local development

Too see the web app locally (http://localhost:8000/), you need to run:

./manage gruntserver

Testing

Before staging, make check and make test the code. Unfortunately, it's not enforced automatically so don't forget.

TODO: tools for continuous integration

Staging

The purpose of the staging step is to test the new version in the setting as close as possible to the production setting (which differs a lot from the development setting, e.g. different database and minification of JS).

If you want permissions to stage and publish new versions on the Adaptive Learning server, tell Tom about it. (You need an account on the server and also you need to add the production and staging remotes to your local repository.)

To publish the new version to the staging, run:

git push staging

There is a deploy script in our repository which specifies what will be run on the server after the push.

Staging version can be publicly accessed at http://staging.flocs.thran.cz/. Before going to the next step, it should be tested that everything works as expected on the server.

Production

To publish the new version to the production, run:

git push production

The public URL is http://flocs.thran.cz/ for Czech localization and http://en.flocs.thran.cz/ for English localization.

Logs

TBA