Some checks failed
continuous-integration/drone/push Build is failing
Declare intentional skips + custom-html-tiny functional test; 4-rung level ladder
- recipe_meta.EXPECTED_NA = {rung: reason} lists intentionally-skipped rungs; any
essential rung skipped and not listed is unintentional. Skips still cap the level
(never inflate). results.json: skips:{intentional,unintentional} + level_cap_rung.
- Level ladder = the four essential rungs (install, upgrade, backup/restore,
functional; top = L4). integration & recipe-local are optional, not leveled
(SSO still enforced for the run verdict, unchanged).
- Card shows skipped rungs as INTENTIONAL SKIP (green, reason below) / UNINTENTIONAL
SKIP (amber); level badge gains an expected/gap? third segment.
- custom-html-tiny: functional serve test (exact-byte round-trip + 404); declares
backup_restore intentionally skipped (stateless static server).
Independently verified by the adversary: 138 unit tests pass cold; live full-stage
run on custom-html-tiny green (upgrade tier ran; level 2; correct skips/badge);
clean teardown.
17 lines
1.1 KiB
Python
17 lines
1.1 KiB
Python
# Per-recipe config for custom-html-tiny (a fast static-web-server). Shorter timeouts than the
|
|
# defaults: it converges + serves in seconds, so the generic install's fail-without-hook case
|
|
# (DG5) is detected quickly instead of waiting the default 300s HTTP timeout.
|
|
DEPLOY_TIMEOUT = 120
|
|
HTTP_TIMEOUT = 90
|
|
|
|
# Rungs this recipe INTENTIONALLY skips, each with a reason. Any essential rung skipped (N/A) and NOT
|
|
# listed here is reported as an *unintentional* skip (a coverage gap to fill or declare). A skip still
|
|
# caps the level either way — the harness never claims a rung it did not verify; this only records
|
|
# that the skip is deliberate. (The level ladder is the four essential rungs install/upgrade/
|
|
# backup_restore/functional; integration + recipe-local are optional and not leveled.)
|
|
# custom-html-tiny is a stateless static-web-server, so it has no backup surface:
|
|
EXPECTED_NA = {
|
|
"backup_restore": "stateless static file server: serves an ephemeral content volume seeded at "
|
|
"deploy, with no persistent/user data to back up or restore (no backupbot.backup label)",
|
|
}
|