From 4be8977f44100d93ee1e6c3f1d67af9a38193036 Mon Sep 17 00:00:00 2001 From: Julio Caicedo Date: Sun, 30 Nov 2025 10:26:48 -0500 Subject: [PATCH] feat: Update GPG key and enhance Helm chart signing in the release workflow. --- .github/workflows/release.yml | 28 ++++++++-- Chart.yaml | 2 +- public-key.asc | 98 +++++++++++++++++------------------ 3 files changed, 75 insertions(+), 53 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index df414a1..bf15f04 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -47,17 +47,29 @@ jobs: with: version: v3.16.0 - - name: Import GPG key + - name: Import GPG key and create legacy keyring env: GPG_PRIVATE_KEY: ${{ secrets.GPG_PRIVATE_KEY }} run: | if [ -n "$GPG_PRIVATE_KEY" ]; then + # Import key to GnuPG echo "$GPG_PRIVATE_KEY" | gpg --batch --import + + # Configure GPG agent for non-interactive use + mkdir -p ~/.gnupg echo "allow-loopback-pinentry" >> ~/.gnupg/gpg-agent.conf + echo "pinentry-mode loopback" >> ~/.gnupg/gpg.conf gpg-connect-agent reloadagent /bye || true + + # Export to legacy format required by Helm + gpg --export > ~/.gnupg/pubring.gpg + gpg --batch --export-secret-keys > ~/.gnupg/secring.gpg + echo "GPG_AVAILABLE=true" >> $GITHUB_ENV + echo "✅ GPG key imported and legacy keyring created" else echo "GPG_AVAILABLE=false" >> $GITHUB_ENV + echo "⚠️ No GPG key provided" fi - name: Package Chart @@ -80,8 +92,18 @@ jobs: if [ "$GPG_AVAILABLE" = "true" ] && [ -n "$GPG_PASSPHRASE" ]; then echo "📦 Packaging with GPG signature..." echo "$GPG_PASSPHRASE" | helm package . -d .packages \ - --sign --key "cloud@startcodex.com" --passphrase-file /dev/stdin \ - || helm package . -d .packages + --sign \ + --key "cloud@startcodex.com" \ + --keyring ~/.gnupg/secring.gpg \ + --passphrase-file /dev/stdin + + if [ -f .packages/*.prov ]; then + echo "✅ Chart signed successfully" + ls -la .packages/*.prov + else + echo "⚠️ Signature failed, packaging without signature" + helm package . -d .packages + fi else echo "📦 Packaging without signature..." helm package . -d .packages diff --git a/Chart.yaml b/Chart.yaml index fd3669c..9237a3c 100644 --- a/Chart.yaml +++ b/Chart.yaml @@ -6,7 +6,7 @@ version: 0.1.24 appVersion: "9.0.0" annotations: artifacthub.io/signKey: | - fingerprint: BD9C3A3FB5C152390B589739DA06B8958C5CE1D1 + fingerprint: 35D9AD8B98D2FB5AF685CABA019335D0A0561140 url: https://start-codex.github.io/valkey-helm-chart/public-key.asc artifacthub.io/category: database artifacthub.io/license: Apache-2.0 diff --git a/public-key.asc b/public-key.asc index 6ac4192..2470f38 100644 --- a/public-key.asc +++ b/public-key.asc @@ -1,52 +1,52 @@ -----BEGIN PGP PUBLIC KEY BLOCK----- -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 -9WC8JBHDuwy4luXYC9J80Vdmgn7k+zc8yeKO -=3bnc +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 +wugNVM7d4HFmYut+j88R +=1EgD -----END PGP PUBLIC KEY BLOCK-----