Automated Manifest Update (#2798)

This PR contains newly rendered Kubernetes manifests automatically generated by the CI workflow.

Reviewed-on: #2798
Co-authored-by: gitea-bot <gitea-bot@alexlebens.net>
Co-committed-by: gitea-bot <gitea-bot@alexlebens.net>
This commit was merged in pull request #2798.
This commit is contained in:
2025-12-23 23:57:54 +00:00
committed by Alex Lebens
parent fe4d95e4dc
commit 5a771a64ee
16 changed files with 195 additions and 101 deletions

View File

@@ -1,12 +1,13 @@
apiVersion: gateway.networking.k8s.io/v1 apiVersion: gateway.networking.k8s.io/v1
kind: HTTPRoute kind: HTTPRoute
metadata: metadata:
name: http-route-huntarr name: huntarr
namespace: huntarr
labels: labels:
app.kubernetes.io/name: http-route-huntarr
app.kubernetes.io/instance: huntarr app.kubernetes.io/instance: huntarr
app.kubernetes.io/part-of: huntarr app.kubernetes.io/managed-by: Helm
app.kubernetes.io/name: huntarr
helm.sh/chart: huntarr-4.5.0
namespace: huntarr
spec: spec:
parentRefs: parentRefs:
- group: gateway.networking.k8s.io - group: gateway.networking.k8s.io
@@ -14,15 +15,16 @@ spec:
name: traefik-gateway name: traefik-gateway
namespace: traefik namespace: traefik
hostnames: hostnames:
- huntarr.alexlebens.net - "huntarr.alexlebens.net"
rules: rules:
- matches: - backendRefs:
- group: ""
kind: Service
name: huntarr
namespace: huntarr
port: 80
weight: 100
matches:
- path: - path:
type: PathPrefix type: PathPrefix
value: / value: /
backendRefs:
- group: ''
kind: Service
name: huntarr
port: 80
weight: 100

View File

@@ -4,11 +4,11 @@ metadata:
name: immich-postgresql-18-cluster name: immich-postgresql-18-cluster
namespace: immich namespace: immich
labels: labels:
helm.sh/chart: postgres-18-cluster-7.1.4 helm.sh/chart: postgres-18-cluster-7.4.3
app.kubernetes.io/name: immich-postgresql-18 app.kubernetes.io/name: immich-postgresql-18
app.kubernetes.io/instance: immich app.kubernetes.io/instance: immich
app.kubernetes.io/part-of: immich app.kubernetes.io/part-of: immich
app.kubernetes.io/version: "7.1.4" app.kubernetes.io/version: "7.4.3"
app.kubernetes.io/managed-by: Helm app.kubernetes.io/managed-by: Helm
spec: spec:
instances: 3 instances: 3

View File

@@ -0,0 +1,39 @@
apiVersion: external-secrets.io/v1
kind: ExternalSecret
metadata:
name: immich-postgresql-18-backup-garage-local-secret
namespace: immich
labels:
helm.sh/chart: postgres-18-cluster-7.4.3
app.kubernetes.io/name: immich-postgresql-18
app.kubernetes.io/instance: immich
app.kubernetes.io/part-of: immich
app.kubernetes.io/version: "7.4.3"
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/name: immich-postgresql-18-backup-garage-local-secret
spec:
secretStoreRef:
kind: ClusterSecretStore
name: vault
data:
- secretKey: ACCESS_REGION
remoteRef:
conversionStrategy: Default
decodingStrategy: None
key: /garage/home-infra/postgres-backups
metadataPolicy: None
property: ACCESS_REGION
- secretKey: ACCESS_KEY_ID
remoteRef:
conversionStrategy: Default
decodingStrategy: None
key: /garage/home-infra/postgres-backups
metadataPolicy: None
property: ACCESS_KEY_ID
- secretKey: ACCESS_SECRET_KEY
remoteRef:
conversionStrategy: Default
decodingStrategy: None
key: /garage/home-infra/postgres-backups
metadataPolicy: None
property: ACCESS_SECRET_KEY

View File

@@ -1,28 +0,0 @@
apiVersion: external-secrets.io/v1
kind: ExternalSecret
metadata:
name: immich-postgresql-18-cluster-backup-secret
namespace: immich
labels:
app.kubernetes.io/name: immich-postgresql-18-cluster-backup-secret
app.kubernetes.io/instance: immich
app.kubernetes.io/part-of: immich
spec:
secretStoreRef:
kind: ClusterSecretStore
name: vault
data:
- secretKey: ACCESS_KEY_ID
remoteRef:
conversionStrategy: Default
decodingStrategy: None
key: /digital-ocean/home-infra/postgres-backups
metadataPolicy: None
property: access
- secretKey: ACCESS_SECRET_KEY
remoteRef:
conversionStrategy: Default
decodingStrategy: None
key: /digital-ocean/home-infra/postgres-backups
metadataPolicy: None
property: secret

View File

@@ -1,17 +1,28 @@
apiVersion: external-secrets.io/v1 apiVersion: external-secrets.io/v1
kind: ExternalSecret kind: ExternalSecret
metadata: metadata:
name: immich-postgresql-18-cluster-backup-secret-garage name: immich-postgresql-18-recovery-secret
namespace: immich namespace: immich
labels: labels:
app.kubernetes.io/name: immich-postgresql-18-cluster-backup-secret-garage helm.sh/chart: postgres-18-cluster-7.4.3
app.kubernetes.io/name: immich-postgresql-18
app.kubernetes.io/instance: immich app.kubernetes.io/instance: immich
app.kubernetes.io/part-of: immich app.kubernetes.io/part-of: immich
app.kubernetes.io/version: "7.4.3"
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/name: immich-postgresql-18-recovery-secret
spec: spec:
secretStoreRef: secretStoreRef:
kind: ClusterSecretStore kind: ClusterSecretStore
name: vault name: vault
data: data:
- secretKey: ACCESS_REGION
remoteRef:
conversionStrategy: Default
decodingStrategy: None
key: /garage/home-infra/postgres-backups
metadataPolicy: None
property: ACCESS_REGION
- secretKey: ACCESS_KEY_ID - secretKey: ACCESS_KEY_ID
remoteRef: remoteRef:
conversionStrategy: Default conversionStrategy: Default
@@ -26,10 +37,3 @@ spec:
key: /garage/home-infra/postgres-backups key: /garage/home-infra/postgres-backups
metadataPolicy: None metadataPolicy: None
property: ACCESS_SECRET_KEY property: ACCESS_SECRET_KEY
- secretKey: ACCESS_REGION
remoteRef:
conversionStrategy: Default
decodingStrategy: None
key: /garage/home-infra/postgres-backups
metadataPolicy: None
property: ACCESS_REGION

View File

@@ -1,12 +1,13 @@
apiVersion: gateway.networking.k8s.io/v1 apiVersion: gateway.networking.k8s.io/v1
kind: HTTPRoute kind: HTTPRoute
metadata: metadata:
name: http-route-immich name: immich
namespace: immich
labels: labels:
app.kubernetes.io/name: http-route-immich
app.kubernetes.io/instance: immich app.kubernetes.io/instance: immich
app.kubernetes.io/part-of: immich app.kubernetes.io/managed-by: Helm
app.kubernetes.io/name: immich
helm.sh/chart: immich-4.5.0
namespace: immich
spec: spec:
parentRefs: parentRefs:
- group: gateway.networking.k8s.io - group: gateway.networking.k8s.io
@@ -14,15 +15,16 @@ spec:
name: traefik-gateway name: traefik-gateway
namespace: traefik namespace: traefik
hostnames: hostnames:
- immich.alexlebens.net - "immich.alexlebens.net"
rules: rules:
- matches: - backendRefs:
- group: ""
kind: Service
name: immich
namespace: immich
port: 2283
weight: 100
matches:
- path: - path:
type: PathPrefix type: PathPrefix
value: / value: /
backendRefs:
- group: ''
kind: Service
name: immich
port: 2283
weight: 100

View File

@@ -1,27 +1,28 @@
apiVersion: barmancloud.cnpg.io/v1 apiVersion: barmancloud.cnpg.io/v1
kind: ObjectStore kind: ObjectStore
metadata: metadata:
name: "immich-postgresql-18-garage-local-backup" name: immich-postgresql-18-backup-garage-local
namespace: immich namespace: immich
labels: labels:
helm.sh/chart: postgres-18-cluster-7.1.4 helm.sh/chart: postgres-18-cluster-7.4.3
app.kubernetes.io/name: immich-postgresql-18 app.kubernetes.io/name: immich-postgresql-18
app.kubernetes.io/instance: immich app.kubernetes.io/instance: immich
app.kubernetes.io/part-of: immich app.kubernetes.io/part-of: immich
app.kubernetes.io/version: "7.1.4" app.kubernetes.io/version: "7.4.3"
app.kubernetes.io/managed-by: Helm app.kubernetes.io/managed-by: Helm
app.kubernetes.io/name: immich-postgresql-18-backup-garage-local
spec: spec:
retentionPolicy: 3d retentionPolicy: 7d
configuration: configuration:
destinationPath: s3://postgres-backups/cl01tl/immich/immich-postgresql-18-cluster destinationPath: s3://postgres-backups/cl01tl/immich/immich-postgresql-18-cluster
endpointURL: http://garage-main.garage:3900 endpointURL: http://garage-main.garage:3900
s3Credentials: s3Credentials:
accessKeyId: accessKeyId:
name: immich-postgresql-18-cluster-backup-secret-garage name: immich-postgresql-18-backup-garage-local-secret
key: ACCESS_KEY_ID key: ACCESS_KEY_ID
secretAccessKey: secretAccessKey:
name: immich-postgresql-18-cluster-backup-secret-garage name: immich-postgresql-18-backup-garage-local-secret
key: ACCESS_SECRET_KEY key: ACCESS_SECRET_KEY
region: region:
name: immich-postgresql-18-cluster-backup-secret-garage name: immich-postgresql-18-backup-garage-local-secret
key: ACCESS_REGION key: ACCESS_REGION

View File

@@ -4,12 +4,13 @@ metadata:
name: "immich-postgresql-18-recovery" name: "immich-postgresql-18-recovery"
namespace: immich namespace: immich
labels: labels:
helm.sh/chart: postgres-18-cluster-7.1.4 helm.sh/chart: postgres-18-cluster-7.4.3
app.kubernetes.io/name: immich-postgresql-18 app.kubernetes.io/name: immich-postgresql-18
app.kubernetes.io/instance: immich app.kubernetes.io/instance: immich
app.kubernetes.io/part-of: immich app.kubernetes.io/part-of: immich
app.kubernetes.io/version: "7.1.4" app.kubernetes.io/version: "7.4.3"
app.kubernetes.io/managed-by: Helm app.kubernetes.io/managed-by: Helm
app.kubernetes.io/name: "immich-postgresql-18-recovery"
spec: spec:
configuration: configuration:
destinationPath: s3://postgres-backups/cl01tl/immich/immich-postgresql-18-cluster destinationPath: s3://postgres-backups/cl01tl/immich/immich-postgresql-18-cluster
@@ -22,8 +23,11 @@ spec:
jobs: 1 jobs: 1
s3Credentials: s3Credentials:
accessKeyId: accessKeyId:
name: immich-postgresql-18-cluster-backup-secret-garage name: immich-postgresql-18-recovery-secret
key: ACCESS_KEY_ID key: ACCESS_KEY_ID
secretAccessKey: secretAccessKey:
name: immich-postgresql-18-cluster-backup-secret-garage name: immich-postgresql-18-recovery-secret
key: ACCESS_SECRET_KEY key: ACCESS_SECRET_KEY
region:
name: immich-postgresql-18-recovery-secret
key: ACCESS_REGION

View File

@@ -4,11 +4,11 @@ metadata:
name: immich-postgresql-18-alert-rules name: immich-postgresql-18-alert-rules
namespace: immich namespace: immich
labels: labels:
helm.sh/chart: postgres-18-cluster-7.1.4 helm.sh/chart: postgres-18-cluster-7.4.3
app.kubernetes.io/name: immich-postgresql-18 app.kubernetes.io/name: immich-postgresql-18
app.kubernetes.io/instance: immich app.kubernetes.io/instance: immich
app.kubernetes.io/part-of: immich app.kubernetes.io/part-of: immich
app.kubernetes.io/version: "7.1.4" app.kubernetes.io/version: "7.4.3"
app.kubernetes.io/managed-by: Helm app.kubernetes.io/managed-by: Helm
spec: spec:
groups: groups:

View File

@@ -1,15 +1,16 @@
apiVersion: postgresql.cnpg.io/v1 apiVersion: postgresql.cnpg.io/v1
kind: ScheduledBackup kind: ScheduledBackup
metadata: metadata:
name: "immich-postgresql-18-live-backup-scheduled-backup" name: "immich-postgresql-18-scheduled-backup-live-backup"
namespace: immich namespace: immich
labels: labels:
helm.sh/chart: postgres-18-cluster-7.1.4 helm.sh/chart: postgres-18-cluster-7.4.3
app.kubernetes.io/name: immich-postgresql-18 app.kubernetes.io/name: immich-postgresql-18
app.kubernetes.io/instance: immich app.kubernetes.io/instance: immich
app.kubernetes.io/part-of: immich app.kubernetes.io/part-of: immich
app.kubernetes.io/version: "7.1.4" app.kubernetes.io/version: "7.4.3"
app.kubernetes.io/managed-by: Helm app.kubernetes.io/managed-by: Helm
app.kubernetes.io/name: "immich-postgresql-18-scheduled-backup-live-backup"
spec: spec:
immediate: true immediate: true
suspend: false suspend: false
@@ -21,4 +22,4 @@ spec:
pluginConfiguration: pluginConfiguration:
name: barman-cloud.cloudnative-pg.io name: barman-cloud.cloudnative-pg.io
parameters: parameters:
barmanObjectName: "immich-postgresql-18-garage-local-backup" barmanObjectName: "immich-postgresql-18-backup-garage-local"

View File

@@ -2,22 +2,27 @@ apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor kind: ServiceMonitor
metadata: metadata:
name: immich name: immich
namespace: immich
labels: labels:
app.kubernetes.io/name: immich
app.kubernetes.io/instance: immich app.kubernetes.io/instance: immich
app.kubernetes.io/part-of: immich app.kubernetes.io/managed-by: Helm
app.kubernetes.io/name: immich
helm.sh/chart: immich-4.5.0
namespace: immich
spec: spec:
jobLabel: "immich"
namespaceSelector:
matchNames:
- immich
selector: selector:
matchLabels: matchLabels:
app.kubernetes.io/name: immich
app.kubernetes.io/instance: immich app.kubernetes.io/instance: immich
app.kubernetes.io/name: immich
endpoints: endpoints:
- port: metrics-api - interval: 3m
interval: 3m
scrapeTimeout: 1m
path: /metrics path: /metrics
- port: metrics-ms port: metrics-api
interval: 3m
scrapeTimeout: 1m scrapeTimeout: 1m
- interval: 3m
path: /metrics path: /metrics
port: metrics-ms
scrapeTimeout: 1m

View File

@@ -34,6 +34,18 @@ spec:
hostPID: false hostPID: false
dnsPolicy: ClusterFirst dnsPolicy: ClusterFirst
containers: containers:
- args:
- --jellyfin.address=http://127.0.0.1:8096
- --jellyfin.token=$(TOKEN)
env:
- name: TOKEN
valueFrom:
secretKeyRef:
key: token
name: jellyfin-exporter-secret
image: rebelcore/jellyfin-exporter:v1.3.9
imagePullPolicy: IfNotPresent
name: exporter
- env: - env:
- name: TZ - name: TZ
value: US/Central value: US/Central

View File

@@ -0,0 +1,21 @@
apiVersion: external-secrets.io/v1
kind: ExternalSecret
metadata:
name: jellyfin-exporter-secret
namespace: jellyfin
labels:
app.kubernetes.io/name: jellyfin-exporter-secret
app.kubernetes.io/instance: jellyfin
app.kubernetes.io/part-of: jellyfin
spec:
secretStoreRef:
kind: ClusterSecretStore
name: vault
data:
- secretKey: token
remoteRef:
conversionStrategy: Default
decodingStrategy: None
key: /cl01tl/jellyfin/exporter
metadataPolicy: None
property: token

View File

@@ -1,12 +1,13 @@
apiVersion: gateway.networking.k8s.io/v1 apiVersion: gateway.networking.k8s.io/v1
kind: HTTPRoute kind: HTTPRoute
metadata: metadata:
name: http-route-jellyfin name: jellyfin
namespace: jellyfin
labels: labels:
app.kubernetes.io/name: http-route-jellyfin
app.kubernetes.io/instance: jellyfin app.kubernetes.io/instance: jellyfin
app.kubernetes.io/part-of: jellyfin app.kubernetes.io/managed-by: Helm
app.kubernetes.io/name: jellyfin
helm.sh/chart: jellyfin-4.5.0
namespace: jellyfin
spec: spec:
parentRefs: parentRefs:
- group: gateway.networking.k8s.io - group: gateway.networking.k8s.io
@@ -14,15 +15,16 @@ spec:
name: traefik-gateway name: traefik-gateway
namespace: traefik namespace: traefik
hostnames: hostnames:
- jellyfin.alexlebens.net - "jellyfin.alexlebens.net"
rules: rules:
- matches: - backendRefs:
- group: ""
kind: Service
name: jellyfin
namespace: jellyfin
port: 80
weight: 100
matches:
- path: - path:
type: PathPrefix type: PathPrefix
value: / value: /
backendRefs:
- group: ''
kind: Service
name: jellyfin
port: 80
weight: 100

View File

@@ -16,6 +16,10 @@ spec:
targetPort: 8096 targetPort: 8096
protocol: TCP protocol: TCP
name: http name: http
- port: 9594
targetPort: 9594
protocol: TCP
name: metrics
selector: selector:
app.kubernetes.io/controller: main app.kubernetes.io/controller: main
app.kubernetes.io/instance: jellyfin app.kubernetes.io/instance: jellyfin

View File

@@ -0,0 +1,25 @@
apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
name: jellyfin
labels:
app.kubernetes.io/instance: jellyfin
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/name: jellyfin
helm.sh/chart: jellyfin-4.5.0
namespace: jellyfin
spec:
jobLabel: "jellyfin"
namespaceSelector:
matchNames:
- jellyfin
selector:
matchLabels:
app.kubernetes.io/instance: jellyfin
app.kubernetes.io/name: jellyfin
endpoints:
- interval: 30s
path: /metrics
port: metrics
scheme: http
scrapeTimeout: 15s