feat: Add ArgoCD applications for multi-environment telecom platform deployment

- Add telecom-platform Application for base platform deployment to telecom-platform namespace
- Add telecom-platform-dev Application with automated sync, pruning, and self-healing enabled
- Add telecom-platform-staging Application with automated sync, pruning, and self-healing enabled
- Add telecom-platform-prod Application with manual sync (prune and selfHeal disabled) for production safety
- Configure dev and staging with 5
This commit is contained in:
nutcas3
2026-04-17 17:19:35 +03:00
parent 2ee6fa49fd
commit 44ce95a9e9
4 changed files with 127 additions and 0 deletions
@@ -0,0 +1,32 @@
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: telecom-platform-dev
namespace: argocd
labels:
app.kubernetes.io/name: telecom-platform-dev
app.kubernetes.io/component: platform
app.kubernetes.io/environment: dev
app.kubernetes.io/part-of: telecom-platform
spec:
project: default
source:
repoURL: https://github.com/nutcas3/telecom-platform.git
targetRevision: main
path: deployments/environments/dev
destination:
server: https://kubernetes.default.svc
namespace: telecom-platform-dev
syncPolicy:
automated:
prune: true
selfHeal: true
syncOptions:
- CreateNamespace=true
- PrunePropagationPolicy=foreground
retry:
limit: 5
backoff:
duration: 5s
factor: 2
maxDuration: 3m
@@ -0,0 +1,32 @@
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: telecom-platform-prod
namespace: argocd
labels:
app.kubernetes.io/name: telecom-platform-prod
app.kubernetes.io/component: platform
app.kubernetes.io/environment: prod
app.kubernetes.io/part-of: telecom-platform
spec:
project: default
source:
repoURL: https://github.com/nutcas3/telecom-platform.git
targetRevision: main
path: deployments/environments/prod
destination:
server: https://kubernetes.default.svc
namespace: telecom-platform-prod
syncPolicy:
automated:
prune: false # Manual sync for production
selfHeal: false
syncOptions:
- CreateNamespace=true
- PrunePropagationPolicy=foreground
retry:
limit: 3
backoff:
duration: 10s
factor: 2
maxDuration: 5m
@@ -0,0 +1,32 @@
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: telecom-platform-staging
namespace: argocd
labels:
app.kubernetes.io/name: telecom-platform-staging
app.kubernetes.io/component: platform
app.kubernetes.io/environment: staging
app.kubernetes.io/part-of: telecom-platform
spec:
project: default
source:
repoURL: https://github.com/nutcas3/telecom-platform.git
targetRevision: main
path: deployments/environments/staging
destination:
server: https://kubernetes.default.svc
namespace: telecom-platform-staging
syncPolicy:
automated:
prune: true
selfHeal: true
syncOptions:
- CreateNamespace=true
- PrunePropagationPolicy=foreground
retry:
limit: 5
backoff:
duration: 5s
factor: 2
maxDuration: 3m
@@ -0,0 +1,31 @@
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: telecom-platform
namespace: argocd
labels:
app.kubernetes.io/name: telecom-platform
app.kubernetes.io/component: platform
app.kubernetes.io/part-of: telecom-platform
spec:
project: default
source:
repoURL: https://github.com/nutcas3/telecom-platform.git
targetRevision: main
path: deployments/kubernetes
destination:
server: https://kubernetes.default.svc
namespace: telecom-platform
syncPolicy:
automated:
prune: true
selfHeal: true
syncOptions:
- CreateNamespace=true
- PrunePropagationPolicy=foreground
retry:
limit: 5
backoff:
duration: 5s
factor: 2
maxDuration: 3m