installer: helmrelease for app namespaces
diff --git a/core/installer/values-tmpl/certificate-issuer.yaml b/core/installer/values-tmpl/certificate-issuer.yaml
index db2ed7b..61134eb 100644
--- a/core/installer/values-tmpl/certificate-issuer.yaml
+++ b/core/installer/values-tmpl/certificate-issuer.yaml
@@ -4,6 +4,9 @@
name: certificate-issuer
namespace: {{ .Global.NamespacePrefix }}ingress-private
spec:
+ dependsOn:
+ - name: ingress-private
+ namespace: {{ .Global.NamespacePrefix }}ingress-private
chart:
spec:
chart: charts/certificate-issuer
@@ -11,9 +14,6 @@
kind: GitRepository
name: pcloud
namespace: {{ .Global.Id }}
- dependsOn:
- - name: ingress-private
- namespace: {{ .Global.NamespacePrefix }}ingress-private
interval: 1m0s
values:
pcloudInstanceId: {{ .Global.Id }}
diff --git a/core/installer/values-tmpl/core-auth-storage.yaml b/core/installer/values-tmpl/core-auth-storage.yaml
index d1ad1d9..a29d269 100644
--- a/core/installer/values-tmpl/core-auth-storage.yaml
+++ b/core/installer/values-tmpl/core-auth-storage.yaml
@@ -1,9 +1,32 @@
apiVersion: helm.toolkit.fluxcd.io/v2beta1
kind: HelmRelease
metadata:
+ name: namespaces-core-auth
+ namespace: {{ .Global.Id }}
+spec:
+ chart:
+ spec:
+ chart: charts/namespaces
+ sourceRef:
+ kind: GitRepository
+ name: pcloud
+ namespace: {{ .Global.Id }}
+ interval: 1m0s
+ values:
+ pcloudInstanceId: {{ .Global.Id }}
+ namespacePrefix: {{ .Global.NamespacePrefix }}
+ namespaces:
+ - app-core-auth
+---
+apiVersion: helm.toolkit.fluxcd.io/v2beta1
+kind: HelmRelease
+metadata:
name: core-auth-storage
namespace: {{ .Global.NamespacePrefix }}core-auth
spec:
+ dependsOn:
+ - name: namespaces-core-auth
+ namespace: {{ .Global.Id }}
chart:
spec:
chart: charts/postgresql
diff --git a/core/installer/values-tmpl/headscale.yaml b/core/installer/values-tmpl/headscale.yaml
index b908419..5c8a333 100644
--- a/core/installer/values-tmpl/headscale.yaml
+++ b/core/installer/values-tmpl/headscale.yaml
@@ -1,11 +1,34 @@
apiVersion: helm.toolkit.fluxcd.io/v2beta1
kind: HelmRelease
metadata:
+ name: namespaces-headscale
+ namespace: {{ .Global.Id }}
+spec:
+ chart:
+ spec:
+ chart: charts/namespaces
+ sourceRef:
+ kind: GitRepository
+ name: pcloud
+ namespace: {{ .Global.Id }}
+ interval: 1m0s
+ values:
+ pcloudInstanceId: {{ .Global.Id }}
+ namespacePrefix: {{ .Global.NamespacePrefix }}
+ namespaces:
+ - app-headscale
+---
+apiVersion: helm.toolkit.fluxcd.io/v2beta1
+kind: HelmRelease
+metadata:
name: headscale
namespace: {{ .Global.NamespacePrefix }}app-headscale
annotations:
version: 2-with-oidc-hydra-admin
spec:
+ dependsOn:
+ - name: namespaces-headscale
+ namespace: {{ .Global.Id }}
chart:
spec:
chart: charts/headscale
diff --git a/core/installer/values-tmpl/ingress-private.yaml b/core/installer/values-tmpl/ingress-private.yaml
index a0e4246..e0fd9af 100644
--- a/core/installer/values-tmpl/ingress-private.yaml
+++ b/core/installer/values-tmpl/ingress-private.yaml
@@ -1,9 +1,32 @@
apiVersion: helm.toolkit.fluxcd.io/v2beta1
kind: HelmRelease
metadata:
+ name: namespaces-ingress-private
+ namespace: {{ .Global.Id }}
+spec:
+ chart:
+ spec:
+ chart: charts/namespaces
+ sourceRef:
+ kind: GitRepository
+ name: pcloud
+ namespace: {{ .Global.Id }}
+ interval: 1m0s
+ values:
+ pcloudInstanceId: {{ .Global.Id }}
+ namespacePrefix: {{ .Global.NamespacePrefix }}
+ namespaces:
+ - app-ingress-private
+---
+apiVersion: helm.toolkit.fluxcd.io/v2beta1
+kind: HelmRelease
+metadata:
name: ingress-private
namespace: {{ .Global.NamespacePrefix }}ingress-private
spec:
+ dependsOn:
+ - name: namespaces-ingress-private
+ namespace: {{ .Global.Id }}
chart:
spec:
chart: charts/ingress-nginx
diff --git a/core/installer/values-tmpl/ingress-public.yaml b/core/installer/values-tmpl/ingress-public.yaml
index f3c4748..010bed9 100644
--- a/core/installer/values-tmpl/ingress-public.yaml
+++ b/core/installer/values-tmpl/ingress-public.yaml
@@ -1,9 +1,32 @@
apiVersion: helm.toolkit.fluxcd.io/v2beta1
kind: HelmRelease
metadata:
+ name: namespaces-ingress-public
+ namespace: {{ .Global.Id }}
+spec:
+ chart:
+ spec:
+ chart: charts/namespaces
+ sourceRef:
+ kind: GitRepository
+ name: pcloud
+ namespace: {{ .Global.Id }}
+ interval: 1m0s
+ values:
+ pcloudInstanceId: {{ .Global.Id }}
+ namespacePrefix: {{ .Global.NamespacePrefix }}
+ namespaces:
+ - app-ingress-public
+---
+apiVersion: helm.toolkit.fluxcd.io/v2beta1
+kind: HelmRelease
+metadata:
name: ingress-public
namespace: {{ .Values.NamespacePrefix }}ingress-public
spec:
+ dependsOn:
+ - name: namespaces-ingress-public
+ namespace: {{ .Global.Id }}
chart:
spec:
chart: ingress-nginx
diff --git a/core/installer/values-tmpl/jellyfin.yaml b/core/installer/values-tmpl/jellyfin.yaml
index d68109a..9743bff 100644
--- a/core/installer/values-tmpl/jellyfin.yaml
+++ b/core/installer/values-tmpl/jellyfin.yaml
@@ -1,22 +1,42 @@
apiVersion: helm.toolkit.fluxcd.io/v2beta1
kind: HelmRelease
metadata:
- name: jellyfin
- namespace: {{ .Values.NamespacePrefix }}app-jellyfin
+ name: namespaces-jellyfin
+ namespace: {{ .Global.Id }}
spec:
chart:
spec:
+ chart: charts/namespaces
+ sourceRef:
+ kind: GitRepository
+ name: pcloud
+ namespace: {{ .Global.Id }}
+ interval: 1m0s
+ values:
+ pcloudInstanceId: {{ .Global.Id }}
+ namespacePrefix: {{ .Global.NamespacePrefix }}
+ namespaces:
+ - app-jellyfin
+---
+apiVersion: helm.toolkit.fluxcd.io/v2beta1
+kind: HelmRelease
+metadata:
+ name: jellyfin
+ namespace: {{ .Global.NamespacePrefix }}app-jellyfin
+spec:
+ dependsOn:
+ - name: namespaces-jellyfin
+ namespace: {{ .Global.Id }}
+ chart:
+ spec:
chart: charts/jellyfin
sourceRef:
kind: GitRepository
name: pcloud
- namespace: {{ .Values.Id }}
- dependsOn:
- - name: namespaces
- namespace: {{ .Values.Id }}
+ namespace: {{ .Global.Id }}
interval: 1m0s
values:
- pcloudInstanceId: {{ .Values.Id }}
+ pcloudInstanceId: {{ .Global.Id }}
ingress:
- className: {{ .Values.Id }}-ingress-private
- domain: jellyfin.p.{{ .Values.Domain }}
+ className: {{ .Global.Id }}-ingress-private
+ domain: {{ .Values.Subdomain }}.{{ .Global.PrivateDomain }}
diff --git a/core/installer/values-tmpl/maddy.yaml b/core/installer/values-tmpl/maddy.yaml
index 3476438..73ad395 100644
--- a/core/installer/values-tmpl/maddy.yaml
+++ b/core/installer/values-tmpl/maddy.yaml
@@ -1,9 +1,32 @@
apiVersion: helm.toolkit.fluxcd.io/v2beta1
kind: HelmRelease
metadata:
+ name: namespaces-maddy
+ namespace: {{ .Global.Id }}
+spec:
+ chart:
+ spec:
+ chart: charts/namespaces
+ sourceRef:
+ kind: GitRepository
+ name: pcloud
+ namespace: {{ .Global.Id }}
+ interval: 1m0s
+ values:
+ pcloudInstanceId: {{ .Global.Id }}
+ namespacePrefix: {{ .Global.NamespacePrefix }}
+ namespaces:
+ - app-maddy
+---
+apiVersion: helm.toolkit.fluxcd.io/v2beta1
+kind: HelmRelease
+metadata:
name: maddy
namespace: {{ .Values.NamespacePrefix }}app-maddy
spec:
+ dependsOn:
+ - name: namespaces-maddy
+ namespace: {{ .Global.Id }}
chart:
spec:
chart: charts/maddy
@@ -11,9 +34,6 @@
kind: GitRepository
name: pcloud
namespace: {{ .Values.Id }}
- dependsOn:
- - name: namespaces
- namespace: {{ .Values.Id }}
interval: 1m0s
values:
ingress:
diff --git a/core/installer/values-tmpl/matrix-storage.yaml b/core/installer/values-tmpl/matrix-storage.yaml
index 7c00497..0684427 100644
--- a/core/installer/values-tmpl/matrix-storage.yaml
+++ b/core/installer/values-tmpl/matrix-storage.yaml
@@ -1,9 +1,32 @@
apiVersion: helm.toolkit.fluxcd.io/v2beta1
kind: HelmRelease
metadata:
+ name: namespaces-matrix
+ namespace: {{ .Global.Id }}
+spec:
+ chart:
+ spec:
+ chart: charts/namespaces
+ sourceRef:
+ kind: GitRepository
+ name: pcloud
+ namespace: {{ .Global.Id }}
+ interval: 1m0s
+ values:
+ pcloudInstanceId: {{ .Global.Id }}
+ namespacePrefix: {{ .Global.NamespacePrefix }}
+ namespaces:
+ - app-matrix
+---
+apiVersion: helm.toolkit.fluxcd.io/v2beta1
+kind: HelmRelease
+metadata:
name: matrix-storage
namespace: {{ .Values.NamespacePrefix }}app-matrix
spec:
+ dependsOn:
+ - name: namespaces-matrix
+ namespace: {{ .Global.Id }}
chart:
spec:
chart: postgresql
@@ -12,9 +35,6 @@
kind: HelmRepository
name: bitnami
namespace: {{ .Values.Id }}
- dependsOn:
- - name: namespaces
- namespace: {{ .Values.Id }}
interval: 1m0s
values:
fullnameOverride: postgres
diff --git a/core/installer/values-tmpl/pihole.yaml b/core/installer/values-tmpl/pihole.yaml
index 2e38278..ad34321 100644
--- a/core/installer/values-tmpl/pihole.yaml
+++ b/core/installer/values-tmpl/pihole.yaml
@@ -1,9 +1,32 @@
apiVersion: helm.toolkit.fluxcd.io/v2beta1
kind: HelmRelease
metadata:
+ name: namespaces-pihole
+ namespace: {{ .Global.Id }}
+spec:
+ chart:
+ spec:
+ chart: charts/namespaces
+ sourceRef:
+ kind: GitRepository
+ name: pcloud
+ namespace: {{ .Global.Id }}
+ interval: 1m0s
+ values:
+ pcloudInstanceId: {{ .Global.Id }}
+ namespacePrefix: {{ .Global.NamespacePrefix }}
+ namespaces:
+ - app-pihole
+---
+apiVersion: helm.toolkit.fluxcd.io/v2beta1
+kind: HelmRelease
+metadata:
name: pihole
namespace: {{ .Global.NamespacePrefix }}app-pihole
spec:
+ dependsOn:
+ - name: namespaces-pihole
+ namespace: {{ .Global.Id }}
chart:
spec:
chart: charts/pihole
diff --git a/core/installer/values-tmpl/qbittorrent.yaml b/core/installer/values-tmpl/qbittorrent.yaml
index 0eaf507..57b6e12 100644
--- a/core/installer/values-tmpl/qbittorrent.yaml
+++ b/core/installer/values-tmpl/qbittorrent.yaml
@@ -1,29 +1,49 @@
apiVersion: helm.toolkit.fluxcd.io/v2beta1
kind: HelmRelease
metadata:
- name: qbittorrent
- namespace: {{ .Values.NamespacePrefix }}app-torrent # TODO(giolekva): qbittorrent
+ name: namespaces-qbittorrent
+ namespace: {{ .Global.Id }}
spec:
chart:
spec:
+ chart: charts/namespaces
+ sourceRef:
+ kind: GitRepository
+ name: pcloud
+ namespace: {{ .Global.Id }}
+ interval: 1m0s
+ values:
+ pcloudInstanceId: {{ .Global.Id }}
+ namespacePrefix: {{ .Global.NamespacePrefix }}
+ namespaces:
+ - app-qbittorrent
+---
+apiVersion: helm.toolkit.fluxcd.io/v2beta1
+kind: HelmRelease
+metadata:
+ name: qbittorrent
+ namespace: {{ .Global.NamespacePrefix }}app-qbittorrent
+spec:
+ dependsOn:
+ - name: namespaces-qbittorrent
+ namespace: {{ .Global.Id }}
+ chart:
+ spec:
chart: charts/qbittorrent
sourceRef:
kind: GitRepository
name: pcloud
- namespace: {{ .Values.Id }}
- dependsOn:
- - name: namespaces
- namespace: {{ .Values.Id }}
+ namespace: {{ .Global.Id }}
interval: 1m0s
values:
- pcloudInstanceId: {{ .Values.Id }}
+ pcloudInstanceId: {{ .Global.Id }}
image:
repository: lscr.io/linuxserver/qbittorrent
- tag: latest
+ tag: 4.5.3
pullPolicy: IfNotPresent
ingress:
- className: {{ .Values.Id }}-ingress-private
- domain: torrent.p.{{ .Values.Domain }}
+ className: {{ .Global.Id }}-ingress-private
+ domain: {{ .Values.Subdomain }}.{{ .Global.PrivateDomain }}
webui:
port: 8080
bittorrent:
diff --git a/core/installer/values-tmpl/rpuppy.yaml b/core/installer/values-tmpl/rpuppy.yaml
index e6014a3..4c2efda 100644
--- a/core/installer/values-tmpl/rpuppy.yaml
+++ b/core/installer/values-tmpl/rpuppy.yaml
@@ -1,9 +1,32 @@
apiVersion: helm.toolkit.fluxcd.io/v2beta1
kind: HelmRelease
metadata:
+ name: namespaces-rpuppy
+ namespace: {{ .Global.Id }}
+spec:
+ chart:
+ spec:
+ chart: charts/namespaces
+ sourceRef:
+ kind: GitRepository
+ name: pcloud
+ namespace: {{ .Global.Id }}
+ interval: 1m0s
+ values:
+ pcloudInstanceId: {{ .Global.Id }}
+ namespacePrefix: {{ .Global.NamespacePrefix }}
+ namespaces:
+ - app-rpuppy
+---
+apiVersion: helm.toolkit.fluxcd.io/v2beta1
+kind: HelmRelease
+metadata:
name: rpuppy
namespace: {{ .Global.NamespacePrefix }}app-rpuppy
spec:
+ dependsOn:
+ - name: namespaces-rpuppy
+ namespace: {{ .Global.Id }}
chart:
spec:
chart: charts/rpuppy
diff --git a/core/installer/values-tmpl/vaultwarden.yaml b/core/installer/values-tmpl/vaultwarden.yaml
index 3de6b75..301b122 100644
--- a/core/installer/values-tmpl/vaultwarden.yaml
+++ b/core/installer/values-tmpl/vaultwarden.yaml
@@ -1,9 +1,32 @@
apiVersion: helm.toolkit.fluxcd.io/v2beta1
kind: HelmRelease
metadata:
+ name: namespaces-vaultwarden
+ namespace: {{ .Global.Id }}
+spec:
+ chart:
+ spec:
+ chart: charts/namespaces
+ sourceRef:
+ kind: GitRepository
+ name: pcloud
+ namespace: {{ .Global.Id }}
+ interval: 1m0s
+ values:
+ pcloudInstanceId: {{ .Global.Id }}
+ namespacePrefix: {{ .Global.NamespacePrefix }}
+ namespaces:
+ - app-vaultwarden
+---
+apiVersion: helm.toolkit.fluxcd.io/v2beta1
+kind: HelmRelease
+metadata:
name: vaultwarden
namespace: {{ .Global.NamespacePrefix }}app-vaultwarden
spec:
+ dependsOn:
+ - name: namespaces-vaultwarden
+ namespace: {{ .Global.Id }}
chart:
spec:
chart: charts/vaultwarden
diff --git a/core/installer/values-tmpl/vpn-mesh-config.yaml b/core/installer/values-tmpl/vpn-mesh-config.yaml
index 20279a4..d42e1c8 100644
--- a/core/installer/values-tmpl/vpn-mesh-config.yaml
+++ b/core/installer/values-tmpl/vpn-mesh-config.yaml
@@ -11,9 +11,6 @@
kind: GitRepository
name: pcloud
namespace: {{ .Values.Id }}
- dependsOn:
- - name: namespaces
- namespace: {{ .Values.Id }}
interval: 1m0s
values:
domain: {{ .Values.Domain }}