Add cert-manager clouddns KV read access for VSO #108

Closed
unkinben wants to merge 1 commits from benvin/certmanager-clouddns-kv into master
Owner

cert-manager needs a Google Cloud DNS service-account key to solve Let's Encrypt DNS-01 challenges for publicly-trusted wildcard certs (unkin.net public DNS is on Google Cloud DNS). VSO syncs that key from Vault KV into the cert-manager namespace.

  • Add k8s auth role cert_manager_clouddns bound to SA cert-manager-clouddns in the cert-manager namespace (audience vault, ttl 600).
  • Add policy granting read on kv/service/kubernetes/au/syd1/cert-manager/clouddns, bound to that role.

The KV value (GCP SA JSON key) is seeded out-of-band, not by terraform.

cert-manager needs a Google Cloud DNS service-account key to solve Let's Encrypt DNS-01 challenges for publicly-trusted wildcard certs (unkin.net public DNS is on Google Cloud DNS). VSO syncs that key from Vault KV into the cert-manager namespace. - Add k8s auth role `cert_manager_clouddns` bound to SA `cert-manager-clouddns` in the `cert-manager` namespace (audience vault, ttl 600). - Add policy granting read on `kv/service/kubernetes/au/syd1/cert-manager/clouddns`, bound to that role. The KV value (GCP SA JSON key) is seeded out-of-band, not by terraform.
unkinben added 1 commit 2026-08-02 17:04:44 +10:00
Add cert-manager clouddns KV read access for VSO
ci/woodpecker/pr/plan Pipeline was successful
ci/woodpecker/pr/pre-commit Pipeline was successful
ea380b9417
cert-manager needs a Google Cloud DNS service-account key to solve
Let's Encrypt DNS-01 challenges for publicly-trusted certs. VSO syncs it
from Vault KV, so the cert-manager namespace needs its own k8s auth role
and a policy granting read on the KV path.

- Add k8s auth role cert_manager_clouddns bound to SA
  cert-manager-clouddns in the cert-manager namespace.
- Add policy granting read on
  kv/service/kubernetes/au/syd1/cert-manager/clouddns, bound to that role.

Claude-Session: https://claude.ai/code/session_01JUoARVdmhxKQHyyyp1pxeT
Author
Owner

Superseded by the RFC2136/TSIG approach: cert-manager will solve DNS-01 against a new bind-external zone (acme.unkin.net) via a delegated CNAME, so no clouddns KV secret and no Vault auth role/policy are needed. Closing.

Superseded by the RFC2136/TSIG approach: cert-manager will solve DNS-01 against a new bind-external zone (acme.unkin.net) via a delegated CNAME, so no clouddns KV secret and no Vault auth role/policy are needed. Closing.
unkinben closed this pull request 2026-08-02 17:22:18 +10:00
All checks were successful
ci/woodpecker/pr/plan Pipeline was successful
Required
Details
ci/woodpecker/pr/pre-commit Pipeline was successful
Required
Details

Pull request closed

Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: unkin/terraform-vault#108