OneLab Kubernetes GitOps (Argo CD)
- Helm charts: onelab app + observability (Loki/Promtail/Grafana) - Values under gitops/values/ with public-safe placeholders - Argo CD Application (spec.sources, 2.6+) Made-with: Cursor
This commit is contained in:
38
gitops/argocd/application.yaml
Normal file
38
gitops/argocd/application.yaml
Normal file
@@ -0,0 +1,38 @@
|
||||
# Syncs OneLab app + observability (Loki/Promtail/Grafana) into namespace onelab.
|
||||
# Requires Argo CD 2.6+ (spec.sources). Ensure repoURL matches your remote.
|
||||
#
|
||||
# If you already had this Application with spec.source only, kubectl apply may not drop
|
||||
# source — see gitops/README.md (Migrating spec.source → spec.sources) and jsonpatch-multisource.json.
|
||||
apiVersion: argoproj.io/v1alpha1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: onelab
|
||||
namespace: argocd
|
||||
finalizers:
|
||||
- resources-finalizer.argocd.argoproj.io
|
||||
spec:
|
||||
project: default
|
||||
sources:
|
||||
- repoURL: https://github.com/YOUR_ORG/YOUR_REPO.git
|
||||
targetRevision: main
|
||||
path: gitops/charts/onelab
|
||||
helm:
|
||||
releaseName: onelab
|
||||
valueFiles:
|
||||
- ../../values/env-example.yaml
|
||||
- repoURL: https://github.com/YOUR_ORG/YOUR_REPO.git
|
||||
targetRevision: main
|
||||
path: gitops/observability
|
||||
helm:
|
||||
releaseName: onelab-obs
|
||||
valueFiles:
|
||||
- ../../values/observability.yaml
|
||||
destination:
|
||||
server: https://kubernetes.default.svc
|
||||
namespace: onelab
|
||||
syncPolicy:
|
||||
automated:
|
||||
prune: true
|
||||
selfHeal: true
|
||||
syncOptions:
|
||||
- CreateNamespace=true
|
||||
23
gitops/argocd/jsonpatch-multisource.json
Normal file
23
gitops/argocd/jsonpatch-multisource.json
Normal file
@@ -0,0 +1,23 @@
|
||||
[
|
||||
{"op": "remove", "path": "/spec/source"},
|
||||
{"op": "add", "path": "/spec/sources", "value": [
|
||||
{
|
||||
"repoURL": "https://github.com/YOUR_ORG/YOUR_REPO.git",
|
||||
"targetRevision": "main",
|
||||
"path": "gitops/charts/onelab",
|
||||
"helm": {
|
||||
"releaseName": "onelab",
|
||||
"valueFiles": ["../../values/env-example.yaml"]
|
||||
}
|
||||
},
|
||||
{
|
||||
"repoURL": "https://github.com/YOUR_ORG/YOUR_REPO.git",
|
||||
"targetRevision": "main",
|
||||
"path": "gitops/observability",
|
||||
"helm": {
|
||||
"releaseName": "onelab-obs",
|
||||
"valueFiles": ["../../values/observability.yaml"]
|
||||
}
|
||||
}
|
||||
]}
|
||||
]
|
||||
Reference in New Issue
Block a user