Build pipeline
Artifact registry
Als we containers willen gebruiken doorheen ons project, moeten die ook een registry krijgen waar we ze kunnen plaatsen.
De manier om dat te doen binnen GCP is de artifact registry.
Ook hiervoor moet een api actief gemaakt worden: artifactregistry.googleapis.com
- Maak een artifact registry aan in europe-west1 van het type DOCKER.
- Omdat je het doorheen het lab misschien nodig nodig hebt: gebruik de 'output'-functionaliteit in Terraform om je artifact repo-id af te drukken op de terminal.
Cloud Build
Maak een cloudbuild config aan
Net zoals je in Gitlab gitlab-ci.yml files kan aanmaken om een ci/cd pipeline op te starten, kan je dit ook doen in Google Cloud. Helaas is er nog geen standaard voor de syntax van CICD tools, dus die wijkt sterk af voor bijvoorbeeld Gitlab, GitHub en dus ook Google Cloud.
Bij Google Cloud zal je een cloudbuild.yml file moeten toevoegen, iets wat later aan bod komt.
Maak een build trigger aan
Met de net aangemaakte CloudBuild configuratie én de artifact registry kunnen we aan de slag: bij elke push naar onze repository willen we een container bouwen en plaatsen in de registry. Daarvoor hebben we Google Cloud Build nodig.
Maak daar een trigger aan. Let op de details (vb juiste branch naam, extensie van cloudbuild(.yml vs .yaml)) Dit stuk mag in de console geconfigureerd worden.
Om de build ook effectief te laten werken, moet een cloudbuild.yml file aangemaakt worden, iets wat we in de volgende stap doen.
::⚠️ De kans is bestaande dat je build zal falen omdat rechten nog niet overal goed ingesteld staan. Bekijk de melding aandachtig, en los dit probleem uiteraard ook op vooraleer je verder gaat. :::