Skip to content

Continuos Integration

We use GitHub Actions as our CI/CD tool. Currently, we have two workflows:

Deploy docs

This workflow is used to deploy the mkdocs documentation to GitHub Pages. It is triggered on every push to the main branch that affects the documentation. Specifically, it is triggered when a file in the docs directory or the mkdocs.yaml configuration file has changed.

Check the deploy-docs-ci.yaml action for more details.

Operator CI

This workflow is used to test, build and push the LTB Operator image, CatalogSource and Bundle to the GitHub Container Registry. It is triggered for every push to a pull request and for every push to the main branch.

You can find this action here: operator-ci.yaml

Test

The test step runs the unit tests of the LTB Operator and fails the pipeline if any test fails. Additionally, a coverage report is generated and uploaded to Codecov. Pull requests are checked for the code coverage and will block the merge if the coverage drops below 80%. This is ensured by the Codecov GitHub integration and defined in the codecov.yml file.

Build

We use the GitHub actions provided by Docker to build and push the LTB Operator image to the GitHub Container Registry. Additionally, we use cosign to sign the images, so that users can verify the authenticity of the image.

Additional deployment artifacts

To be able to deploy the LTB Operator with the Operator Lifecycle Manager, a Bundle and a CatalogSource must be created. These artifacts are created with the Operator-SDK, to simplify the pipeline these tasks have been exported to the Makefile


Last update: June 30, 2023