Stage independent Artcraft applications before cutover

This commit is contained in:
2026-10-18 19:05:14 +02:00
parent 8de3cfa1a5
commit 0f9a75b9d6
26 changed files with 624 additions and 0 deletions
+20
View File
@@ -0,0 +1,20 @@
ingress:
enabled: true
className: traefik
host: autocad.brunner.ninja
annotations:
traefik.ingress.kubernetes.io/router.entrypoints: websecure
traefik.ingress.kubernetes.io/router.tls: "true"
metrics:
serviceMonitor:
enabled: true
nodeSelector:
odroid-h3: enabled
topologySpreadConstraints:
- maxSkew: 1
topologyKey: kubernetes.io/hostname
whenUnsatisfiable: DoNotSchedule
nodeTaintsPolicy: Honor
labelSelector:
matchLabels:
app.kubernetes.io/part-of: artcraft
+20
View File
@@ -0,0 +1,20 @@
ingress:
enabled: true
className: traefik
host: powerpoint.brunner.ninja
annotations:
traefik.ingress.kubernetes.io/router.entrypoints: websecure
traefik.ingress.kubernetes.io/router.tls: "true"
metrics:
serviceMonitor:
enabled: true
nodeSelector:
odroid-h3: enabled
topologySpreadConstraints:
- maxSkew: 1
topologyKey: kubernetes.io/hostname
whenUnsatisfiable: DoNotSchedule
nodeTaintsPolicy: Honor
labelSelector:
matchLabels:
app.kubernetes.io/part-of: artcraft
+20
View File
@@ -0,0 +1,20 @@
ingress:
enabled: true
className: traefik
host: indesign.brunner.ninja
annotations:
traefik.ingress.kubernetes.io/router.entrypoints: websecure
traefik.ingress.kubernetes.io/router.tls: "true"
metrics:
serviceMonitor:
enabled: true
nodeSelector:
odroid-h3: enabled
topologySpreadConstraints:
- maxSkew: 1
topologyKey: kubernetes.io/hostname
whenUnsatisfiable: DoNotSchedule
nodeTaintsPolicy: Honor
labelSelector:
matchLabels:
app.kubernetes.io/part-of: artcraft
+20
View File
@@ -0,0 +1,20 @@
ingress:
enabled: true
className: traefik
host: aftereffects.brunner.ninja
annotations:
traefik.ingress.kubernetes.io/router.entrypoints: websecure
traefik.ingress.kubernetes.io/router.tls: "true"
metrics:
serviceMonitor:
enabled: true
nodeSelector:
odroid-h3: enabled
topologySpreadConstraints:
- maxSkew: 1
topologyKey: kubernetes.io/hostname
whenUnsatisfiable: DoNotSchedule
nodeTaintsPolicy: Honor
labelSelector:
matchLabels:
app.kubernetes.io/part-of: artcraft
+20
View File
@@ -0,0 +1,20 @@
ingress:
enabled: true
className: traefik
host: figma.brunner.ninja
annotations:
traefik.ingress.kubernetes.io/router.entrypoints: websecure
traefik.ingress.kubernetes.io/router.tls: "true"
metrics:
serviceMonitor:
enabled: true
nodeSelector:
odroid-h3: enabled
topologySpreadConstraints:
- maxSkew: 1
topologyKey: kubernetes.io/hostname
whenUnsatisfiable: DoNotSchedule
nodeTaintsPolicy: Honor
labelSelector:
matchLabels:
app.kubernetes.io/part-of: artcraft
+20
View File
@@ -0,0 +1,20 @@
ingress:
enabled: true
className: traefik
host: premiere.brunner.ninja
annotations:
traefik.ingress.kubernetes.io/router.entrypoints: websecure
traefik.ingress.kubernetes.io/router.tls: "true"
metrics:
serviceMonitor:
enabled: true
nodeSelector:
odroid-h3: enabled
topologySpreadConstraints:
- maxSkew: 1
topologyKey: kubernetes.io/hostname
whenUnsatisfiable: DoNotSchedule
nodeTaintsPolicy: Honor
labelSelector:
matchLabels:
app.kubernetes.io/part-of: artcraft
+20
View File
@@ -0,0 +1,20 @@
ingress:
enabled: true
className: traefik
host: excel.brunner.ninja
annotations:
traefik.ingress.kubernetes.io/router.entrypoints: websecure
traefik.ingress.kubernetes.io/router.tls: "true"
metrics:
serviceMonitor:
enabled: true
nodeSelector:
odroid-h3: enabled
topologySpreadConstraints:
- maxSkew: 1
topologyKey: kubernetes.io/hostname
whenUnsatisfiable: DoNotSchedule
nodeTaintsPolicy: Honor
labelSelector:
matchLabels:
app.kubernetes.io/part-of: artcraft
+20
View File
@@ -0,0 +1,20 @@
ingress:
enabled: true
className: traefik
host: lightroom.brunner.ninja
annotations:
traefik.ingress.kubernetes.io/router.entrypoints: websecure
traefik.ingress.kubernetes.io/router.tls: "true"
metrics:
serviceMonitor:
enabled: true
nodeSelector:
odroid-h3: enabled
topologySpreadConstraints:
- maxSkew: 1
topologyKey: kubernetes.io/hostname
whenUnsatisfiable: DoNotSchedule
nodeTaintsPolicy: Honor
labelSelector:
matchLabels:
app.kubernetes.io/part-of: artcraft
+20
View File
@@ -0,0 +1,20 @@
ingress:
enabled: true
className: traefik
host: acrobat.brunner.ninja
annotations:
traefik.ingress.kubernetes.io/router.entrypoints: websecure
traefik.ingress.kubernetes.io/router.tls: "true"
metrics:
serviceMonitor:
enabled: true
nodeSelector:
odroid-h3: enabled
topologySpreadConstraints:
- maxSkew: 1
topologyKey: kubernetes.io/hostname
whenUnsatisfiable: DoNotSchedule
nodeTaintsPolicy: Honor
labelSelector:
matchLabels:
app.kubernetes.io/part-of: artcraft
+20
View File
@@ -0,0 +1,20 @@
ingress:
enabled: true
className: traefik
host: photoshop.brunner.ninja
annotations:
traefik.ingress.kubernetes.io/router.entrypoints: websecure
traefik.ingress.kubernetes.io/router.tls: "true"
metrics:
serviceMonitor:
enabled: true
nodeSelector:
odroid-h3: enabled
topologySpreadConstraints:
- maxSkew: 1
topologyKey: kubernetes.io/hostname
whenUnsatisfiable: DoNotSchedule
nodeTaintsPolicy: Honor
labelSelector:
matchLabels:
app.kubernetes.io/part-of: artcraft
+20
View File
@@ -0,0 +1,20 @@
ingress:
enabled: true
className: traefik
host: protools.brunner.ninja
annotations:
traefik.ingress.kubernetes.io/router.entrypoints: websecure
traefik.ingress.kubernetes.io/router.tls: "true"
metrics:
serviceMonitor:
enabled: true
nodeSelector:
odroid-h3: enabled
topologySpreadConstraints:
- maxSkew: 1
topologyKey: kubernetes.io/hostname
whenUnsatisfiable: DoNotSchedule
nodeTaintsPolicy: Honor
labelSelector:
matchLabels:
app.kubernetes.io/part-of: artcraft
+20
View File
@@ -0,0 +1,20 @@
ingress:
enabled: true
className: traefik
host: illustrator.brunner.ninja
annotations:
traefik.ingress.kubernetes.io/router.entrypoints: websecure
traefik.ingress.kubernetes.io/router.tls: "true"
metrics:
serviceMonitor:
enabled: true
nodeSelector:
odroid-h3: enabled
topologySpreadConstraints:
- maxSkew: 1
topologyKey: kubernetes.io/hostname
whenUnsatisfiable: DoNotSchedule
nodeTaintsPolicy: Honor
labelSelector:
matchLabels:
app.kubernetes.io/part-of: artcraft
+20
View File
@@ -0,0 +1,20 @@
ingress:
enabled: true
className: traefik
host: word.brunner.ninja
annotations:
traefik.ingress.kubernetes.io/router.entrypoints: websecure
traefik.ingress.kubernetes.io/router.tls: "true"
metrics:
serviceMonitor:
enabled: true
nodeSelector:
odroid-h3: enabled
topologySpreadConstraints:
- maxSkew: 1
topologyKey: kubernetes.io/hostname
whenUnsatisfiable: DoNotSchedule
nodeTaintsPolicy: Honor
labelSelector:
matchLabels:
app.kubernetes.io/part-of: artcraft
+28
View File
@@ -0,0 +1,28 @@
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: cadcraft
namespace: argocd
spec:
project: artcraft
sources:
- repoURL: https://brunner.ninja/charts
chart: cadcraft
targetRevision: 1.0.0
helm:
releaseName: cadcraft
valueFiles:
- $values/apps/cadcraft/values.yaml
- repoURL: https://code.brunner.ninja/feedc0de/homelab-gitops.git
targetRevision: main
ref: values
destination:
server: https://kubernetes.default.svc
namespace: artcraft
syncPolicy:
automated:
enabled: true
prune: true
selfHeal: true
syncOptions:
- CreateNamespace=true
+28
View File
@@ -0,0 +1,28 @@
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: deckcraft
namespace: argocd
spec:
project: artcraft
sources:
- repoURL: https://brunner.ninja/charts
chart: deckcraft
targetRevision: 1.0.0
helm:
releaseName: deckcraft
valueFiles:
- $values/apps/deckcraft/values.yaml
- repoURL: https://code.brunner.ninja/feedc0de/homelab-gitops.git
targetRevision: main
ref: values
destination:
server: https://kubernetes.default.svc
namespace: artcraft
syncPolicy:
automated:
enabled: true
prune: true
selfHeal: true
syncOptions:
- CreateNamespace=true
+28
View File
@@ -0,0 +1,28 @@
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: designcraft
namespace: argocd
spec:
project: artcraft
sources:
- repoURL: https://brunner.ninja/charts
chart: designcraft
targetRevision: 1.0.0
helm:
releaseName: designcraft
valueFiles:
- $values/apps/designcraft/values.yaml
- repoURL: https://code.brunner.ninja/feedc0de/homelab-gitops.git
targetRevision: main
ref: values
destination:
server: https://kubernetes.default.svc
namespace: artcraft
syncPolicy:
automated:
enabled: true
prune: true
selfHeal: true
syncOptions:
- CreateNamespace=true
+28
View File
@@ -0,0 +1,28 @@
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: effectcraft
namespace: argocd
spec:
project: artcraft
sources:
- repoURL: https://brunner.ninja/charts
chart: effectcraft
targetRevision: 1.0.0
helm:
releaseName: effectcraft
valueFiles:
- $values/apps/effectcraft/values.yaml
- repoURL: https://code.brunner.ninja/feedc0de/homelab-gitops.git
targetRevision: main
ref: values
destination:
server: https://kubernetes.default.svc
namespace: artcraft
syncPolicy:
automated:
enabled: true
prune: true
selfHeal: true
syncOptions:
- CreateNamespace=true
+28
View File
@@ -0,0 +1,28 @@
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: figcraft
namespace: argocd
spec:
project: artcraft
sources:
- repoURL: https://brunner.ninja/charts
chart: figcraft
targetRevision: 1.0.0
helm:
releaseName: figcraft
valueFiles:
- $values/apps/figcraft/values.yaml
- repoURL: https://code.brunner.ninja/feedc0de/homelab-gitops.git
targetRevision: main
ref: values
destination:
server: https://kubernetes.default.svc
namespace: artcraft
syncPolicy:
automated:
enabled: true
prune: true
selfHeal: true
syncOptions:
- CreateNamespace=true
+28
View File
@@ -0,0 +1,28 @@
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: filmcraft
namespace: argocd
spec:
project: artcraft
sources:
- repoURL: https://brunner.ninja/charts
chart: filmcraft
targetRevision: 1.0.0
helm:
releaseName: filmcraft
valueFiles:
- $values/apps/filmcraft/values.yaml
- repoURL: https://code.brunner.ninja/feedc0de/homelab-gitops.git
targetRevision: main
ref: values
destination:
server: https://kubernetes.default.svc
namespace: artcraft
syncPolicy:
automated:
enabled: true
prune: true
selfHeal: true
syncOptions:
- CreateNamespace=true
+28
View File
@@ -0,0 +1,28 @@
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: gridcraft
namespace: argocd
spec:
project: artcraft
sources:
- repoURL: https://brunner.ninja/charts
chart: gridcraft
targetRevision: 1.0.0
helm:
releaseName: gridcraft
valueFiles:
- $values/apps/gridcraft/values.yaml
- repoURL: https://code.brunner.ninja/feedc0de/homelab-gitops.git
targetRevision: main
ref: values
destination:
server: https://kubernetes.default.svc
namespace: artcraft
syncPolicy:
automated:
enabled: true
prune: true
selfHeal: true
syncOptions:
- CreateNamespace=true
+28
View File
@@ -0,0 +1,28 @@
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: lightcraft
namespace: argocd
spec:
project: artcraft
sources:
- repoURL: https://brunner.ninja/charts
chart: lightcraft
targetRevision: 1.0.0
helm:
releaseName: lightcraft
valueFiles:
- $values/apps/lightcraft/values.yaml
- repoURL: https://code.brunner.ninja/feedc0de/homelab-gitops.git
targetRevision: main
ref: values
destination:
server: https://kubernetes.default.svc
namespace: artcraft
syncPolicy:
automated:
enabled: true
prune: true
selfHeal: true
syncOptions:
- CreateNamespace=true
+28
View File
@@ -0,0 +1,28 @@
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: pdfcraft
namespace: argocd
spec:
project: artcraft
sources:
- repoURL: https://brunner.ninja/charts
chart: pdfcraft
targetRevision: 1.0.0
helm:
releaseName: pdfcraft
valueFiles:
- $values/apps/pdfcraft/values.yaml
- repoURL: https://code.brunner.ninja/feedc0de/homelab-gitops.git
targetRevision: main
ref: values
destination:
server: https://kubernetes.default.svc
namespace: artcraft
syncPolicy:
automated:
enabled: true
prune: true
selfHeal: true
syncOptions:
- CreateNamespace=true
+28
View File
@@ -0,0 +1,28 @@
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: photocraft
namespace: argocd
spec:
project: artcraft
sources:
- repoURL: https://brunner.ninja/charts
chart: photocraft
targetRevision: 1.0.0
helm:
releaseName: photocraft
valueFiles:
- $values/apps/photocraft/values.yaml
- repoURL: https://code.brunner.ninja/feedc0de/homelab-gitops.git
targetRevision: main
ref: values
destination:
server: https://kubernetes.default.svc
namespace: artcraft
syncPolicy:
automated:
enabled: true
prune: true
selfHeal: true
syncOptions:
- CreateNamespace=true
+28
View File
@@ -0,0 +1,28 @@
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: soundcraft
namespace: argocd
spec:
project: artcraft
sources:
- repoURL: https://brunner.ninja/charts
chart: soundcraft
targetRevision: 1.0.0
helm:
releaseName: soundcraft
valueFiles:
- $values/apps/soundcraft/values.yaml
- repoURL: https://code.brunner.ninja/feedc0de/homelab-gitops.git
targetRevision: main
ref: values
destination:
server: https://kubernetes.default.svc
namespace: artcraft
syncPolicy:
automated:
enabled: true
prune: true
selfHeal: true
syncOptions:
- CreateNamespace=true
+28
View File
@@ -0,0 +1,28 @@
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: vectorcraft
namespace: argocd
spec:
project: artcraft
sources:
- repoURL: https://brunner.ninja/charts
chart: vectorcraft
targetRevision: 1.0.0
helm:
releaseName: vectorcraft
valueFiles:
- $values/apps/vectorcraft/values.yaml
- repoURL: https://code.brunner.ninja/feedc0de/homelab-gitops.git
targetRevision: main
ref: values
destination:
server: https://kubernetes.default.svc
namespace: artcraft
syncPolicy:
automated:
enabled: true
prune: true
selfHeal: true
syncOptions:
- CreateNamespace=true
+28
View File
@@ -0,0 +1,28 @@
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: wordcraft
namespace: argocd
spec:
project: artcraft
sources:
- repoURL: https://brunner.ninja/charts
chart: wordcraft
targetRevision: 1.0.0
helm:
releaseName: wordcraft
valueFiles:
- $values/apps/wordcraft/values.yaml
- repoURL: https://code.brunner.ninja/feedc0de/homelab-gitops.git
targetRevision: main
ref: values
destination:
server: https://kubernetes.default.svc
namespace: artcraft
syncPolicy:
automated:
enabled: true
prune: true
selfHeal: true
syncOptions:
- CreateNamespace=true