From 0177c73fa9c8a7de868edf773fb328ef2f0a2905 Mon Sep 17 00:00:00 2001 From: Jeffrey Smeets Date: Mon, 24 Aug 2026 00:20:29 +0200 Subject: [PATCH] gitea: migrate to envFrom with per-container InfisicalSecrets Flat CR narrowed to recursive: false; it still serves the SMB mount credentials and the Actions runner token, which the runner Helm chart reads via existingSecret. --- .../gitea/gitea/gitea-statefulset.yaml | 34 ++----------------- applications/gitea/gitea/infisicalsecret.yaml | 25 ++++++++++++++ .../postgres/gitea-postgres-statefulset.yaml | 21 ++---------- .../gitea/postgres/infisicalsecret.yaml | 25 ++++++++++++++ .../gitea-infisicalsecret.yaml | 4 ++- 5 files changed, 59 insertions(+), 50 deletions(-) create mode 100644 applications/gitea/gitea/infisicalsecret.yaml create mode 100644 applications/gitea/postgres/infisicalsecret.yaml diff --git a/applications/gitea/gitea/gitea-statefulset.yaml b/applications/gitea/gitea/gitea-statefulset.yaml index db4a0ce..0e28143 100644 --- a/applications/gitea/gitea/gitea-statefulset.yaml +++ b/applications/gitea/gitea/gitea-statefulset.yaml @@ -31,37 +31,9 @@ spec: - name: data mountPath: /data subPath: Gitea - env: - - name: GITEA__database__HOST - valueFrom: - secretKeyRef: - name: gitea-secrets - key: db_host - - name: GITEA__database__DB_TYPE - valueFrom: - secretKeyRef: - name: gitea-secrets - key: db_type - - name: GITEA__database__NAME - valueFrom: - secretKeyRef: - name: gitea-secrets - key: db_name - - name: GITEA__database__USER - valueFrom: - secretKeyRef: - name: gitea-secrets - key: db_user - - name: GITEA__database__PASSWD - valueFrom: - secretKeyRef: - name: gitea-secrets - key: db_password - - name: USER - valueFrom: - secretKeyRef: - name: gitea-secrets - key: gitea_user + envFrom: + - secretRef: + name: gitea-app-secrets restartPolicy: Always volumes: - name: data diff --git a/applications/gitea/gitea/infisicalsecret.yaml b/applications/gitea/gitea/infisicalsecret.yaml new file mode 100644 index 0000000..1288430 --- /dev/null +++ b/applications/gitea/gitea/infisicalsecret.yaml @@ -0,0 +1,25 @@ +apiVersion: secrets.infisical.com/v1alpha1 +kind: InfisicalSecret +metadata: + name: gitea-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: "/gitea/gitea" + # Non-recursive: keys are already named as the container expects. + recursive: false + managedSecretReference: + secretName: gitea-app-secrets + secretNamespace: gitea + secretType: Opaque diff --git a/applications/gitea/postgres/gitea-postgres-statefulset.yaml b/applications/gitea/postgres/gitea-postgres-statefulset.yaml index 86f45be..8ea63a8 100644 --- a/applications/gitea/postgres/gitea-postgres-statefulset.yaml +++ b/applications/gitea/postgres/gitea-postgres-statefulset.yaml @@ -31,24 +31,9 @@ spec: volumeMounts: - name: gitea-postgresql-database mountPath: /var/lib/postgresql/volumes/pgdata - env: - - name: POSTGRES_PASSWORD - valueFrom: - secretKeyRef: - name: gitea-secrets - key: db_password - - name: POSTGRES_USER - valueFrom: - secretKeyRef: - name: gitea-secrets - key: db_user - - name: POSTGRES_DB - valueFrom: - secretKeyRef: - name: gitea-secrets - key: db_name - - name: PGDATA - value: /var/lib/postgresql/volumes/pgdata/data + envFrom: + - secretRef: + name: gitea-postgres-secrets volumes: - name: gitea-postgresql-database persistentVolumeClaim: diff --git a/applications/gitea/postgres/infisicalsecret.yaml b/applications/gitea/postgres/infisicalsecret.yaml new file mode 100644 index 0000000..f997494 --- /dev/null +++ b/applications/gitea/postgres/infisicalsecret.yaml @@ -0,0 +1,25 @@ +apiVersion: secrets.infisical.com/v1alpha1 +kind: InfisicalSecret +metadata: + name: gitea-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: "/gitea/postgres" + # Non-recursive: keys are already named as the container expects. + recursive: false + managedSecretReference: + secretName: gitea-postgres-secrets + secretNamespace: gitea + secretType: Opaque diff --git a/applications/infisical/Infisical-secrets/gitea-infisicalsecret.yaml b/applications/infisical/Infisical-secrets/gitea-infisicalsecret.yaml index 5fa2bcc..7d3a89b 100644 --- a/applications/infisical/Infisical-secrets/gitea-infisicalsecret.yaml +++ b/applications/infisical/Infisical-secrets/gitea-infisicalsecret.yaml @@ -17,7 +17,9 @@ spec: projectSlug: "kubernetes" envSlug: "prod" secretsPath: "/gitea" - recursive: true + # Root only: /gitea holds the SMB mount credentials and the Actions runner token. + # Per-container env lives in subfolders. + recursive: false managedSecretReference: secretName: gitea-secrets secretNamespace: gitea