Skip to main content
  • Deployment model: On-premises
  • Configuration reference: The external-secrets.io/v1 API.
  • Validation scope: Manifest/schema checks; AWS and EKS identity execution requires validation in your environment.
Use this page to create the qodo-secrets store consumed by the shared Qodo Secret examples. For more information, see Manage Qodo secrets with External Secrets Operator.

Before you begin

Complete the common ESO controller, webhook, CRD, namespace, and permission checks first. For more information, see Before you begin. Prepare your AWS Region, source Secret ARN, an approved IAM role, the ESO controller’s namespace and service account, and access to Secrets Manager and the identity endpoints used by your selected authentication method. The referenced-service-account IRSA option also requires ESO permission to request that account’s token. For EKS Pod Identity, install the EKS Pod Identity Agent where it is not already supplied by your cluster mode. Confirm its node coverage before creating the store. For more information, see Set up the Amazon EKS Pod Identity Agent. These examples use namespace qodo. Select your context and replace the namespace consistently:

1. Prepare the source Secret

Using your approved secret-management process, create qodo-database in AWS Secrets Manager. Its JSON value must contain POSTGRES_PASSWORD with the existing database password. Keep actual values out of Git, Helm values, shell arguments, and chat. Use the correct Region and account for both the source and the store.

2. Configure the AWS identity and store

Reuse your existing approved store when available. Otherwise, have your AWS administrator create an IAM role scoped to the source secrets. For the paths in this page, a read policy starts with:
Replace REGION and ACCOUNT_ID, and narrow the resource list to your actual secret ARNs. If the secrets use a customer-managed KMS key, also grant kms:Decrypt on that key and allow the role in the key policy. Additional features, such as discovering secrets or assuming another role, can require additional permissions. Choose one authentication method:
Configure the role’s OIDC trust for service account system:serviceaccount:qodo:qodo-secrets-reader and the expected STS audience. Replace the example role ARN and Region before applying this file.
aws-secret-store.yaml
If reusing a ClusterSecretStore, set secretStoreRef.kind: ClusterSecretStore and its approved name in the examples below. A namespaced SecretStore must be in the same namespace as the ExternalSecret. For more information, see ESO AWS authentication.

3. Reconcile and verify

Once qodo-secrets reports ready, apply the database ExternalSecret from the shared page. It maps qodo-database.POSTGRES_PASSWORD to qodo-db-admin.POSTGRES_PASSWORD. A ready store alone does not establish that it can read that particular Secret or JSON property. For more information, see Manage Qodo secrets with External Secrets Operator. Verify the ExternalSecret’s ready condition, refresh timestamp, target name, and key names. After source rotation, confirm a new refresh and target update before restarting the affected Qodo consumer. Run the relevant application acceptance check after rollout.

Troubleshoot AWS access

Next steps