Skip to main content

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.

Add trigger

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. :::