apiVersion: external-secrets.io/v1beta1 kind: ExternalSecret metadata: name: gcp-api-key spec: data: - remoteRef: key: ${pallet_name}-${cluster_uuid}-gcp-api-key secretKey: key.json refreshInterval: 1m secretStoreRef: name: gcp-provider kind: ClusterSecretStore target: name: gcp-api-key creationPolicy: Owner --- apiVersion: iam.cnrm.cloud.google.com/v1beta1 kind: IAMPolicyMember metadata: name: essa-${pallet_name}-${cluster_uuid}-gcp-api-key spec: member: serviceAccount:ext-sec-${cluster_hash}@${gcp_project_id}.iam.gserviceaccount.com resourceRef: apiVersion: secretmanager.cnrm.cloud.google.com/v1beta1 kind: SecretManagerSecret external: projects/${gcp_project_id}/secrets/${pallet_name}-${cluster_uuid}-gcp-api-key role: roles/secretmanager.secretAccessor