Continuous Development

From SatNOGS Wiki


The Continuous Deployment (CD) workflow for both Network and DB consists of the three steps below.

GitLab CI

We have two different jobs (stage and production) that are triggered when there is a new merge on dev or master respectively. These jobs can been seen at the .gitlab-ci.yml file on both of these repositories.

GitLab Variables

GitLab hosts some secret variables for each environment. Such as IP address, ssh keypairs, etc. GitLab CI uses that variables to remotely push the new code to the servers.

Git Hooks

On servers there is a post-update git hook that runs the deployment tasks (collectstatic, reload gunicorn, etc), on each push.

See also