Updraft extension types
Custom resource extensions that let a CloudFormation template compute things it otherwise could not: reading configuration from S3, generating time-zone-aware schedules, and adapting to the region it is deploying into.
Every Updraft type follows the same rules:
- No side effects unless the name says so.
Updraft::Config::Documentreads.Updraft::Config::ParameterSetwrites, and says so in the name. A type that only computes makes no AWS API calls at all, and its permissions section says exactly that. - Failures are loud and early. Validation happens before anything is created, and the failure names the property and the value. A stack that half- succeeds is worse than one that refuses to start.
- Determinism by default. Anything that looks random — jitter, hash ordering — is seeded from something stable, so the same template deployed twice produces the same answer.
Config
Read configuration from where it lives — a versioned file in S3 — instead of threading it through template parameters.
Schedule
Describe when something should happen, and let the extension work out the cron expression — including what to do about daylight saving.
Region
Let one template behave correctly in twelve regions, without a mapping table that goes stale the next time AWS launches a region.