apiVersion: external-secrets.io/v1 kind: ExternalSecret metadata: name: forgejo-secrets spec: refreshInterval: "1h" secretStoreRef: name: vault-external-secrets-store kind: ClusterSecretStore target: name: forgejo-secrets creationPolicy: Owner data: - secretKey: OIDC_CLIENT_ID remoteRef: key: forgejo property: oidc_client_id - secretKey: OIDC_CLIENT_SECRET remoteRef: key: forgejo property: oidc_client_secret - secretKey: SECRET_KEY remoteRef: key: forgejo property: secret_key - secretKey: POSTGRES_USER remoteRef: key: forgejo property: db-user - secretKey: POSTGRES_PASSWORD remoteRef: key: forgejo property: db-pass - secretKey: POSTGRES_DB remoteRef: key: forgejo property: db-name --- apiVersion: external-secrets.io/v1 kind: ExternalSecret metadata: name: forgejo-ssh-keys spec: refreshInterval: "1h" secretStoreRef: name: vault-external-secrets-store kind: ClusterSecretStore target: name: forgejo-ssh-keys creationPolicy: Owner data: - secretKey: ssh_host_ed25519_key remoteRef: key: forgejo property: ed25519_key - secretKey: ssh_host_rsa_key remoteRef: key: forgejo property: rsa_key - secretKey: ssh_host_ecdsa_key remoteRef: key: forgejo property: ecdsa_key --- apiVersion: external-secrets.io/v1 kind: ExternalSecret metadata: name: forgejo-registry-secret spec: refreshInterval: 1h secretStoreRef: kind: ClusterSecretStore name: vault-external-secrets-store target: name: forgejo-registry-secret template: type: kubernetes.io/dockerconfigjson data: .dockerconfigjson: '{"auths":{"{{ .server }}":{"username":"{{ .username }}","password":"{{ .password }}","auth":"{{ printf "%s:%s" .username .password | b64enc }}"}}}' data: - secretKey: username remoteRef: key: forgejo property: registry-user - secretKey: password remoteRef: key: forgejo property: registry-pass - secretKey: server remoteRef: key: forgejo property: registry-server