Tutor, Github Actions and AWS Elastic Container Registry are a powerful trio of tools for creating an automated CI process to build and register your custom Open edX Docker image, and automating the entire process is easy.

This is part I of a two-part series on implementing CI/CD processes with Tutor Open edx. In this first part we’ll automate a Tutor Open edX build. In part II we’ll learn how to deploy this build.

In this article I’ll explain the key pieces of this fully-functional Github Actions Build workflow, which does the following:

  1. builds a custom Open edX Docker image using a custom fork, a custom theme, an Open edX plugin, and one Xblock,
  2. registers the custom Docker image in AWS Elastic Container Registry.

With only minor modifications you can tailor this workflow to automate the build of your own Open edX installation.

Note

The code repository referenced in this article was generated with Cookiecutter OpenedX Devops, a completely free open source tool that helps you to create and maintain a robust, secure environment for your Open edX installation. The Github Actions workflow we review below is only one of the many fantastic devops tools that are  provided completely free by Cookiecutter OpenedX Devops. If you want, you can follow the README instructions in the Cookiecutter to create your own repository, pre-configured with your own AWS account information, your Open edX platform domain name and so on. It’s pretty easy.