[TON-743] Add EKS add-on credential sync resources - #3291
Merged
gh-worker-dd-mergequeue-cf854d[bot] merged 12 commits intoAug 5, 2026
Merged
Conversation
|
🎯 Code Coverage (details) 🔗 Commit SHA: c5ec614 | Docs | Datadog PR Page | Give us feedback! |
zhuminyi
reviewed
Jul 22, 2026
fanny-jiang
marked this pull request as ready for review
August 5, 2026 01:05
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 0e1abc1edd
ℹ️ About Codex in GitHub
Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".
zhuminyi
approved these changes
Aug 5, 2026
gh-worker-dd-mergequeue-cf854d
Bot
deleted the
fanny/TON-723/operator-addon-ascp-credentials-sync
branch
August 5, 2026 16:36
3 tasks
fanny-jiang
added a commit
that referenced
this pull request
Aug 5, 2026
Add EKS add-on lifecycle chart contract Rename managed installation chart values Support managed installation credentials in EKS add-on Add EKS add-on credential sync resources Generalize EKS add-on credential sync Use operator pod for credential sync Rename credential sync template Clarify credential sync values documentation Restore EKS add-on release instructions Merge branch 'main' into fanny/TON-723/operator-addon-ascp-credentials-sync Make synchronized secret name configurable Simplify credential sync configuration (cherry picked from commit 5d82e4a) Co-authored-by: Fanny Jiang <fanny.jiang@datadoghq.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What does this PR do?
Adds opt-in AWS Secrets Manager credential synchronization to the Datadog Operator EKS add-on chart.
When
credentialsSecretSync.apiKeySecretId,credentialsSecretSync.appKeySecretId, or both are configured, the chart rendersSecretProviderClass/datadog-credentials, which synchronizes the configured values to theapi-keyandapp-keykeys inSecret/<kubernetesSecretName>(datadog-secretby default).To have the Operator use this Secret, set its name in
datadog-operator.apiKeyExistingSecretand/ordatadog-operator.appKeyExistingSecret.To use this feature, a pod in the add-on namespace must mount a Secrets Store CSI volume referencing
SecretProviderClass/datadog-credentials. The volume can be mounted to the Operator pod usingdatadog-operator.volumesanddatadog-operator.volumeMounts(see QA example below). A future version of the Datadog Operator chart will provide a dedicated option for enabling this configuration. The pod service account must have an EKS Pod Identity association with an IAM role that can read the configured secrets. The cluster must have the EKS Pod Identity Agent and AWS Secrets Store CSI Driver Provider add-ons installed, with Kubernetes Secret sync enabled.Motivation
Bootstraps Datadog API and application-key credentials from AWS Secrets Manager when installing the Datadog Operator EKS add-on.
Minimum Agent Versions
Describe your test plan
Automated/local validation performed:
datadog-operatordependency.SecretProviderClass/datadog-credentialsand the Operator Deployment can mount its CSI volume.SecretProviderClassPodStatusreportedmounted=true, and SHA-256 comparisons confirmed both synchronized keys matched their Secrets Manager values.git diff --check.QA
On an EKS cluster with a Linux EC2 node, install the prerequisite add-ons and wait for them to become
ACTIVE:In Secrets Manager, create separate API- and App-key secrets as raw plaintext values (not JSON key-value pairs). Use the default
aws/secretsmanagerencryption key. Record both secret ARNs.Create a Pod Identity IAM role using these policies, replacing the secret ARN placeholders:
trust-policy.json:{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Principal": {"Service": "pods.eks.amazonaws.com"}, "Action": ["sts:AssumeRole", "sts:TagSession"], "Condition": {"StringEquals": { "aws:RequestTag/kubernetes-namespace": "datadog-addon-qa", "aws:RequestTag/kubernetes-service-account": "operator-eks-addon-datadog-operator" }} }] }permissions-policy.json:{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": ["secretsmanager:GetSecretValue", "secretsmanager:DescribeSecret"], "Resource": ["<API_KEY_SECRET_ARN>", "<APP_KEY_SECRET_ARN>"] }] }Build the chart locally using
marketplaces/charts/operator-eks-addon/README.md. Install it with values equivalent to:Confirm the pod status reports
mounted=true,datadog-secretcontainsapi-keyandapp-key, and their SHA-256 hashes match the Secrets Manager values without printing them. The final command should reportNotFoundbecause there is no helper Deployment.Also install or render with
credentialsSecretSync: nulland verify thatSecretProviderClass/datadog-credentialsis absent.AWS references: ASCP EKS add-on and EKS Pod Identity roles.
Checklist
bug,enhancement,refactoring,documentation,tooling, and/ordependenciesqa/skip-qalabel