From 38902545c7df21fe19a0247defb929fd727b93f6 Mon Sep 17 00:00:00 2001 From: unkin-agent Date: Fri, 2 Oct 2026 22:09:41 +1000 Subject: [PATCH] Ship the intermediate CA in unkin-ca-certificates s3.ceph.unkin.net serves a bare leaf issued by the intermediate, so hosts carrying only the root cannot verify it. - Fetch pki_int alongside pki_root and anchor it as UNKIN_INTCA_2024.crt - Fail the build when a fetch errors or returns a non-certificate - Bump version to 2026.10.2 --- rpms/unkin-ca-certificates/metadata.yaml | 6 +++--- rpms/unkin-ca-certificates/resources/build.sh | 12 +++++++++--- rpms/unkin-ca-certificates/resources/nfpm.yaml | 6 ++++++ 3 files changed, 18 insertions(+), 6 deletions(-) diff --git a/rpms/unkin-ca-certificates/metadata.yaml b/rpms/unkin-ca-certificates/metadata.yaml index abfe728..ee2ec8f 100644 --- a/rpms/unkin-ca-certificates/metadata.yaml +++ b/rpms/unkin-ca-certificates/metadata.yaml @@ -12,16 +12,16 @@ builds: release: '1' repository: - almalinux/el8 - version: 2025.07.13 + version: 2026.10.2 - image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest release: '1' repository: - almalinux/el9 - version: 2025.07.13 + version: 2026.10.2 - image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest release: '1' repository: - fedora/42 - fedora/43 - fedora/44 - version: 2025.07.13 + version: 2026.10.2 diff --git a/rpms/unkin-ca-certificates/resources/build.sh b/rpms/unkin-ca-certificates/resources/build.sh index a5abb78..136154b 100755 --- a/rpms/unkin-ca-certificates/resources/build.sh +++ b/rpms/unkin-ca-certificates/resources/build.sh @@ -1,9 +1,15 @@ #!/usr/bin/bash -set -e +set -euo pipefail -# Download the CA certificate from vault -curl -L -o /app/UNKIN_ROOTCA_2024.crt https://vault.query.consul:8200/v1/pki_root/ca/pem +# Download the CA chain from vault; openssl verifies we got a certificate, not an error page +fetch_ca() { + curl -fsSL -o "$2" "https://vault.query.consul:8200/v1/$1/ca/pem" + openssl x509 -in "$2" -noout -subject +} + +fetch_ca pki_root /app/UNKIN_ROOTCA_2024.crt +fetch_ca pki_int /app/UNKIN_INTCA_2024.crt # Process the nfpm.yaml template with environment variables envsubst < /app/resources/nfpm.yaml > /app/nfpm.yaml diff --git a/rpms/unkin-ca-certificates/resources/nfpm.yaml b/rpms/unkin-ca-certificates/resources/nfpm.yaml index b036b29..a670c8d 100644 --- a/rpms/unkin-ca-certificates/resources/nfpm.yaml +++ b/rpms/unkin-ca-certificates/resources/nfpm.yaml @@ -29,6 +29,12 @@ contents: mode: 0755 owner: root group: root + - src: /app/UNKIN_INTCA_2024.crt + dst: /etc/pki/ca-trust/source/anchors/UNKIN_INTCA_2024.crt + file_info: + mode: 0755 + owner: root + group: root # Scripts to run during installation/removal (optional) scripts: -- 2.47.3