Commit Graph

15 Commits

Author SHA1 Message Date
unkin-agent 976fb0b3a9 Add fedora 42/43/44 base images
ci/woodpecker/pr/build/3 Pipeline failed
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build/4 Pipeline was successful
ci/woodpecker/pr/build/2 Pipeline was successful
ci/woodpecker/pr/build/1 Pipeline was successful
2026-10-03 09:49:11 +10:00
benvin 71f8db9327 Merge pull request 'Bump unkin-ca-certificates to 2026.10.2 for the intermediate CA' (#5) from container-ca-intermediate into main
ci/woodpecker/tag/docker Pipeline was successful
Reviewed-on: #5
v0.1.3
2026-10-02 23:13:38 +10:00
unkin-agent aea71b9d50 Bump unkin-ca-certificates to 2026.10.2 for the intermediate CA
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build Pipeline was successful
The pinned 2025.7.13 package shipped only the root anchor (CN=unkin.net).
Hosts that present a bare leaf issued by CN=unkin.net Intermediate
Authority — s3.ceph.unkin.net among them — fail to verify from images
built on this base.

- Pin CA_RPM_URL/CA_RPM_SHA256 to unkin-ca-certificates-2026.10.2-1.el9,
  which installs both the root and intermediate anchors.
2026-10-02 23:06:06 +10:00
benvin ba0f97a8cc Merge pull request 'Stop publishing a latest tag' (#4) from container-no-latest into main
ci/woodpecker/tag/docker Pipeline was successful
Reviewed-on: #4
v0.1.2
2026-10-02 21:43:48 +10:00
unkin-agent 643e95754d Stop publishing a latest tag
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build Pipeline was successful
A floating latest silently substitutes what a consumer runs; images in the
estate are consumed by explicit version only.

- Drop latest from the docker release step's tag list
2026-09-28 23:39:51 +10:00
benvin 71570dc24f Merge pull request 'pre-commit: run on the estate-built gobuilder image' (#3) from container-precommit-image into main
Reviewed-on: #3
2026-09-28 22:16:49 +10:00
unkin-agent dd7bda8ead pre-commit: run on the estate-built gobuilder image
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build Pipeline was successful
The step needs uvx, so it ran on the packer-built almalinux9-gobuilder —
the image these repos exist to replace.

- switch the pre-commit step to docker-internal/gobuilder:0.1.0-alma9
2026-09-28 21:29:17 +10:00
benvin 437123a00b Merge pull request 'Build through artifactapi and get the internal CA into buildkit' (#2) from container-scaffold into main
ci/woodpecker/tag/docker Pipeline was successful
Reviewed-on: #2
v0.1.1
2026-09-27 23:12:40 +10:00
unkin-agent b9d45eff68 Build through artifactapi and get the internal CA into buildkit
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build Pipeline was successful
The buildkit_config setting does not exist in the plugin-docker-buildx build
we run: the binary has no PLUGIN_BUILDKIT_CONFIG, so the block was dead YAML
and `docker buildx create` ran without --config. The plugin only writes a
buildkit.toml (pointing at /etc/docker/certs.d/<registry>/ca.crt) when
`registry` is set, which is why the tag build pushed fine and the PR build
had no CA. Set registry on every step and drop the dead block.

The matrix also overrode BASE_IMAGE with the Docker Hub path, so CI never
used the artifactapi remote that distro.env selects. Point it at artifactapi
and have ci/check-distros.sh fail when a matrix value restating a distro.env
key drifts from it.
2026-09-27 22:18:51 +10:00
benvin 1a4ea9d623 Merge pull request 'Add matrixed container base image build' (#1) from container-scaffold into main
ci/woodpecker/tag/docker Pipeline was successful
Reviewed-on: #1
v0.1.0
2026-09-27 21:56:52 +10:00
unkin-agent 63cf28c90e Replace pre-commit.sh with the pre-commit framework and drop the test harness
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build Pipeline was successful
The hand-rolled pre-commit.sh reimplemented what upstream hooks already do.
Move to pre-commit.com with the estate's usual pre-commit-hooks set plus
hadolint and shellcheck, and keep the one check with no upstream equivalent
(distros/ vs the Woodpecker matrices) as a repo: local hook.

The test harness goes; tests will be reintroduced differently.

- add .pre-commit-config.yaml and ci/check-distros.sh
- delete pre-commit.sh, test.sh and .woodpecker/test.yaml
- run uvx pre-commit run --all-files from .woodpecker/pre-commit.yaml and make pre-commit
- drop the Dockerfile test stage and the make test targets
2026-09-27 20:17:04 +10:00
unkin-agent 03ab698efa Pull the base image through the artifactapi dockerhub remote
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build Pipeline was successful
ci/woodpecker/pr/test Pipeline was successful
A buildkit FROM does its own pull and ignores the nodes' containerd mirror, so
every build was an uncached, rate-limited Docker Hub pull.

- point BASE_IMAGE at dockerhub/library/almalinux:9
- drop the syntax directive, which pulled a frontend image from Docker Hub for
  features this Dockerfile does not use
2026-09-27 18:37:18 +10:00
unkin-agent b3f46a715a Take the estate repo name from distro.env
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/test Pipeline was successful
ci/woodpecker/pr/build Pipeline was successful
Keeps the test assertions distro-agnostic so a non-el9 matrix entry needs no
script edit.
2026-09-27 18:07:05 +10:00
unkin-agent 970cfad2ee Add matrixed container base image build
Replace the packer-images almalinux base with a Dockerfile matrix over distros/,
publishing one image per distro to docker-internal on a single repo semver.

- bootstrap the internal CA from a sha256-pinned rpm fetched over plain HTTP
- install the estate dnf repo configuration pointed at artifactapi
- run in-image assertions as a --target test build stage
- add pull_request build/test/pre-commit and tag-triggered docker workflows
2026-09-27 17:47:22 +10:00
gitadmin eaeaca20b2 Initial commit 2026-09-27 17:29:59 +10:00