Skip to content

chore: propagate changes from main into development - #1315

Merged
Wikid82 merged 5 commits into
developmentfrom
main
Sep 8, 2026
Merged

Wikid82 merged 5 commits into
developmentfrom
main

Conversation

@github-actions

@github-actions github-actions Bot commented Sep 8, 2026

Copy link
Copy Markdown
Contributor

Automated PR to propagate changes from main into development.

Triggered by push to main.

The verify-toolchain-pin job installed regctl via regctl-installer with the
action's default 'latest' release, so a new regctl could change this
required check's behavior without any change in the repo. Pin it to an
explicit released version (v0.11.6) for reproducibility.

Claude-Session: https://claude.ai/code/session_01KXA4x9LrA2AsnLrvdHMZbS
verify-toolchain-pin.bats: add the branches flagged as uncovered in the
prebuilt-toolchain-image review —
  * same-repo run where the pinned :$KEY tag does not resolve in GHCR
    -> hard exit 1 (failure-closed)
  * CHARON_TOOLCHAIN_DIGEST blank / ARG line absent -> hard exit 1

toolchain-key.bats: add per-input sensitivity cases for the tonistiigi/xx
pin and the ALPINE_IMAGE pin (each change flips the recomputed key; an
unchanged re-emit keeps it stable).

Helper gains TF_XX_PIN / TF_ALPINE_IMAGE knobs and a
tf_stub_regctl_unresolvable mock (image digest exits non-zero), reusing
the existing PATH-stub pattern.

Also harden verify-toolchain-pin.sh's arg_value(): a missing ARG line now
yields empty output instead of aborting the script under 'set -e' before
the actionable CHARON_TOOLCHAIN_DIGEST error can print.

Claude-Session: https://claude.ai/code/session_01KXA4x9LrA2AsnLrvdHMZbS
Nothing in CI builds the app image via the caddy-inline / crowdsec-inline
path end to end, so the fork / air-gapped / not-logged-in-to-GHCR
fallback (from-source Caddy + CrowdSec compile) can rot silently until
someone tries to build offline.

Add .github/workflows/build-offline.yml: an amd64-only, advisory (NOT
required) canary that runs 'make build-offline' with GHA layer caching.

  * workflow_dispatch + weekly schedule (Wed 08:00 UTC, clear of the
    existing cron cluster) catch upstream drift.
  * pull_request with a tight paths filter (Dockerfile, .dockerignore,
    Makefile, the workflow itself) re-validates only when the inline
    recipe can actually change — the ~20-min job doesn't run on every PR.
  * permissions: contents:read only (the inline path pulls nothing from
    GHCR — that's the point); no registry login, no push, no multi-arch.
  * smoke step asserts the from-source caddy/crowdsec/cscli/charon
    binaries landed in the final image and 'caddy version' runs.

Makefile: parametrize build-offline with overridable DOCKER_BUILD /
BUILD_OFFLINE_ARGS so CI reuses the target (single source of truth for
the two builder-src selectors) while adding buildx --platform/--load/
--cache flags. Default local behavior unchanged.

docs/ci/toolchain-image.md: note the new canary in the components table.

Claude-Session: https://claude.ai/code/session_01KXA4x9LrA2AsnLrvdHMZbS
@github-advanced-security

Copy link
Copy Markdown
Contributor

You are seeing this message because GitHub Code Scanning has recently been set up for this repository, or this pull request contains the workflow file for the Code Scanning tool.

What Enabling Code Scanning Means:

  • The 'Security' tab will display more code scanning analysis results (e.g., for the default branch).
  • Depending on your configuration and choice of analysis tool, future pull requests will be annotated with code scanning analysis results.
  • You will be able to see the analysis results for the pull request's branch on this overview once the scans have completed and the checks have passed.

For more information about GitHub Code Scanning, check out the documentation.

@codecov

codecov Bot commented Sep 8, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@github-actions

github-actions Bot commented Sep 8, 2026

Copy link
Copy Markdown
Contributor Author

✅ Supply Chain Verification Results

PASSED

📦 SBOM Summary

  • Components: 1769

🔍 Vulnerability Scan

Severity Count
🔴 Critical 0
🟠 High 0
🟡 Medium 0
🟢 Low 0
Total 0

📎 Artifacts

  • SBOM (CycloneDX JSON) and Grype results available in workflow artifacts

Generated by Supply Chain Verification workflow • View Details

@Wikid82
Wikid82 merged commit 8ff3331 into development Sep 8, 2026
89 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants