Skip to content

Publishing

Stéphane Brunner edited this page May 21, 2024 · 14 revisions

C2C CI utils is build to be able to publish a project with the following structure:

Have stabilization branches named by default <major>.<minor>. Have tag for the release named by default <major>.<minor>.<patch>.

With C2C CI utils you can publish a python package and a Docker image from the same repository.

The default publishing is:

  • Push on the <major>.<minor> branch will publish Docker images.
  • Create the tag <major>.<minor>.<patch> will publish the Docker images, and the Python package.
  • Push on a pull request will publish the Docker images with the pull request ID ad tag.
  • Close a pull request will delete the related Docker images.
  • Push on the master branch will publish the Docker images with the master tag (Publishing a python package is also possible).
  • The version at the last line of the SECURITY.md of the master branch will also be published using the latest tag, this will respect the tags present in the configuration.
  • In the SECURITY.md file of the master branch, we can also add a column Alternate Tag to publish the Docker images with another tag, this will respect the tags present in the configuration (only for Docker).

The Docker images are published on Docker Hub and GitHub Container Registry.

See also the publish part of the Configuration.

You can run the publishing locally in dry-run mode:

GITHUB_REF=... c2cciutils-publish --dry-run ...
Clone this wiki locally