Skip to content

Latest commit

 

History

History
51 lines (32 loc) · 3.72 KB

CONTRIBUTING.md

File metadata and controls

51 lines (32 loc) · 3.72 KB

Git branches, tags and continuous integration

GitHub Actions builds C-PAC images for each branch and tag pushed to GitHub; these images are pushed to GHCR and deleted upon branch deletion on GitHub.

If a commit is pushed or merged into develop on GitHub, GitHub Actions will push nightly and its variants to Docker Hub.

If a tag is pushed to GitHub that matches the regular expression

^v[0-9]+\.[0-9]+\.[0-9]+$

GitHub Actions will push release-${TAG} and its variants and latest and its variants to Docker Hub.

Software dependencies and variant images

We currently have one main and 3 variant images:

To save time building Docker images, our continuous integration is set up to build and store staging images independent of changes to C-PAC itself. Images are rebuilt when their Dockerfile changes on a Git branch.

All Dockerfiles are stored in .github/Dockerfiles.

Naming conventions

We have 3 types of staging Dockerfiles: operating system, software dependency, and C-PAC variant.

operating system

{OS name}.{version}.Dockerfile

software dependency

{software name}.{version}-{OS version}.Dockerfile

C-PAC variant

C-PAC.{version}[-{variant}]-{OS version}.Dockerfile (-{variant} is omitted for the main image)

Changing dependencies