Services

Resources

Company

🏅

4 - Setup a CI pipeline

Learning Outcomes

  • Learn about GitHub Actions Workflows.

  • Learn about GitHub Self-Hosted Runner.

Problem Statement

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.

Expectations

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.

Further Reading