Skip to content

fix(helm): collector guard migrations for KMS alias, partitions and reuse-values - #68

Merged
tim-thacker-nullify merged 3 commits into
fix/helm-collector-namespace-defaultsfrom
fix/helm-collector-review
Sep 15, 2026
Merged

tim-thacker-nullify merged 3 commits into
fix/helm-collector-namespace-defaultsfrom
fix/helm-collector-review

Conversation

@tim-thacker-nullify

Copy link
Copy Markdown
Member

Claude

#63's guards give no way forward for an alias key ARN, non-IRSA credentials, GovCloud or China role ARNs, or a --reuse-values upgrade from 0.2.0. Stacked on #63.

Do not release #63 or this PR until monorepo PR #12787 is deployed. The configure page shows the customer-uploads KMS alias today, which this chart rejects. #12787 makes admin serve the key ARN.

Merge order: this into #63; #60 (with #65) before #58, #59 and #63. A separate connector PR makes Terraform kms_key_arn validation reject aliases too.

  • F63-1: an alias collector.kms.keyArn still fails, because the IAM Resource needs the key ARN and alias installs were already denied kms:GenerateDataKey.
    • The error now says: use the KMS key ARN from the Nullify configure page; if it shows an alias, contact Nullify.
    • README values table, upgrade notes and troubleshooting say the same.
  • F63-2: the role-arn guard accepts arn:aws, arn:aws-us-gov and arn:aws-cn.
  • F63-2: new serviceAccount.requireRoleArn (default true). Set false for EKS Pod Identity, instance profiles, or kube2iam/kiam.
    • Documented in values, README and the error message.
    • An empty role-arn annotation is no longer rendered.
  • F63-3: the region error and upgrade notes say --reuse-values from 0.2.0 carries us-east-1. Use --reset-then-reuse-values (Helm 3.14+) or set collector.aws.region.
  • Tests: must-fail reuse-values-from-0.2.0.yaml (0.2.0 defaults plus an ap-southeast-2 key); kms-alias.yaml now expects the migration text; ci/eks-no-irsa.yaml and ci/eks-govcloud-role.yaml.

#63's body is also corrected. The old workflow's lint never gated its release (F60-1 is the real hazard). The namespace hook did succeed on an absent namespace; the Job's unpullable bitnami/kubectl:latest and exit 0 were the defect.

Nothing rendered locally. #58's workflow has no pull_request trigger, so this branch's CI runs on a throwaway draft that merges it onto #65 (linked in a comment).

🤖 Generated with Claude Code

tim-thacker-nullify and others added 3 commits September 15, 2026 02:15
… errors

- An alias keyArn still fails, now saying to use the key ARN from the
  Nullify configure page and to contact Nullify if the page shows an alias.
- The region mismatch error explains that --reuse-values from 0.2.0 carries
  us-east-1, and to upgrade with --reset-then-reuse-values or set the region.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
…lector role-arn guard

- The EKS role-arn guard accepts arn:aws, arn:aws-us-gov and arn:aws-cn.
- serviceAccount.requireRoleArn (default true) lets EKS Pod Identity,
  instance-profile and kube2iam/kiam installs render without IRSA; an empty
  role-arn annotation is no longer rendered.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
…values upgrades

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@tim-thacker-nullify

Copy link
Copy Markdown
Member Author

Claude

CI for this branch runs on throwaway draft #67 (this branch merged onto #65), because #63's base has no pull_request Helm trigger. #67 is closed once its checks finish.

@tim-thacker-nullify

Copy link
Copy Markdown
Member Author

Claude

Collapsed into #63 at 1740f37 after passing adversarial review; all of this PR's commits are now in #63.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant