I am building a CI/CD pipeline to allow us to deploy OpenEDX in EKS with tutor (and terraform). I have it working now with an out of the box setup or rather the default containers.
As part of the build I would like our studio team to commit changes to themes and the pipeline to apply them. I have started by trying to get the indigo theme to be built into a container and then deployed.
The pipeline is structured into different steps and the build of the theme is done in its own step (if there is a change in the theme directory). I check the custom version into our ECR registry (AWS Docker Registry) but am having a bit of an issue in getting tutor to use that in the run step.
If I set the environment variable DOCKER_REGISTRY it applies to all containers which means:
- I can pull down all images to build the platform and upload them to our ECR registry. I started to do this but notice there are specific version of containers called in tutor (like rabbitm188.8.131.52-management-alpine). I think this would lock me into a specific version - rather than rebuilding with the latest tutor version each time the pipeline runs?
- I can have tutor build out the configs and then overlay our private repo on the deployment file in k8s instead. Finishing with a kube apply -f kustomisation.yml.
Is there anyway to specifically tell it to only pull down the openedx container from a private repo?