/cc-utils

CI/CD utils for gardener project

Primary LanguagePythonOtherNOASSERTION

CICD, Delivery, Compliance and Security Automation for Gardener

tests release

libs

What is it

cc-utils is a collection of re-usable utils intended to be used in the context of Continuous Integration and output qualification of components relevant for the gardener project.

End-User Documentation

How to contribute

Be sure to run tests, linter and codestyle checks:

  • .ci/pycodestyle
  • .ci/pyflakes-lint
  • .ci/test

Run .ci/install_git_hooks to register recommended git hooks.

How to use it

Install using pip

pip install gardener-cicd-libs - install libraries (no CLI)

pip install gardener-cicd-cli - install CLI

pip install gardener-cicd-whd - install Webhook-Dispatcher

Consume from Container Image

A copy of cc-utils is contained in the default container image in which gardener CI/CD jobs are run (eu.gcr.io/gardener-project/cc/job-image):

  • gardener-ci is available from PATH

Runtime environment requirements

Python Runtime

Python 3.8 or greater is required as a runtime (see requirements.txt for additional runtime dependencies). Earlier Python versions (3.7, 3.6, 2.x) are not supported.

In addition to the Python API, some functions are exposed via a command line interface (./cli.py).

Special Modules

  • cli/gardener_ci/*.py: all defined functions are exposed via gardener-ci <module_name> <function_name>