- Learn about GitHub Actions Workflows.
- Learn about GitHub Self-Hosted Runner.
We want to create a simple CI pipeline that will be used to build and push our docker image to a central registry. You can use DockerHub or GitHub docker registry as a central docker registry.
The following expectations should be met to complete this milestone.
- CI pipeline should consist of the following stages
- Build API
- Run tests
- Perform code linting
- Docker login
- Docker build and push
- To achieve the stages of building, testing, and performing code linting, you need to use appropriate make targets.
- CI pipeline should be run using a self-hosted GitHub runner running on your local machine.
- CI pipeline should only be triggered when changes are made in the code directory and not in other directories or filepaths.
- CI workflow should allow the developer to manually trigger the pipeline when required.