What Are Github Actions?
Github Actions allow us to automate our CI/CD workflow, software testing, notifications, image and container building building and much more.
We find especially powerful, the fact that githubs platform allocates a container, with up to 6GB of memory and sufficient CPU to perform a lot of testing.
Our Merge Test Action:
As discussed prior, the depdencies for this project are pretty extensive. So we take advantage of Github Actions to test our dependency installer as well as the entire docker image building and publishing pipeline. If this succeeds, we increase our comfort level that the check-in is clean and ready to be promoted to its next environment.
Our custom github action does the following when a pull request is created to merge the branch dev
into the branch main
:
- Tests the dependency installation scripts.
- Tests the core functionality of the ML application.
- Tests the docker builds.
- Tests the minikube deployments.
Below is an example of checks being run at the time of creating a pull request from the branch dev
into the branch main
:
Below is an example of the test failing:
Below is an example of the test succeeding: