.gitea/workflows | ||
org | ||
.gitignore | ||
build.py | ||
distroless-example.toml | ||
images-info.toml | ||
LICENSE | ||
README.md | ||
tags.toml | ||
tasks.toml |
image-forge
alt images
To build alt
images, run:
./build.py -o alt
k8s images
To build k8s
images for branch p10
and push to repository test_k8s
, run:
./build.py -o k8s -b p10 --overwrite-organization test_k8s --tasks tasks.json --tags tags.json
distroless-images
create
To create distroless image copy one of existing org/alt/distroless-*
images.
Or create directory and copy distroless-example.toml
to it, rename file to
distroless.toml
and edit.
build
For example if created image alt/distroless-false and you want to push to
the organization <ORGANIZATION>
, run:
./build.py -i alt/distroless-false --overwrite-organization <ORGANIZATION>
If you push to the users repository, then organiztion is your username.
info.yaml format
-
is_versioned
: bool (REQUIRED)Whether to use package version as a tag for this image
-
source_packages
: list of strings (REQUIRED)List of source packages (src.rpm) this image depends on. If contains jinja2 template syntax,
--package-version
CLI option must be specified. -
version_template
: string (OPTIONAL)template to apply when construction the tag,
version
string variable is available in the template
examples
org/k8s/flannel-cni-plugin
is_versioned: true
version_template: v{{ version.rsplit('.', 1) | first }}-flannel{{ version.rsplit('.', 1) | last }}
source_packages:
- cni-plugin-flannel
./build.py -i k8s/flannel-cni-plugin
org/k8s/kube-apiserver
is_versioned: true
version_template: v{{ version }}
source_packages:
- kubernetes{{ version }}
./build.py -b sisyphus -i k8s/kube-apiserver --package-version '{"k8s/kube-apiserver": "1.31"}'
org/k8s/pause
is_versioned: true
source_packages:
- kubernetes-pause
./build.py -i k8s/pause
Dependencies
On x86_64 machine using p10 branch you need:
python3-module-tomli
python3-module-jinja2
python3-module-yaml
python3-module-requests
qemu-user-static-binfmt-aarch64
to build for arm64 architectureqemu-user-static-binfmt-arm
to build for arm architectureqemu-user-static-binfmt-ppc
to build for ppc64le architecture