feature/multicluster
Some checks failed
Deploy Gitea Pages / build-and-deploy (push) Failing after 5s
Some checks failed
Deploy Gitea Pages / build-and-deploy (push) Failing after 5s
Co-authored-by: Danijel Simeunovic <danijel.simeunovic@trumf.no> Reviewed-on: #4 Reviewed-by: gitea_admin <admin@forteapps.net>
This commit was merged in pull request #4.
This commit is contained in:
@@ -21,7 +21,7 @@
|
||||
|-----------|-------|
|
||||
| **Provider** | UpCloud Managed Kubernetes |
|
||||
| **Environment** | Production (internal use) |
|
||||
| **Cluster Count** | Single cluster |
|
||||
| **Cluster Count** | Multi-cluster (upc-dev, upc-prod) |
|
||||
| **GitOps Tool** | ArgoCD |
|
||||
| **Ingress Controller** | Traefik v2 |
|
||||
| **Certificate Management** | Cert-Manager + Let's Encrypt |
|
||||
@@ -71,7 +71,8 @@ Internet
|
||||
```
|
||||
launchpad/
|
||||
├── bootstrap.sh # Cluster initialization script
|
||||
├── _app-of-apps.yaml # Root ArgoCD Application
|
||||
├── _app-of-apps-upc-dev.yaml # Root ArgoCD Application (upc-dev)
|
||||
├── _app-of-apps-upc-prod.yaml # Root ArgoCD Application (upc-prod)
|
||||
│
|
||||
├── infra/ # Infrastructure applications
|
||||
│ ├── cluster-resources-application.yaml
|
||||
@@ -156,15 +157,15 @@ ArgoCd() {
|
||||
helm upgrade --install argocd argo-cd \
|
||||
--repo https://argoproj.github.io/argo-helm \
|
||||
--namespace argocd --create-namespace \
|
||||
--values infra/values/argocd-values.yaml \
|
||||
--values infra/values/base/argocd-values.yaml \
|
||||
--set notifications.context.clusterName="$CLUSTER_NAME" \
|
||||
--timeout 60s --atomic
|
||||
|
||||
kubectl apply -f _app-of-apps.yaml -n argocd
|
||||
kubectl apply -f _app-of-apps-upc-dev.yaml -n argocd # or _app-of-apps-upc-prod.yaml
|
||||
}
|
||||
```
|
||||
|
||||
**`_app-of-apps.yaml`**
|
||||
**`_app-of-apps-upc-dev.yaml`** / **`_app-of-apps-upc-prod.yaml`**
|
||||
```yaml
|
||||
apiVersion: argoproj.io/v1alpha1
|
||||
kind: Application
|
||||
@@ -615,7 +616,7 @@ retry:
|
||||
|
||||
**Configuration**:
|
||||
```yaml
|
||||
# infra/traefik-application.yaml
|
||||
# infra/base/traefik-application.yaml
|
||||
replicas: 2
|
||||
|
||||
service:
|
||||
@@ -790,7 +791,7 @@ persistence:
|
||||
|
||||
**Configuration**:
|
||||
```yaml
|
||||
# infra/gitea.yaml + infra/values/gitea-values.yaml
|
||||
# infra/base/gitea.yaml + infra/values/base/gitea-values.yaml
|
||||
ingress:
|
||||
host: git.forteapps.net
|
||||
tls: cert-manager (letsencrypt-prod)
|
||||
@@ -833,7 +834,7 @@ postgresql:
|
||||
|
||||
**Configuration**:
|
||||
```yaml
|
||||
# infra/gitea-actions.yaml + infra/values/gitea-actions-values.yaml
|
||||
# infra/base/gitea-actions.yaml + infra/values/base/gitea-actions-values.yaml
|
||||
replicaCount: 3
|
||||
|
||||
runner:
|
||||
@@ -994,7 +995,7 @@ kubectl get secret keycloak-client-<app> -n keycloak -o jsonpath='{.metadata.ann
|
||||
|
||||
**Configuration**:
|
||||
```yaml
|
||||
# infra/renovate.yaml + infra/values/renovate-values.yaml
|
||||
# infra/base/renovate.yaml + infra/values/base/renovate-values.yaml
|
||||
cronjob:
|
||||
schedule: "@daily"
|
||||
concurrencyPolicy: Forbid
|
||||
|
||||
Reference in New Issue
Block a user