Recipe
CI/CD Pipeline Design
Ship Nimbus payloads through a hardened, repeatable pipeline that signs, packs, and stages every build artifact before it touches production.
Pipeline Stages
01
Build
MSVC x64 Release, /MT, LTCG
02
Sign
Ed25519 detached sig over .text
03
Pack
Themida + CDN staging
Artifact Integrity
Every build emits a manifest.json containing the commit SHA, build timestamp, and Ed25519 signature. The loader verifies this manifest before mapping the payload.
{
"commit": "a1b2c3d",
"built": "2026-05-26T14:30:00Z",
"sig": "base64-ed25519-sig..."
}Staging Gates
- Loader self-hash check passes (in-memory .text vs link-time baseline)
- Payload signature verified against pinned public key
- Canary deployment to 5% of CDN edge before full rollout
- Auto-rollback if crash rate exceeds 0.1% in 10-minute window
Secrets Handling
Signing keys live in a hardware-backed KMS. The CI runner requests a short-lived signing token scoped to the artifact digest. No long-lived secrets touch the build environment.
Next: Loader Integration
Wire the signed payload into the C++ loader's auto-update flow.
Read Loader Docs