Från verkligheten
Kan våra utvecklare sätta upp infrastruktur själva?
Vår egen plattform: varje applikation via en merge request
Utgångsläge
Vi driver våra egna applikationer själva, bland annat mjukvaruregistret som varje natt kontrollerar våra beroenden. För det ville vi inte ha en server där någon ställer in saker för hand, utan en plattform av det slag vi också rekommenderar våra kunder.
Vad vi gjorde
Infrastrukturen skapas med Terraform och Ansible, applikationerna körs i Kubernetes och levereras via GitOps med Argo CD. Plattformen tillhandahåller HTTPS-certifikat och inloggning. En ny applikation är en merge request med sin beskrivning; pipelinen kontrollerar den, och ett godkännande driftsätter den.
Resultat
En ny applikation får sin miljö via en merge request, inte genom en förfrågan till någon med serveråtkomst. Mjukvaruregistret körs på samma plattform och kontrollerar även den.
Vad vi har lärt oss
En image-tagg som ”latest” ändrar inget manifest, så Argo CD ser ingen ny version. Därför är varje version hos oss fastlåst i kodarkivet, och en uppdatering är också en merge request.