@@ -60,3 +60,63 @@ Om een blog te publiceren die in draft staat volg je de volgende stappen:
6060- Verplaats de blogpost naar de map van de huidige maand.
6161- Verwijder de ` draft: true ` property uit het frontmatter van de blogpost.
6262- Draai ` pnpm build ` om te kijken of de markdown in orde is.
63+
64+ ## Deployen
65+
66+ De deployment van deze site verloopt via GitHub Actions en een aparte infra
67+ repository.
68+
69+ ### Benodigde variabelen en secrets
70+
71+ - Organization variable ` INFRA_REPO ` , bijvoorbeeld
72+ ` developer-overheid-nl/don-infra ` .
73+ - Repository variable ` KUSTOMIZE_PATH ` , met als basispad bijvoorbeeld
74+ ` apps/frontend/overlays/ ` .
75+ - Secrets ` RELEASE_PROCES_APP_ID ` en ` RELEASE_PROCES_APP_PRIVATE_KEY ` voor het
76+ aanpassen van de infra repository.
77+ - Secrets ` PIWIK_PRO_ACCOUNT_ADDRESS ` en ` PIWIK_PRO_SITE_ID ` voor de build.
78+
79+ ### Deploy naar test
80+
81+ De testdeploy draait via ` .github/workflows/deploy-test.yml ` .
82+
83+ - De workflow draait op pushes naar branches behalve ` main ` .
84+ - Alleen commits met ` [deploy-test] ` in de commit message worden echt
85+ gedeployed.
86+ - Er wordt een image gebouwd en gepusht naar ` ghcr.io/<owner>/<repo> ` met tags
87+ ` test ` en de commit SHA.
88+ - Daarna wordt in ` INFRA_REPO ` het bestand
89+ ` ${KUSTOMIZE_PATH}test/kustomization.yaml ` bijgewerkt naar de nieuwe image tag
90+ en direct gecommit.
91+
92+ Voorbeeld commit message:
93+
94+ ``` text
95+ feat: pas content aan [deploy-test]
96+ ```
97+
98+ ### Deploy naar productie
99+
100+ De productiedeploy draait via ` .github/workflows/deploy-prod.yml ` .
101+
102+ - De workflow draait bij een push naar ` main ` .
103+ - Er wordt in ` INFRA_REPO ` een release branch aangemaakt.
104+ - In ` ${KUSTOMIZE_PATH}prod/kustomization.yaml ` wordt de image tag bijgewerkt
105+ naar de commit SHA van deze repository.
106+ - Daarna wordt automatisch een pull request in de infra repository geopend.
107+ - De productie-uitrol gebeurt door die pull request te mergen.
108+
109+ ### Contributies en deploy
110+
111+ Een contribution of pull request leidt niet automatisch tot een deployment.
112+
113+ - Een pull request triggert wel CI, waaronder de build en JSON-validatie.
114+ - De build in ` .github/workflows/build.yml ` bouwt voor een pull request een
115+ Docker image als controle, maar pusht dat image niet naar GHCR en past de
116+ infra repository niet aan.
117+ - Er is dus geen automatische preview-omgeving per pull request.
118+ - Een testdeploy gebeurt pas na een push naar een branch in deze repository met
119+ ` [deploy-test] ` in de commit message.
120+ - Die testdeploy gebruikt repository- en organization-variables en secrets om
121+ ook ` INFRA_REPO ` aan te passen. Daardoor is dit pad in de praktijk bedoeld
122+ voor maintainers of contributors met een branch in deze repository.
0 commit comments