diff --git a/applications/immich/immich/immich-statefulset.yaml b/applications/immich/immich/immich-statefulset.yaml index 36d6693..e13a010 100644 --- a/applications/immich/immich/immich-statefulset.yaml +++ b/applications/immich/immich/immich-statefulset.yaml @@ -28,30 +28,9 @@ spec: cpu: "2000m" ports: - containerPort: 2283 - env: - - name: TZ - value: "Europe/Brussels" - - name: DB_HOSTNAME - value: "immich-postgresql.immich.svc.cluster.local" - - name: DB_DATABASE_NAME - valueFrom: - secretKeyRef: - name: immich-secrets - key: db_name - - name: DB_USERNAME - valueFrom: - secretKeyRef: - name: immich-secrets - key: db_user - - name: DB_PASSWORD - valueFrom: - secretKeyRef: - name: immich-secrets - key: db_password - - name: REDIS_HOSTNAME - value: "valkey.immich.svc.cluster.local" - - name: IMMICH_PORT - value: "2283" + envFrom: + - secretRef: + name: immich-app-secrets volumeMounts: - name: photos mountPath: /data diff --git a/applications/immich/immich/infisicalsecret.yaml b/applications/immich/immich/infisicalsecret.yaml new file mode 100644 index 0000000..cab5616 --- /dev/null +++ b/applications/immich/immich/infisicalsecret.yaml @@ -0,0 +1,25 @@ +apiVersion: secrets.infisical.com/v1alpha1 +kind: InfisicalSecret +metadata: + name: immich-app-secrets + namespace: infisical +spec: + hostAPI: https://infisical.jsme.be + resyncInterval: 30 + authentication: + kubernetesAuth: + identityId: "5458def7-7c63-40d2-95da-41c614d0933a" + serviceAccountRef: + name: infisical-auth + namespace: infisical + autoCreateServiceAccountToken: true + secretsScope: + projectSlug: "kubernetes" + envSlug: "prod" + secretsPath: "/immich/immich" + # Non-recursive: keys are already named as the container expects. + recursive: false + managedSecretReference: + secretName: immich-app-secrets + secretNamespace: immich + secretType: Opaque diff --git a/applications/immich/postgres/immich-postgres-statefulset.yaml b/applications/immich/postgres/immich-postgres-statefulset.yaml index 407b1d0..87e8d29 100644 --- a/applications/immich/postgres/immich-postgres-statefulset.yaml +++ b/applications/immich/postgres/immich-postgres-statefulset.yaml @@ -31,24 +31,9 @@ spec: volumeMounts: - name: immich-postgresql-immich mountPath: /var/lib/postgres - env: - - name: POSTGRES_PASSWORD - valueFrom: - secretKeyRef: - name: immich-secrets - key: db_password - - name: POSTGRES_USER - valueFrom: - secretKeyRef: - name: immich-secrets - key: db_user - - name: POSTGRES_DB - valueFrom: - secretKeyRef: - name: immich-secrets - key: db_name - - name: PGDATA - value: /var/lib/postgres/data + envFrom: + - secretRef: + name: immich-postgres-secrets volumes: - name: immich-postgresql-immich persistentVolumeClaim: diff --git a/applications/immich/postgres/infisicalsecret.yaml b/applications/immich/postgres/infisicalsecret.yaml new file mode 100644 index 0000000..c05b55e --- /dev/null +++ b/applications/immich/postgres/infisicalsecret.yaml @@ -0,0 +1,25 @@ +apiVersion: secrets.infisical.com/v1alpha1 +kind: InfisicalSecret +metadata: + name: immich-postgres-secrets + namespace: infisical +spec: + hostAPI: https://infisical.jsme.be + resyncInterval: 30 + authentication: + kubernetesAuth: + identityId: "5458def7-7c63-40d2-95da-41c614d0933a" + serviceAccountRef: + name: infisical-auth + namespace: infisical + autoCreateServiceAccountToken: true + secretsScope: + projectSlug: "kubernetes" + envSlug: "prod" + secretsPath: "/immich/postgres" + # Non-recursive: keys are already named as the container expects. + recursive: false + managedSecretReference: + secretName: immich-postgres-secrets + secretNamespace: immich + secretType: Opaque diff --git a/applications/infisical/Infisical-secrets/immich-infisicalsecret.yaml b/applications/infisical/Infisical-secrets/immich-infisicalsecret.yaml index 1bc3da9..fcf34aa 100644 --- a/applications/infisical/Infisical-secrets/immich-infisicalsecret.yaml +++ b/applications/infisical/Infisical-secrets/immich-infisicalsecret.yaml @@ -17,7 +17,9 @@ spec: projectSlug: "kubernetes" envSlug: "prod" secretsPath: "/immich" - recursive: true + # Root only: /immich holds the SMB mount credentials (username, password) + # consumed by immich-data-smb. Per-container env lives in subfolders. + recursive: false managedSecretReference: secretName: immich-secrets secretNamespace: immich