Commit Graph

12 Commits

Author SHA1 Message Date
Regression Regina c73ab6079b fix: replace GitHub App token with GITEA_TOKEN in workflows (PRI-1533) (#190) 2026-05-14 18:42:13 +00:00
Chris Farhood ae8086f38b ci-health-check.sh: append infra as private repo after dynamic discovery
Adds 'infra' to PLUGIN_REPOS after the discovery/fallback logic so the
private infra repo is always included in CI/CD health checks regardless
of which path populated PLUGIN_REPOS.

Fixes: PRI-906
Fixes: PRI-488

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-05-13 12:33:00 +00:00
Chris Farhood 84243c735e fix: categorize CI failures to distinguish expected process failures from real infra issues
This commit updates ci-health-check.sh to categorize CI failures:
- Code failures: test/lint/build failures on main → FAIL
- Infra failures: startup_failure, timed_out → FAIL
- Pending (process): action_required (awaiting review) → INFO only

action_required is no longer treated as a failure since it's an expected
process state (PRs awaiting dual approval).

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-05-05 10:22:04 +00:00
Chris Farhood 0ff52c20fd ci-health-check: complete dynamic repo discovery (PRI-331)
PR #115's first commit landed dynamic discovery via gh api but missed
three of the five issue requirements. This commit completes them:

- Move headlamp- prefix filtering into jq via startswith() and add
  explicit exclusion for headlamp-agent-skills (skills bundle, not a
  plugin), instead of relying on grep -E '^headlamp-.+'.
- Add PLUGIN_REPOS_FALLBACK with the previously hardcoded list and
  use it when discovery returns empty, instead of exiting with error.
- Add header comment documenting the discovery filter and the
  headlamp-agent-skills exclusion.

Verified jq filter against live API: returns 8 plugin repos, all
prefixed headlamp-, headlamp-agent-skills correctly excluded.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-05-04 15:51:13 +00:00
Chris Farhood d872bdc626 ci-health-check.sh: replace hardcoded repos with dynamic GitHub API discovery
Use gh api --paginate to dynamically fetch all non-archived public repos
matching ^headlamp-.+ from the privilegedescalation org. This eliminates
the need to manually update the repo list when new plugins are added.

NOTE: --paginate must come before the endpoint arg, not after --jq.
The previous commit had 'gh api paginate' which is incorrect syntax.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-05-04 15:51:13 +00:00
privilegedescalation-engineer[bot] d0cdad1922 fix: add headlamp-argocd-plugin to ci-health-check.sh (#114)
Strip broken fetch_plugin_repos function (Nancy's QA review identified:
- wrong API endpoint / repos/privilegedescalation returns 404
- broken --jq/--arg invocation
- missing --paginate
- unanchored regex
- non-plugin filter missing
- dead code: defined but never called)

Follow-up for proper dynamic discovery tracked in PRI-256 follow-up.

Co-authored-by: Chris Farhood <chris@farhood.org>
2026-05-03 18:25:41 +00:00
privilegedescalation-engineer[bot] 07c4b881f3 ci-health-check: detect action_required (GitHub App PR approval blocked) (#85)
Detects when workflow runs conclude with action_required, which indicates
GitHub's 'Require approval for first-time contributors' setting is blocking
workflow runs from the privilegedescalation-engineer[bot] GitHub App.

This is a CI pipeline blocker that prevents bot-authored PRs from advancing
through the review pipeline. See PRI-44 for the full investigation.

Co-authored-by: Hugh Hackman <hugh@privilegedescalation.ai>
2026-04-15 01:56:18 +00:00
privilegedescalation-ceo[bot] d5ad15c494 Merge branch 'main' into ci/e2e-health-check 2026-03-21 14:06:10 +00:00
privilegedescalation-engineer[bot] 6110cd8085 chore: add headlamp-plugin-template to CI health check (#40)
Co-authored-by: privilegedescalation-engineer[bot] <privilegedescalation-engineer[bot]@users.noreply.github.com>
2026-03-21 12:54:10 +00:00
Hugh Hackman 8e1e06f9a7 ci: track E2E test failures separately in CI health check
- Exclude E2E Tests from CI failure count (keeps CI/CD noise separate)
- Add dedicated E2E warning line for main branch failures (PRI-494)
- Move Release failure warning outside the else block — always report it
- Update Release warning comment: graceful skip is now in place, so
  failures are real errors not just missing-secrets noise

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-21 12:44:10 +00:00
Hugh Hackman 2df48640bb fix: improve ci-health-check signal and replace node with jq
- Replace node -e JSON parsing with jq (available on our runners)
- Exclude Release workflow failures from FAIL count — these fail at
  the post-release PR-creation step due to missing RELEASE_APP org
  secrets (tracked in PRI-380), not actual CI breakage
- Demote Release failures to WARN so the health check exits 0 when
  only Release is broken, giving clean signal for real CI problems
- Increase run limit from 5 to 10 for better intermittent failure detection
- Remove unnecessary Node.js setup step from the workflow

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-03-21 00:17:29 +00:00
hugh-hackman[bot] cd6bbb2481 ci: automate ci health checks (#11)
Co-authored-by: gandalf-the-greybeard[bot] <gandalf-the-greybeard[bot]@users.noreply.github.com>
2026-03-11 01:52:08 +00:00