CI/CD hardening: lint, secret scan, coverage gate, auto CVE-fix PRs, GHCR + GitHub mirror publishing #34

Merged
Djeex merged 3 commits from dev-cicd into main 2026-08-26 15:38:54 +02:00
Owner
  • release changelog: commits rendered as description (link), divider lines dropped
  • gitleaks secret scan and hadolint on every push/PR
  • ruff lint/format gate (Python repos) with a pytest --cov-fail-under gate
  • scheduled CRITICAL Trivy failures attempt an apk upgrade rebuild and open a follow-up PR if it clears the finding, instead of just failing red
  • images also published to ghcr.io/djeex/
  • a matching GitHub Release is created on the GitHub mirror, with a notice pointing back to this repo as the source of truth
- release changelog: commits rendered as description (link), divider lines dropped - gitleaks secret scan and hadolint on every push/PR - ruff lint/format gate (Python repos) with a pytest --cov-fail-under gate - scheduled CRITICAL Trivy failures attempt an apk upgrade rebuild and open a follow-up PR if it clears the finding, instead of just failing red - images also published to ghcr.io/djeex/<repo> - a matching GitHub Release is created on the GitHub mirror, with a notice pointing back to this repo as the source of truth
Djeex added 3 commits 2026-08-26 15:26:44 +02:00
- gitleaks (via docker cp, dockerignore-agnostic) and hadolint scan every push/PR
- new ruff lint stage (ruff.toml pins known-first-party for host/container
  consistency; F841/B007 in webui.py left un-fixed via per-file-ignores —
  app-logic changes, flagged for review rather than auto-fixed)
- pytest --cov-fail-under=90 gate on the test stage (already had pytest-cov,
  never wired into CI until now)
- scheduled Trivy critical failures now attempt an apk upgrade rebuild and open a PR
  if it clears the finding, instead of just failing red
- ruff --fix/--format applied to existing code to start the gate clean
Publish images to GHCR and releases to the GitHub mirror
CI / build-and-scan (pull_request) Successful in 1m0s
4b90945871
- retag+push the same :latest/:X.Y/:X.Y.Z tags to ghcr.io/djeex/lumeex
- create a matching GitHub Release on the Djeex/lumeex mirror, same changelog
  body prefixed with a notice pointing back to the git.djeex.fr source repo
- targets the exact commit SHA (not the branch) with retries, since the
  Gitea->GitHub push mirror can lag behind this job
- requires a new GH_TOKEN secret (repo + write:packages) — not created yet
- first GHCR push per repo will be private by default; GitHub has no API to
  default it public for a personal account, needs a one-time manual toggle
Djeex merged commit f22634e9d9 into main 2026-08-26 15:38:54 +02:00
Sign in to join this conversation.
No Reviewers
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: Djeex/lumeex#34