2.0 KiB
2.0 KiB
Mirror signing helpers
make-thin-v1.sh: builds thin bundle v1, computes checksums, emits bundle meta (offline/rekor/mirror gaps), optional DSSE+TUF signing whenSIGN_KEYis set, and runs verifier.sign_thin_bundle.py: signs manifest (DSSE), bundle meta (DSSE), and root/targets/snapshot/timestamp JSON using an Ed25519 PEM key.verify_thin_bundle.py: checks SHA256 sidecars, manifest schema, tar determinism, required layers, optional bundle meta and DSSE signatures; accepts--bundle-meta,--pubkey,--tenant,--environment.ci-sign.sh: CI wrapper. SetMIRROR_SIGN_KEY_B64(base64-encoded Ed25519 PEM) and run; it builds, signs, and verifies in one step, emittingmilestone.jsonwith manifest/tar/bundle hashes.verify_oci_layout.py: validates OCI layout/index/manifest and blob digests whenOCI=1is used.mirror-create.sh: convenience wrapper to build + verify thin bundles (optional SIGN_KEY, time anchor, OCI flag).mirror-verify.sh: wrapper aroundverify_thin_bundle.pyfor quick hash/DSSE checks.schedule-export-center-run.sh: schedules an Export Center run for mirror bundles via HTTP POST; setEXPORT_CENTER_BASE_URL,EXPORT_CENTER_TENANT,EXPORT_CENTER_TOKEN(Bearer), optionalEXPORT_CENTER_PROJECT; logs toAUDIT_LOG_PATH(defaultlogs/export-center-schedule.log). SetEXPORT_CENTER_ARTIFACTS_JSONto inject bundle metadata into the request payload.export-center-wire.sh: buildsexport-center-handoff.jsonfromout/mirror/thin/milestone.json, emits recommended Export Center targets, and (whenEXPORT_CENTER_AUTO_SCHEDULE=1) callsschedule-export-center-run.shto push the run. Outputs live underout/mirror/thin/export-center/.- CI:
.gitea/workflows/mirror-sign.ymlruns this script after signing; scheduling remains opt-in via secretsEXPORT_CENTER_BASE_URL,EXPORT_CENTER_TOKEN,EXPORT_CENTER_TENANT,EXPORT_CENTER_PROJECT,EXPORT_CENTER_AUTO_SCHEDULE.
- CI:
Artifacts live under out/mirror/thin/.