Zero-guess deployment
Run setup-platform.ps1 to provision Azure Functions, Event Grid, Storage, and Key Vault with the correct identities and permissions.
Stage 3 · Event-Driven Automation
Clone the reference repo, run setup-platform.ps1, and get Azure Functions, Key Vault wiring, and secure CI/CD automation online in about ten minutes.
Run setup-platform.ps1 to provision Azure Functions, Event Grid, Storage, and Key Vault with the correct identities and permissions.
Drop-in workflows for GitHub Actions and Azure DevOps are bundled so you can pick your CI/CD platform without extra wiring.
OIDC workload identities replace PATs, managed identities secure Azure resources, and no secrets land in code or pipelines.
After cloning the reference repository, run the setup wizard and choose GitHub Actions, Azure DevOps, or both. The script provisions Azure resources and links your CI/CD provider automatically.
# From the reference repo root
pwsh ./setup-platform.ps1 -Platform GitHub
# Other options:
# pwsh ./setup-platform.ps1 -Platform AzureDevOps
# pwsh ./setup-platform.ps1 -Platform Both
# The wizard provisions:
# - Azure Function + Event Grid subscription
# - Key Vault with configuration secrets
# - GitHub Actions and/or Azure DevOps pipelines ready to run
The deployment script applies the same baseline in test and production, so promoting changes is as easy as running it again with a different subscription or resource group.
Your orchestrator JSON and secrets stay in Key Vault. Any update to a secret or config entry is the signal to evaluate drift.
Event Grid triggers the Function, which reads the updated secret name and chooses the right workflow target and orchestrator mode.
Secrets prefixed with gh- send the payload to GitHub Actions, ado- to Azure DevOps. Suffixes like -test or -prod set environments and pick -WhatIf, -delta, or -initial—all executed with short-lived tokens and scoped permissions.
Secret names act as routing rules: choose the provider (GitHub or Azure DevOps) and environment (Test or Prod) by how you label the payload.
The pipeline parameters adapt automatically—Test secrets trigger WhatIf, production secrets switch to delta or initial mode for first-time rollout.
Each run ships compliance-ready summaries that highlight token provenance, scopes granted, and confirms no static secrets were used.
Event-driven success depends on well-governed templates and overrides. Ensure Stage 2 is running clean before automating enforcement.