Add fast dev UDS delivery and disposable bundle cleanup #84

Merged
gitchegumi merged 3 commits from kiyi/dev-bundle-lifecycle into main 2026-10-11 19:34:19 -05:00
Member

Dev iteration currently repeats production scans and has no owning workflow to discard an unused bundle and its data. Add an explicit scan_profile: dev for dev-only bundling/deployment. It retains history/tree secret checks, immutable images, signed provenance, archive integrity, managed credentials and target/health checks, while skipping heavyweight source/image scans, malware, SBOMs and their tool downloads. Production defaults and fully scanned same-archive promotion remain intact; production rejects dev-only receipts.

Add a protected manual cleanup implementation, defaulting to a read-only plan. Removal checks the installed release marker, managed namespace labels and volume/claim UIDs, requires the exact namespace confirmation, and removes only the dev package and namespace. Dynamic CSI backing storage must deprovision; named Retain volumes require reviewed allowlisting. Declared external PostgreSQL databases use restricted dev Secret references, verified TLS and a fixed cleanup Job after writers stop. Database failures prevent namespace removal. Unsupported static/shared storage is refused. Expired historical mitigations do not prevent uninstall.

Cleanup authority is per-app opt-in through the paired platform change. Unflagged apps preserve their contracts. The template adopts matching build/deploy/cleanup callers at proposed release v1.32.0; v1.31.0 public-asset support is incorporated from current main.

Validation: 286 source tests completed, 272 passed and 14 skipped (11 existing conditional/integration skips plus three Linux socket-path tests unavailable on Windows). Bash was explicitly selected for Windows canary checks. Separately validated all workflow YAML, 62 Bash scripts and 24 canary gate cases. No local container build or live deletion was run. Hosted Linux integration, publication, per-app adoption, platform reconciliation, CSI/database removal and empty recreation acceptance remain required.

Refs #83. Keep that issue open for rollout acceptance.

Dev iteration currently repeats production scans and has no owning workflow to discard an unused bundle and its data. Add an explicit `scan_profile: dev` for dev-only bundling/deployment. It retains history/tree secret checks, immutable images, signed provenance, archive integrity, managed credentials and target/health checks, while skipping heavyweight source/image scans, malware, SBOMs and their tool downloads. Production defaults and fully scanned same-archive promotion remain intact; production rejects dev-only receipts. Add a protected manual cleanup implementation, defaulting to a read-only plan. Removal checks the installed release marker, managed namespace labels and volume/claim UIDs, requires the exact namespace confirmation, and removes only the dev package and namespace. Dynamic CSI backing storage must deprovision; named Retain volumes require reviewed allowlisting. Declared external PostgreSQL databases use restricted dev Secret references, verified TLS and a fixed cleanup Job after writers stop. Database failures prevent namespace removal. Unsupported static/shared storage is refused. Expired historical mitigations do not prevent uninstall. Cleanup authority is per-app opt-in through the paired platform change. Unflagged apps preserve their contracts. The template adopts matching build/deploy/cleanup callers at proposed release v1.32.0; v1.31.0 public-asset support is incorporated from current main. Validation: 286 source tests completed, 272 passed and 14 skipped (11 existing conditional/integration skips plus three Linux socket-path tests unavailable on Windows). Bash was explicitly selected for Windows canary checks. Separately validated all workflow YAML, 62 Bash scripts and 24 canary gate cases. No local container build or live deletion was run. Hosted Linux integration, publication, per-app adoption, platform reconciliation, CSI/database removal and empty recreation acceptance remain required. Refs #83. Keep that issue open for rollout acceptance.
Document dev lifecycle adoption with next available release
All checks were successful
Workflow acceptance / acceptance (pull_request) Successful in 1m27s
Repository security / security-1 (pull_request) Successful in 6m9s
Library checks / tests (pull_request) Successful in 6m7s
68af2156d1
gitchegumi approved these changes 2026-10-11 19:34:13 -05:00
gitchegumi changed title from WIP: Add fast dev UDS delivery and disposable bundle cleanup to Add fast dev UDS delivery and disposable bundle cleanup 2026-10-11 19:34:15 -05:00
gitchegumi deleted branch kiyi/dev-bundle-lifecycle 2026-10-11 19:34:19 -05:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
Homelab/workflows!84
No description provided.