Klargjorde Azure‑infrastruktur som kode med Bicep — Container Apps, PostgreSQL Flexible Server, Front Door/WAF og nettverk — i utviklings-, staging- og produksjonsmiljøene.
Arbeidet utført: 2025
tre Azure‑miljøer, nedfelt som kode
Situasjon. Plattformen kjører på Azure, og Azure satt opp for hånd — klikking gjennom portalen, en innstilling justert her og der — er en felle. Oppsettet glir ut, ingen husker hvorfor noe er som det er, og å bygge det opp igjen etter en dårlig dag er tregt og nervepirrende. Med mer enn ett miljø å holde i takt blir det bare verre.
Oppgave. Legg hele oppsettet i kode, slik at et miljø er noe man kan lese, gjennomgå og gjenskape i stedet for en haug med manuell tilstand.
Handling. Hele Azure‑oppsettet er definert i Bicep. Hvert miljø — testing, staging, product — kommer ut av de samme malene: api og www som kjører som Azure Container Apps i et administrert miljø, en PostgreSQL Flexible Server, Redis som cache, Front Door med en WAF‑policy ytterst, og nettverket under (VNet, NSG, privat DNS), med Log Analytics koblet på for diagnostikk. Imagene hentes fra prosjektets Azure Container Registry. Fordi alt er parameterisert, er det å sette opp et nytt miljø eller endre et eksisterende en pull request, ikke en supportsak til seg selv.
Resultat. Miljøene ble reproduserbare og lot seg gjennomgå. Avvik sluttet å være et mysterium, fordi sannhetskilden er koden, og å få infrastrukturen opp eller tilbake er et spørsmål om å anvende malene, ikke om å huske hva som ble klikket forrige gang. Det er forskjellen på å eie infrastrukturen og å bli eid av den.
Les videre: Bygde CI/CD‑pipelines i GitHub Actions med et distroless‑produksjonsimage for frontend og promotering gjennom flere miljøer. Eller ta en titt på hele porteføljen.
Ett stykke av en lengre oversikt — og den ligger i sin helhet her.
Hver oppføring er skrevet på samme måte: situasjonen, oppgaven, hva vi gjorde, og hva som endret seg.