Basis van cloud en containers
Een containerimage dat door een CI/CD-pipeline is gebouwd, is in de stagingomgeving getest en goedgekeurd. Wat is de meest geschikte manier om dit image naar productie te brengen?
- AHet image voor productie opnieuw bouwen uit dezelfde broncode en dat naar productie brengen
- BHet geteste image opnieuw taggen als latest en in de productieomgeving latest ophalen (pull)
- CHet geteste image zelf naar productie brengen door het met zijn digest op te geven, en de verschillen tussen de omgevingen via de configuratie aanleveren
Antwoord en toelichting tonen
Antwoord: C. Het geteste image zelf naar productie brengen door het met zijn digest op te geven, en de verschillen tussen de omgevingen via de configuratie aanleveren
In een pipeline wordt het artefact van de build (hier het image) als onveranderlijk behandeld, en hetzelfde artefact wordt van staging naar productie doorgezet. Zelfs uit dezelfde broncode kan een nieuwe build andere versies van de bibliotheken of het basisimage oppikken waarvan hij afhangt, zodat iets anders dan wat getest is, in productie terechtkomt. Een tag kan later naar een ander image worden verplaatst; om zeker te zijn dat naar hetzelfde image wordt verwezen, gebruikt men de digest, die door de inhoud wordt bepaald. Verschillen tussen omgevingen, zoals verbindingsdoelen, worden niet in het image ingebouwd, maar aangeleverd via configuratie zoals omgevingsvariabelen.