150b5011d5
Klustret följer git — ingen CI-process har kubectl-åtkomst: - Nytt publiceringsflöde (.github/workflows/publicera.yml): varje main-push bygger de tre bilderna, publicerar till GHCR taggade med git-SHA (endast GITHUB_TOKEN, inga externa hemligheter), uppdaterar produktions-overlayens taggar med kustomize edit set image och committar tillbaka — overlayen ombyggs som verifiering före commit, och paths-ignore + [skip ci] förhindrar triggerloopar. - Produktions-overlay (infra/overlays/produktion): GitOps-sanningen för vad som kör; bas = infra/k8s. Rollback = git revert. - Argo CD-applikation (infra/gitops/argocd-application.yaml): automatisk synk med prune + selfHeal; hemligheten ligger medvetet utanför både git och synken. Bootstrap = ett kubectl apply. - DRIFT.md: CI/CD-avsnitt med flödesdiagram, bootstrap, rollback och repo-variabeln PLATTFORM_URL. Verifierat med riktig kustomize v5.4.3: overlayen bygger 17 objekt, bildbytet slår igenom på alla tre tjänsterna, postgres-init genereras, och workflowens exakta edit set image-kommandon fungerar. Alla workflow-/manifest-YAML validerade; 29 vitest-tester gröna. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_012EQg3rJsrQ1ZNTvkzmQAtt
28 lines
853 B
YAML
28 lines
853 B
YAML
# Argo CD-applikationen: klustret följer git — appliceras EN gång i
|
|
# argocd-namespacet, därefter sköter Argo CD all synk automatiskt.
|
|
#
|
|
# kubectl apply -f infra/gitops/argocd-application.yaml
|
|
#
|
|
# prune tar bort resurser som försvunnit ur git; selfHeal återställer
|
|
# manuella ändringar i klustret. Hemligheten felsokning-hemligheter
|
|
# ligger medvetet utanför git och utanför synken.
|
|
apiVersion: argoproj.io/v1alpha1
|
|
kind: Application
|
|
metadata:
|
|
name: guidad-felsokning
|
|
namespace: argocd
|
|
spec:
|
|
project: default
|
|
source:
|
|
repoURL: https://github.com/ERSATT-MIG/ERSATT-MIG.git # ersätt med ert repo
|
|
targetRevision: main
|
|
path: infra/overlays/produktion
|
|
destination:
|
|
server: https://kubernetes.default.svc
|
|
syncPolicy:
|
|
automated:
|
|
prune: true
|
|
selfHeal: true
|
|
syncOptions:
|
|
- ServerSideApply=true
|