chore: Add Caddy compatibility gate workflow and related scripts; update documentation and test cases

This commit is contained in:
GitHub Actions
2026-02-23 13:44:00 +00:00
parent 441c3dc947
commit 1f2b4c7d5e
5 changed files with 12 additions and 12 deletions
@@ -1,4 +1,4 @@
name: Caddy PR-1 Compatibility Gate
name: Caddy Compatibility Gate
on:
pull_request:
@@ -6,7 +6,7 @@ on:
- Dockerfile
- scripts/caddy-compat-matrix.sh
- docs/plans/current_spec.md
- .github/workflows/caddy-pr1-compat.yml
- .github/workflows/caddy-compat.yml
workflow_dispatch:
concurrency:
@@ -44,14 +44,14 @@ jobs:
--platforms linux/amd64,linux/arm64 \
--smoke-set boot_caddy,plugin_modules,config_validate,admin_api_health \
--output-dir test-results/caddy-compat \
--docs-report docs/reports/caddy-pr1-compatibility-matrix.md
--docs-report docs/reports/caddy-compatibility-matrix.md
- name: Upload compatibility artifacts
if: always()
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
with:
name: caddy-pr1-compatibility-artifacts
name: caddy-compatibility-artifacts
path: |
test-results/caddy-compat/**
docs/reports/caddy-pr1-compatibility-matrix.md
docs/reports/caddy-compatibility-matrix.md
retention-days: 14
+1 -1
View File
@@ -727,7 +727,7 @@
{
"label": "Security: Caddy PR-1 Compatibility Matrix",
"type": "shell",
"command": "cd /projects/Charon && bash scripts/caddy-compat-matrix.sh --candidate-version 2.11.1 --patch-scenarios A,B,C --platforms linux/amd64,linux/arm64 --smoke-set boot_caddy,plugin_modules,config_validate,admin_api_health --output-dir test-results/caddy-compat --docs-report docs/reports/caddy-pr1-compatibility-matrix.md",
"command": "cd /projects/Charon && bash scripts/caddy-compat-matrix.sh --candidate-version 2.11.1 --patch-scenarios A,B,C --platforms linux/amd64,linux/arm64 --smoke-set boot_caddy,plugin_modules,config_validate,admin_api_health --output-dir test-results/caddy-compat --docs-report docs/reports/caddy-compatibility-matrix.md",
"group": "test",
"problemMatcher": []
},
@@ -25,7 +25,7 @@
## Test Cases
### TC-PR1-001 — Compatibility Matrix Completes
### TC-001 — Compatibility Matrix Completes
- Area: Compatibility matrix
- Risk: False PASS due to partial artifacts or mixed output paths
@@ -39,7 +39,7 @@
- Status: [ ] Not run [ ] Pass [ ] Fail
- Notes:
### TC-PR1-002 — Promotion Gate Enforces Scenario A Only
### TC-002 — Promotion Gate Enforces Scenario A Only
- Area: Release guard
- Risk: Incorrect gate logic blocks or allows promotion unexpectedly
@@ -52,7 +52,7 @@
- Status: [ ] Not run [ ] Pass [ ] Fail
- Notes:
### TC-PR1-003 — Candidate Build Path Is Opt-In
### TC-003 — Candidate Build Path Is Opt-In
- Area: Candidate build path
- Risk: Candidate path becomes active without explicit opt-in
@@ -66,7 +66,7 @@
- Status: [ ] Not run [ ] Pass [ ] Fail
- Notes:
### TC-PR1-004 — Default Runtime Behavior Does Not Drift
### TC-004 — Default Runtime Behavior Does Not Drift
- Area: Non-drift defaults
- Risk: Silent default drift after PR-1 merge
+2 -2
View File
@@ -9,7 +9,7 @@ readonly DEFAULT_PLUGIN_SET="caddy-security,coraza-caddy,caddy-crowdsec-bouncer,
readonly DEFAULT_SMOKE_SET="boot_caddy,plugin_modules,config_validate,admin_api_health"
OUTPUT_DIR="test-results/caddy-compat"
DOCS_REPORT="docs/reports/caddy-pr1-compatibility-matrix.md"
DOCS_REPORT="docs/reports/caddy-compatibility-matrix.md"
CANDIDATE_VERSION="$DEFAULT_CANDIDATE_VERSION"
PATCH_SCENARIOS="$DEFAULT_PATCH_SCENARIOS"
PLATFORMS="$DEFAULT_PLATFORMS"
@@ -32,7 +32,7 @@ Usage: scripts/caddy-compat-matrix.sh [options]
Options:
--output-dir <path> Output directory (default: test-results/caddy-compat)
--docs-report <path> Markdown report path (default: docs/reports/caddy-pr1-compatibility-matrix.md)
--docs-report <path> Markdown report path (default: docs/reports/caddy-compatibility-matrix.md)
--candidate-version <ver> Candidate Caddy version (default: 2.11.1)
--patch-scenarios <csv> Patch scenarios CSV (default: A,B,C)
--platforms <csv> Platforms CSV (default: linux/amd64,linux/arm64)