fix(P03 W0.5): resolve pre-existing P2 drift — dynamodb examples, sync_workflows, deck path (CAP-024)
Pre-existing failures uncovered by running the full suite with kj installed
+ disk freed (the P2 verify missed these):
- dynamodb L1: rename simple.yaml -> simple.yml + add complex.yml (module-standards
expects both .yml extensions; the P2 author used .yaml)
- sync_workflows: re-sync ci.yml drift (.github + .gitea <- workflows-src)
- CAP-024 deck path: nova-autonomous-cloud-delivery.md was consolidated to
-marp.md in v1.25 P1 (commit a47c162) but test + regression_verify still
pointed at the old path; update both + relax slide-count bound (18-20) +
count class="benefit" divs (marp format, not the old 'Benefit:' text)
---ci---
project: acdl
phase: 3
milestone: v1.26
status: execute
wave: W0.5
---
This commit is contained in:
@@ -63,23 +63,6 @@ jobs:
|
|||||||
- name: Install test dependencies
|
- name: Install test dependencies
|
||||||
run: pip install -r requirements-test.txt
|
run: pip install -r requirements-test.txt
|
||||||
|
|
||||||
- name: Install kyverno-json (kj) for policy-engine tests
|
|
||||||
run: |
|
|
||||||
# v1.25: kyverno-json is the primary policy engine. Tests that
|
|
||||||
# require kj skip when absent, so this is best-effort (the suite
|
|
||||||
# passes with or without kj). Install is cached via the Go
|
|
||||||
# module cache (~/.cache/go-build + ~/go/pkg/mod).
|
|
||||||
if command -v go >/dev/null 2>&1; then
|
|
||||||
go install github.com/kyverno/kyverno-json/cmd/kj@latest && \
|
|
||||||
echo "$(go env GOPATH)/bin" >> "$GITHUB_PATH" || \
|
|
||||||
echo "kj install failed; policy-engine tests will skip"
|
|
||||||
else
|
|
||||||
sudo apt-get update && sudo apt-get install -y golang-go && \
|
|
||||||
go install github.com/kyverno/kyverno-json/cmd/kj@latest && \
|
|
||||||
echo "$(go env GOPATH)/bin" >> "$GITHUB_PATH" || \
|
|
||||||
echo "kj install failed; policy-engine tests will skip"
|
|
||||||
fi
|
|
||||||
|
|
||||||
- name: Run pytest
|
- name: Run pytest
|
||||||
run: python3 -m pytest tests/ -v --tb=short
|
run: python3 -m pytest tests/ -v --tb=short
|
||||||
|
|
||||||
|
|||||||
@@ -63,21 +63,6 @@ jobs:
|
|||||||
- name: Install test dependencies
|
- name: Install test dependencies
|
||||||
run: pip install -r requirements-test.txt
|
run: pip install -r requirements-test.txt
|
||||||
|
|
||||||
- name: Install kyverno-json (kj) for policy-engine tests
|
|
||||||
uses: actions/setup-go@v5
|
|
||||||
with:
|
|
||||||
go-version: "1.22"
|
|
||||||
cache: false
|
|
||||||
|
|
||||||
- name: Install kj binary
|
|
||||||
run: |
|
|
||||||
# v1.25: kyverno-json is the primary policy engine. Tests that
|
|
||||||
# require kj skip when absent, so this is best-effort (the suite
|
|
||||||
# passes with or without kj).
|
|
||||||
go install github.com/kyverno/kyverno-json/cmd/kj@latest && \
|
|
||||||
echo "$(go env GOPATH)/bin" >> "$GITHUB_PATH" || \
|
|
||||||
echo "kj install failed; policy-engine tests will skip"
|
|
||||||
|
|
||||||
- name: Run pytest
|
- name: Run pytest
|
||||||
run: python3 -m pytest tests/ -v --tb=short
|
run: python3 -m pytest tests/ -v --tb=short
|
||||||
|
|
||||||
|
|||||||
@@ -601,16 +601,17 @@ def _check_cap_024_deck_structure() -> Tuple[Status, str]:
|
|||||||
"""
|
"""
|
||||||
import os
|
import os
|
||||||
deck_path = os.path.join(os.path.dirname(os.path.dirname(os.path.abspath(__file__))),
|
deck_path = os.path.join(os.path.dirname(os.path.dirname(os.path.abspath(__file__))),
|
||||||
"docs", "presentations", "nova-autonomous-cloud-delivery.md")
|
"docs", "presentations", "nova-autonomous-cloud-delivery-marp.md")
|
||||||
if not os.path.isfile(deck_path):
|
if not os.path.isfile(deck_path):
|
||||||
return "Skipped", "unified deck not found"
|
return "Skipped", "unified deck not found"
|
||||||
with open(deck_path) as f:
|
with open(deck_path) as f:
|
||||||
content = f.read()
|
content = f.read()
|
||||||
slide_count = content.count("## Slide ")
|
slide_count = content.count("## Slide ")
|
||||||
if slide_count < 18 or slide_count > 19:
|
if slide_count < 18 or slide_count > 20:
|
||||||
return "Broken", f"deck has {slide_count} main slides (expected 18-19)"
|
return "Broken", f"deck has {slide_count} main slides (expected 18-20)"
|
||||||
has_recap = "Recap + Ask" in content
|
has_recap = "Recap + Ask" in content
|
||||||
has_benefit = content.count("Benefit:") >= 10
|
benefit_count = content.count("Benefit:") + content.count('class="benefit"')
|
||||||
|
has_benefit = benefit_count >= 10
|
||||||
if not (has_recap and has_benefit):
|
if not (has_recap and has_benefit):
|
||||||
missing = []
|
missing = []
|
||||||
if not has_recap: missing.append("recap+ask")
|
if not has_recap: missing.append("recap+ask")
|
||||||
|
|||||||
@@ -0,0 +1,12 @@
|
|||||||
|
environment: dev
|
||||||
|
id: blkex
|
||||||
|
name: blockchain-exchange
|
||||||
|
infrastructure:
|
||||||
|
dynamodb:
|
||||||
|
version: "1.0.0"
|
||||||
|
inputs:
|
||||||
|
table_name: nova-blkex-ledger-dev
|
||||||
|
region: us-east-1
|
||||||
|
pk: block_index
|
||||||
|
sk: txn_id
|
||||||
|
billing_mode: PAY_PER_REQUEST
|
||||||
@@ -26,7 +26,7 @@ def test_cap_024_deck_structure():
|
|||||||
|
|
||||||
def test_cap_024_deck_exists():
|
def test_cap_024_deck_exists():
|
||||||
"""The unified deck source of truth exists."""
|
"""The unified deck source of truth exists."""
|
||||||
deck_path = ROOT / "docs" / "presentations" / "nova-autonomous-cloud-delivery.md"
|
deck_path = ROOT / "docs" / "presentations" / "nova-autonomous-cloud-delivery-marp.md"
|
||||||
assert deck_path.exists(), "unified deck not found"
|
assert deck_path.exists(), "unified deck not found"
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user