Gitlab CI#

We use Gitlab CI to build our containers, test it, and store them in the internal registry.

These images are then pulled into the production servers.

Configuration#

All configuration is done inside .gitlab-ci.yml.

Pipelines#

We have two pipelines configured: for master and other branches. That’s how it works: we only run testing for feature branches and do the whole building/testing/deploying process for the master branch.

This allows us to speed up development process.

Automatic dependencies update#

You can use dependabot to enable automatic dependencies updates via Pull Requests to your repository. Similar to the original template repository: list of pull requests.

It is available to both Github and Gitlab. But, for Gitlab version you currently have to update your .gitlab-ci.yml.

Secret variables#

If some real secret variables are required, then you can use gitlab secrets. And these kind of variables are required most of the time.

See Django on how to use dump-env and gitlab-ci together.

Documentation#

After each deploy from master branch this documentation compiles into nice looking html page. See gitlab pages info.

Further reading#