Add CI check for sufficient validity of the OTA signing certificate (#4751)

* Add CI check for sufficient validity of the OTA signing certificate

To ensure that we don't miss expiration of the signing certificate, add
a CI check that checks its validity and validity of the full chain of
trust, ensuring CA doesn't expire either. Currently set to 25 months,
which should be enough to allow migration of existing devices to new CA
and allow some wiggle room for upgrades and downgrades.

Refs #4743

* Find real issuer when walking the chain

* Add number of certs checked to the suceess message
This commit is contained in:
Jan Čermák
2026-06-08 17:31:55 +02:00
committed by GitHub
parent b721d6df27
commit b7bb667e35
2 changed files with 72 additions and 0 deletions
+10
View File
@@ -206,6 +206,16 @@ jobs:
buildroot-external/scripts/generate-signing-key.sh cert.pem key.pem
echo "self_signed_cert=true" >> $GITHUB_OUTPUT
- name: Check signing certificate validity
env:
RAUC_CERTIFICATE: ${{ secrets.RAUC_CERTIFICATE }}
if: env.RAUC_CERTIFICATE != ''
run: |
echo -e "-----BEGIN CERTIFICATE-----\n${RAUC_CERTIFICATE}\n-----END CERTIFICATE-----" > signing-cert.pem
# 760 days ~ 25 months (the OS support window, with margin)
scripts/check-signing-validity.sh signing-cert.pem buildroot-external/ota/rel-ca.pem 760
rm -f signing-cert.pem
- name: Create signing key
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
if: steps.generate_signing_key.outcome == 'success'