Setting up the dev branch continuous delivery
@DSASanFrancisco/portal-members These changes enable merged builds to the dev
branch to automatically push the tagged docker image to dockerhub and then deploy the code to http://api.dev.dsasf.org.
The API server is prepared ahead of time by terraform. I had to make some changes to the code to make this possible: https://gitlab.com/DSASanFrancisco/infrastructure/merge_requests/4
We will need to switch the current http://members.dev.dsasf.org to point to this new API and then all merges to dev will be represented on the dev environment. We will lose all of our shared users in the process. I'm not sure what the best way to handle this will be.
Also, a couple things worth note:
- New terraform builds will destroy the database until we store the database on a mounted Digital Ocean volume (a followup PR)
- We need to add letsencrypt to the terraform build so that we can enable https for the dev environment
- GitLab Registry only allows you to push images as
registry.gitlab.com/dsasanfrancisco/membership_api
orregistry.gitlab.com/dsasanfrancisco/membership_api/<component>
with somecomponent
name. However, DockerHub does NOT allow you to use 4 level names. This is why I do a bit of a name shuffle between the name in the build script and the name in the deploy script.
Edited by Jeff May