diff --git a/kubernetes/main/apps/default/go2rtc/app/helmrelease.yaml b/kubernetes/main/apps/default/go2rtc/app/helmrelease.yaml new file mode 100644 index 000000000..a9abccf1b --- /dev/null +++ b/kubernetes/main/apps/default/go2rtc/app/helmrelease.yaml @@ -0,0 +1,64 @@ +--- +# yaml-language-server: $schema=https://raw.githubusercontent.com/bjw-s/helm-charts/main/charts/other/app-template/schemas/helmrelease-helm-v2beta2.schema.json +apiVersion: helm.toolkit.fluxcd.io/v2 +kind: HelmRelease +metadata: + name: go2rtc +spec: + interval: 2h + chart: + spec: + chart: app-template + version: 3.2.1 + sourceRef: + kind: HelmRepository + name: bjw-s + namespace: flux-system + install: + remediation: + retries: 3 + upgrade: + cleanupOnFail: true + remediation: + retries: 3 + uninstall: + keepHistory: false + values: + controllers: + go2rtc: + containers: + app: + image: + repository: ghcr.io/alexxit/go2rtc + tag: 1.9.3@sha256:aff58d47b5c2802c59e9514d3f58f5c8e935fbf7200de80566eb7dcb6a84358c + probes: + liveness: + enabled: false + readiness: + enabled: false + startup: + enabled: false + service: + app: + controller: go2rtc + type: LoadBalancer + annotations: + external-dns.alpha.kubernetes.io/hostname: go2rtc-streams.18b.haus + io.cilium/lb-ipam-ips: 192.168.40.246 + ports: + webrtc: + port: 8555 + protocol: UDP + rtsp: + port: 554 + api: + port: 1984 + persistence: + config: + name: go2rtc + type: secret + advancedMounts: + main: + main: + - path: /config/go2rtc.yaml + subPath: go2rtc.yaml diff --git a/kubernetes/main/apps/default/go2rtc/app/kustomization.yaml b/kubernetes/main/apps/default/go2rtc/app/kustomization.yaml new file mode 100644 index 000000000..16a6ce304 --- /dev/null +++ b/kubernetes/main/apps/default/go2rtc/app/kustomization.yaml @@ -0,0 +1,7 @@ +--- +# yaml-language-server: $schema=https://json.schemastore.org/kustomization +apiVersion: kustomize.config.k8s.io/v1beta1 +kind: Kustomization +resources: + - ./secret.sops.yaml + - ./helmrelease.yaml diff --git a/kubernetes/main/apps/default/go2rtc/app/secret.sops.yaml b/kubernetes/main/apps/default/go2rtc/app/secret.sops.yaml new file mode 100644 index 000000000..8f398d1f0 --- /dev/null +++ b/kubernetes/main/apps/default/go2rtc/app/secret.sops.yaml @@ -0,0 +1,26 @@ +apiVersion: v1 +kind: Secret +metadata: + name: go2rtc +stringData: + go2rtc.yaml: ENC[AES256_GCM,data:wHr1RjC674vDRyqlGwECMbBIcy6nOlgNIRMUOMdqUv61yKLa+xXJvnWIfJGdCXaw+KbyNH/MIoZqMyH9nWL0aCr34jiC0yhNqv3RvCADProoNNfn7ZWmDpfzJyMX9knfy3r8hcLnGBsWlGNomqLyRMypgs6k4mVND2K3i5C4PRqZqG3OpgAWHn0WxV15+YIzJEvfWpOG1ziZ4I0O23UwC2C5D0i+eFRQ0ig=,iv:e05rB3htNFn8SZ2T2rXBzz4CY0NH7wDcW3jp/sIfOu8=,tag:dSsZW3XADIo2V2ZWVbYtjg==,type:str] +sops: + kms: [] + gcp_kms: [] + azure_kv: [] + hc_vault: [] + age: + - recipient: age1u79ltfzz5k79ddwgv59r76p2532xnaehzz7vggttctudr6gdkvhq33edn6 + enc: | + -----BEGIN AGE ENCRYPTED FILE----- + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSAzMlUwWUs1QUxNckxueVFY + QmRlV3FQWjV4NVNPS3BlTERtdEZLdVZBcml3CkVTeWFzQndmMmVObTR3QlJwNEFs + N3g5OGk2eklYbzVCbUJ4VjV3aUZ2ZjgKLS0tIHRuTlo3bXBzUzRoRi9lVzZXMWlP + c1YxN0hHem1RdjZjMUJ0V3lnN0UwK1kKdPR41xJgvsw88QdSehKZsFAEczdf2pwV + jHeLEhiAYKcgL2OXgC4uzsL/dKiUq+JQ+1I/an8zdr9DHfp+UsZnVg== + -----END AGE ENCRYPTED FILE----- + lastmodified: "2024-06-07T05:06:08Z" + mac: ENC[AES256_GCM,data:P2efka/qEonyZOheoBxBZnb3RPWmW3JSUvCh/YDCJ4n0yfEKOnGmisJx1Zrc4yIBI6jhipY38JqeXTDHQkGFe3vP/4p7B+qM3oTA7PwrO7DCK7inMznsccBGt3yehSKVU/dAWsMq3Mzw0R5PZ8cT5DBfPmauM76JB1naWALcELY=,iv:cGOFjvZgF/7ZFMeN0lgf6xMWJzW0GzFWifk28y5JmJs=,tag:8ZWDGaXVMnTRcnuFZnKKAw==,type:str] + pgp: [] + encrypted_regex: ^(data|stringData)$ + version: 3.8.1 diff --git a/kubernetes/main/apps/default/go2rtc/ks.yaml b/kubernetes/main/apps/default/go2rtc/ks.yaml new file mode 100644 index 000000000..807c27783 --- /dev/null +++ b/kubernetes/main/apps/default/go2rtc/ks.yaml @@ -0,0 +1,21 @@ +--- +# yaml-language-server: $schema=https://kubernetes-schemas.18b.haus/kustomize.toolkit.fluxcd.io/kustomization_v1.json +apiVersion: kustomize.toolkit.fluxcd.io/v1 +kind: Kustomization +metadata: + name: &app go2rtc + namespace: flux-system +spec: + targetNamespace: default + commonMetadata: + labels: + app.kubernetes.io/name: *app + path: ./kubernetes/main/apps/default/go2rtc/app + prune: true + sourceRef: + kind: GitRepository + name: home-kubernetes + wait: false + interval: 2h + retryInterval: 1m + timeout: 5m diff --git a/kubernetes/main/apps/default/kustomization.yaml b/kubernetes/main/apps/default/kustomization.yaml index 9447194c2..ca7e5e378 100644 --- a/kubernetes/main/apps/default/kustomization.yaml +++ b/kubernetes/main/apps/default/kustomization.yaml @@ -7,6 +7,7 @@ resources: - ./external-apps/ks.yaml - ./gitea/ks.yaml - ./github-to-gitea-mirror/ks.yaml + - ./go2rtc/ks.yaml - ./home-assistant/ks.yaml - ./homepage/ks.yaml - ./jellyfin/ks.yaml