ci: configure Renovate, skip Rekor tlog, fix prometheus build - #5
Merged
Merged
Conversation
- renovate.json: enable github-actions + dockerfile managers with a dependency dashboard, Monday schedule (America/Chicago), and dashboard approval for major docker base-image bumps. Remove broken empty dependabot config that would have conflicted with Renovate. - reusable-build-image.yml: always run cosign sign/attest with --tlog-upload=false. The public Rekor transparency log is a shared, intermittently-flaky service whose outages were failing the pipeline; the signature/attestation is still stored in the OCI registry for manual verification. - Containerfile (prometheus stage): run `dnf update -y && update-ca-trust` before adding the grafana repo so the TLS CA bundle is populated, fixing the curl error 77 that blocked `dnf install loki grafana`. Co-authored-by: openhands <openhands@all-hands.dev>
SNThrailkill
marked this pull request as ready for review
August 10, 2026 03:31
SNThrailkill
pushed a commit
that referenced
this pull request
Aug 10, 2026
Empty commit to run Build Bootc Images on main with the merged changes from PR #5 (cosign --tlog-upload=false, prometheus dnf update, Renovate config). Co-authored-by: openhands <openhands@all-hands.dev>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
All CI/CD workflow runs have been failing for months. This addresses the three issues behind it and sets up Renovate to keep actions current going forward.
Changes
1. Configure Renovate to manage GitHub Actions (
renovate.json)renovate.jsonwas effectively empty (just the schema), so Renovate never produced PRs for outdated actions — only the defaultdockerfilemanager bumped the base image. Many pinned actions are well behind and several still run on Node 20 (now deprecated, forced to Node 24 with warnings):The new config enables the
github-actionsanddockerfilemanagers with a dependency dashboard, a Monday schedule (America/Chicago), grouped GitHub Actions updates, digest+version pinning, and dashboard approval required for major Docker base-image bumps (so e.g. a Fedora major bump doesn't auto-merge and break builds).Also removed the broken
.github/dependabot.yml— it had an emptypackage-ecosystem: ""(a no-op) and would have conflicted with Renovate.2. Skip the Rekor transparency log on cosign sign/attest (
.github/workflows/reusable-build-image.yml)The
Add SBOM Attestationstep (and, on a future run,Sign container image) failed with:Research confirms this is a common, well-documented problem: the public Rekor instance (
rekor.sigstore.dev) is a shared service with a 99.5% SLO and is intermittently unavailable. Since cosign 2.0,cosign signandcosign attestupload to it by default — even for key-based signing — so a Rekor hiccup fails the pipeline. It's transient; our own logs showedcosign signsucceeding whilecosign attestseconds later failed (sigstore/cosign#3602, GitHub community discussions#144833).Fix: both steps now always run with
--tlog-upload=false. The signature/attestation is stored in the OCI registry alongside the image, where it can be verified manually. The public Rekor transparency-log entry is skipped entirely — it isn't needed for the key-based signer. Verify with:Trade-off: this loses the public audit record in exchange for a reliable build.
3. Fix the prometheus image build (
Containerfile)The
prometheusstage'sdnf install loki grafana -yfailed with curl error 77 (CURLE_SSL_CACERT_BADFILE— "error adding trust anchors from file: /etc/pki/tls/certs/ca-bundle.crt") reaching the grafana yum repo. This means the CA bundle was missing/empty in the bootc build container, not that the grafana cert was untrusted (that would be error 60).Fix: run
dnf update -y && update-ca-trustbefore adding the grafana repo. This refreshesca-certificates(whose%postextracts the bundle) and re-extracts the trust store even whenca-certificatesis already current. Ordering matters: it must run before the grafana repo is configured, otherwisednftries to refresh grafana's metadata against the still-broken bundle and fails identically.Validation
renovate.jsonparses as valid JSON..github/workflows/reusable-build-image.ymlparses as valid YAML.main, 0 behind, with the expected 5 file changes.Notes
AGENTS.mddocumenting the CI/CD layout, the Renovate setup, and both known issues for future contributors/automation.This PR was created by an AI agent (OpenHands) on behalf of SNThrailkill.
@SNThrailkill can click here to continue refining the PR