Files
2026-09-08 08:52:17 -04:00

2.9 KiB

Building

Because this project consumes itself, when there was no base-runner image, there was no containerd-runner image, which makes this project unable to build using GitHub/Gitea workflows. For that reason, there is a separately maintained set of build scripts under cicd/. It serves as the original template for the Gitea workflow (.gitea/workflows/).

Environment Variables

Whether executing the build via cicd/ shell scripts or through Gitea workflows, there are several variables to consider.

Public

These are the variables you are expected to tweak.

Name Required Default Purpose
CONTAINERD_REGISTRY_HOST No docker.inteligr8.com The containerd registry to publish the built container image.
CONTAINERD_DEBUG No Set to any value to enable debug mode.
DEBIAN_VERSION No stable-20260824 The base version of Debian to use. The slim variant is automatically selected.

Private

These are the variables you are not expected to tweak.

Name Required Default Purpose
CONTAINERD_IMAGE_NAMESPACE No inteligr8/ A prefix for the containerd image name.
CONTAINERD_IMAGE_NAME No base-runner The containerd image name.
CONTAINERD_CMD No buildah The CLI tool to use to build the containerd image name. (e.g. buildah, podman, or docker)
CONTAINERD_BUILD_FORMAT No docker The containerd build format for the CLI tool to use. (e.g. oci or docker)
SKOPEO_OPTS No Extra options to pass the skopeo CLI tool.
CONTAINERD_CMD_OPTS No Extra options to pass the containerd CLI build tool.

Shell Execution

The shell script will build the container and name it according to the variables above. By default, the tag will be the short SHA of the Git commit HEAD (current). The tag will have the format: sha1234567. This means that if you want to rebuild without any source changes, but using an updated Debian version, you should create a new commit. However, it is not actually necessary. However, we are using a specific version for DEBIAN_VERSION for the traceability. If we didn't care, we would just use stable.

GitHub/Gitea Workflow Execution

The workflow definition maps some variables to Inteligr8 variables:

INTELIGR8_REGISTRY_HOST => CONTAINERD_REGISTRY_HOST INTELIGR8_IMAGE_NAMESPACE => CONTAINERD_IMAGE_NAMESPACE

Those values are expected to be the same across all projects.