From 976fb0b3a9b130e57b004f66bb536546f3a7dc1f Mon Sep 17 00:00:00 2001 From: unkin-agent Date: Sat, 3 Oct 2026 09:49:11 +1000 Subject: [PATCH] Add fedora 42/43/44 base images --- .woodpecker/build.yaml | 9 ++++++++ .woodpecker/docker.yaml | 9 ++++++++ README.md | 3 +++ distros/fedora42/distro.env | 13 ++++++++++++ distros/fedora42/yum.repos.d/fedora.repo | 13 ++++++++++++ distros/fedora42/yum.repos.d/unkin.repo | 27 ++++++++++++++++++++++++ distros/fedora43/distro.env | 13 ++++++++++++ distros/fedora43/yum.repos.d/fedora.repo | 13 ++++++++++++ distros/fedora43/yum.repos.d/unkin.repo | 27 ++++++++++++++++++++++++ distros/fedora44/distro.env | 13 ++++++++++++ distros/fedora44/yum.repos.d/fedora.repo | 13 ++++++++++++ distros/fedora44/yum.repos.d/unkin.repo | 27 ++++++++++++++++++++++++ 12 files changed, 180 insertions(+) create mode 100644 distros/fedora42/distro.env create mode 100644 distros/fedora42/yum.repos.d/fedora.repo create mode 100644 distros/fedora42/yum.repos.d/unkin.repo create mode 100644 distros/fedora43/distro.env create mode 100644 distros/fedora43/yum.repos.d/fedora.repo create mode 100644 distros/fedora43/yum.repos.d/unkin.repo create mode 100644 distros/fedora44/distro.env create mode 100644 distros/fedora44/yum.repos.d/fedora.repo create mode 100644 distros/fedora44/yum.repos.d/unkin.repo diff --git a/.woodpecker/build.yaml b/.woodpecker/build.yaml index 6293f10..69fbc9e 100644 --- a/.woodpecker/build.yaml +++ b/.woodpecker/build.yaml @@ -8,6 +8,15 @@ matrix: - DISTRO: alma9 IMAGE: almalinux9 BASE_IMAGE: "artifactapi.k8s.syd1.au.unkin.net/dockerhub/library/almalinux:9" + - DISTRO: fedora42 + IMAGE: fedora42 + BASE_IMAGE: "artifactapi.k8s.syd1.au.unkin.net/dockerhub/library/fedora:42" + - DISTRO: fedora43 + IMAGE: fedora43 + BASE_IMAGE: "artifactapi.k8s.syd1.au.unkin.net/dockerhub/library/fedora:43" + - DISTRO: fedora44 + IMAGE: fedora44 + BASE_IMAGE: "artifactapi.k8s.syd1.au.unkin.net/dockerhub/library/fedora:44" steps: - name: build diff --git a/.woodpecker/docker.yaml b/.woodpecker/docker.yaml index fa6f51f..f58416d 100644 --- a/.woodpecker/docker.yaml +++ b/.woodpecker/docker.yaml @@ -9,6 +9,15 @@ matrix: - DISTRO: alma9 IMAGE: almalinux9 BASE_IMAGE: "artifactapi.k8s.syd1.au.unkin.net/dockerhub/library/almalinux:9" + - DISTRO: fedora42 + IMAGE: fedora42 + BASE_IMAGE: "artifactapi.k8s.syd1.au.unkin.net/dockerhub/library/fedora:42" + - DISTRO: fedora43 + IMAGE: fedora43 + BASE_IMAGE: "artifactapi.k8s.syd1.au.unkin.net/dockerhub/library/fedora:43" + - DISTRO: fedora44 + IMAGE: fedora44 + BASE_IMAGE: "artifactapi.k8s.syd1.au.unkin.net/dockerhub/library/fedora:44" steps: - name: docker diff --git a/README.md b/README.md index 1ba8650..87408d8 100644 --- a/README.md +++ b/README.md @@ -7,6 +7,9 @@ built. Published as `artifactapi.k8s.syd1.au.unkin.net/docker-internal/:< | distro | image | from | | --- | --- | --- | | `alma9` | `almalinux9` | `dockerhub/library/almalinux:9` | +| `fedora42` | `fedora42` | `dockerhub/library/fedora:42` | +| `fedora43` | `fedora43` | `dockerhub/library/fedora:43` | +| `fedora44` | `fedora44` | `dockerhub/library/fedora:44` | Each image bootstraps the internal CA, installs the estate dnf repository configuration pointed at artifactapi, and installs the base package set. diff --git a/distros/fedora42/distro.env b/distros/fedora42/distro.env new file mode 100644 index 0000000..5fbab43 --- /dev/null +++ b/distros/fedora42/distro.env @@ -0,0 +1,13 @@ +# fedora42 — Fedora 42 +# Pulled through the artifactapi dockerhub remote; see distros/alma9/distro.env. +BASE_IMAGE="artifactapi.k8s.syd1.au.unkin.net/dockerhub/library/fedora:42" +IMAGE="fedora42" + +# Internal CA bootstrap over HTTP, verified against the rpm-vendor-f42 repodata pkgid. +CA_RPM_URL="http://artifactapi.k8s.syd1.au.unkin.net/api/v1/local/rpm-vendor-f42/Packages/unkin-ca-certificates-2026.10.2-1.fc42.x86_64.rpm" +CA_RPM_SHA256="4c93bc95e0365565ee708247b9593997131d647d40a69e6f8bf9482f21026f9a" + +# Estate local repo used to prove HTTPS trust and dnf reachability. +ESTATE_REPO="rpm-vendor-f42" + +PACKAGES="git jq make python3 python3-pip wget" diff --git a/distros/fedora42/yum.repos.d/fedora.repo b/distros/fedora42/yum.repos.d/fedora.repo new file mode 100644 index 0000000..529d3cb --- /dev/null +++ b/distros/fedora42/yum.repos.d/fedora.repo @@ -0,0 +1,13 @@ +[fedora] +name=Fedora 42 - x86_64 +baseurl=https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/fedora-archive/releases/42/Everything/x86_64/os +gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-42-primary +enabled=1 +gpgcheck=1 + +[updates] +name=Fedora 42 - x86_64 - Updates +baseurl=https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/fedora-archive/updates/42/Everything/x86_64 +gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-42-primary +enabled=1 +gpgcheck=1 diff --git a/distros/fedora42/yum.repos.d/unkin.repo b/distros/fedora42/yum.repos.d/unkin.repo new file mode 100644 index 0000000..0690831 --- /dev/null +++ b/distros/fedora42/yum.repos.d/unkin.repo @@ -0,0 +1,27 @@ +[rpm-internal-f42] +name=rpm-internal-f42 repository +baseurl=https://artifactapi.k8s.syd1.au.unkin.net/api/v1/local/rpm-internal-f42/ +enabled=1 +gpgcheck=0 +metadata_expire=60 + +[rpm-vendor-f42] +name=rpm-vendor-f42 repository +baseurl=https://artifactapi.k8s.syd1.au.unkin.net/api/v1/local/rpm-vendor-f42/ +enabled=1 +gpgcheck=0 +metadata_expire=60 + +[rpm-internal] +name=rpm-internal repository +baseurl=https://artifactapi.k8s.syd1.au.unkin.net/api/v1/local/rpm-internal/ +enabled=1 +gpgcheck=0 +metadata_expire=60 + +[rpm-vendor] +name=rpm-vendor repository +baseurl=https://artifactapi.k8s.syd1.au.unkin.net/api/v1/local/rpm-vendor/ +enabled=1 +gpgcheck=0 +metadata_expire=60 diff --git a/distros/fedora43/distro.env b/distros/fedora43/distro.env new file mode 100644 index 0000000..b69f8a0 --- /dev/null +++ b/distros/fedora43/distro.env @@ -0,0 +1,13 @@ +# fedora43 — Fedora 43 +# Pulled through the artifactapi dockerhub remote; see distros/alma9/distro.env. +BASE_IMAGE="artifactapi.k8s.syd1.au.unkin.net/dockerhub/library/fedora:43" +IMAGE="fedora43" + +# Internal CA bootstrap over HTTP, verified against the rpm-vendor-f43 repodata pkgid. +CA_RPM_URL="http://artifactapi.k8s.syd1.au.unkin.net/api/v1/local/rpm-vendor-f43/Packages/unkin-ca-certificates-2026.10.2-1.fc43.x86_64.rpm" +CA_RPM_SHA256="5c80725659a0cd4228cf834dced0025ceac34f042a1715faff72a68363f61404" + +# Estate local repo used to prove HTTPS trust and dnf reachability. +ESTATE_REPO="rpm-vendor-f43" + +PACKAGES="git jq make python3 python3-pip wget" diff --git a/distros/fedora43/yum.repos.d/fedora.repo b/distros/fedora43/yum.repos.d/fedora.repo new file mode 100644 index 0000000..264c7aa --- /dev/null +++ b/distros/fedora43/yum.repos.d/fedora.repo @@ -0,0 +1,13 @@ +[fedora] +name=Fedora 43 - x86_64 +baseurl=https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/fedora/releases/43/Everything/x86_64/os +gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-43-primary +enabled=1 +gpgcheck=1 + +[updates] +name=Fedora 43 - x86_64 - Updates +baseurl=https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/fedora/updates/43/Everything/x86_64 +gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-43-primary +enabled=1 +gpgcheck=1 diff --git a/distros/fedora43/yum.repos.d/unkin.repo b/distros/fedora43/yum.repos.d/unkin.repo new file mode 100644 index 0000000..9c916af --- /dev/null +++ b/distros/fedora43/yum.repos.d/unkin.repo @@ -0,0 +1,27 @@ +[rpm-internal-f43] +name=rpm-internal-f43 repository +baseurl=https://artifactapi.k8s.syd1.au.unkin.net/api/v1/local/rpm-internal-f43/ +enabled=1 +gpgcheck=0 +metadata_expire=60 + +[rpm-vendor-f43] +name=rpm-vendor-f43 repository +baseurl=https://artifactapi.k8s.syd1.au.unkin.net/api/v1/local/rpm-vendor-f43/ +enabled=1 +gpgcheck=0 +metadata_expire=60 + +[rpm-internal] +name=rpm-internal repository +baseurl=https://artifactapi.k8s.syd1.au.unkin.net/api/v1/local/rpm-internal/ +enabled=1 +gpgcheck=0 +metadata_expire=60 + +[rpm-vendor] +name=rpm-vendor repository +baseurl=https://artifactapi.k8s.syd1.au.unkin.net/api/v1/local/rpm-vendor/ +enabled=1 +gpgcheck=0 +metadata_expire=60 diff --git a/distros/fedora44/distro.env b/distros/fedora44/distro.env new file mode 100644 index 0000000..841cb77 --- /dev/null +++ b/distros/fedora44/distro.env @@ -0,0 +1,13 @@ +# fedora44 — Fedora 44 +# Pulled through the artifactapi dockerhub remote; see distros/alma9/distro.env. +BASE_IMAGE="artifactapi.k8s.syd1.au.unkin.net/dockerhub/library/fedora:44" +IMAGE="fedora44" + +# Internal CA bootstrap over HTTP, verified against the rpm-vendor-f44 repodata pkgid. +CA_RPM_URL="http://artifactapi.k8s.syd1.au.unkin.net/api/v1/local/rpm-vendor-f44/Packages/unkin-ca-certificates-2026.10.2-1.fc44.x86_64.rpm" +CA_RPM_SHA256="19929d13dd7a0542af3bf1dce736568b87159914b0261d7a9965edfd58dfc9cd" + +# Estate local repo used to prove HTTPS trust and dnf reachability. +ESTATE_REPO="rpm-vendor-f44" + +PACKAGES="git jq make python3 python3-pip wget" diff --git a/distros/fedora44/yum.repos.d/fedora.repo b/distros/fedora44/yum.repos.d/fedora.repo new file mode 100644 index 0000000..0c5c171 --- /dev/null +++ b/distros/fedora44/yum.repos.d/fedora.repo @@ -0,0 +1,13 @@ +[fedora] +name=Fedora 44 - x86_64 +baseurl=https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/fedora/releases/44/Everything/x86_64/os +gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-44-primary +enabled=1 +gpgcheck=1 + +[updates] +name=Fedora 44 - x86_64 - Updates +baseurl=https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/fedora/updates/44/Everything/x86_64 +gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-44-primary +enabled=1 +gpgcheck=1 diff --git a/distros/fedora44/yum.repos.d/unkin.repo b/distros/fedora44/yum.repos.d/unkin.repo new file mode 100644 index 0000000..f51a6fc --- /dev/null +++ b/distros/fedora44/yum.repos.d/unkin.repo @@ -0,0 +1,27 @@ +[rpm-internal-f44] +name=rpm-internal-f44 repository +baseurl=https://artifactapi.k8s.syd1.au.unkin.net/api/v1/local/rpm-internal-f44/ +enabled=1 +gpgcheck=0 +metadata_expire=60 + +[rpm-vendor-f44] +name=rpm-vendor-f44 repository +baseurl=https://artifactapi.k8s.syd1.au.unkin.net/api/v1/local/rpm-vendor-f44/ +enabled=1 +gpgcheck=0 +metadata_expire=60 + +[rpm-internal] +name=rpm-internal repository +baseurl=https://artifactapi.k8s.syd1.au.unkin.net/api/v1/local/rpm-internal/ +enabled=1 +gpgcheck=0 +metadata_expire=60 + +[rpm-vendor] +name=rpm-vendor repository +baseurl=https://artifactapi.k8s.syd1.au.unkin.net/api/v1/local/rpm-vendor/ +enabled=1 +gpgcheck=0 +metadata_expire=60