Add kubernetes auth roles for the puppet compilers (#152)
ci/woodpecker/push/apply Pipeline was successful

The certmanager and sshsigner approles are CIDR-bound to the six legacy VM puppet-master IPs, so the HPA-autoscaled k8s compilers cannot log in and any catalog compile needing a cert or a signed host key fails.

- Add k8s auth roles `puppet_certmanager` and `puppet_sshsigner` on `k8s/au/syd1`, bound to the `default` service account in namespace `puppet`
- Attach the existing pki/pki_int certmanager and sshca signing policies to them, keeping the approle token TTLs
- Leave the approle roles and their CIDR bindings untouched

Follow-up ships the scripts into the compiler pods.

Reviewed-on: #152
Co-authored-by: unkin-agent <unkin-agent@unkin.net>
Co-committed-by: unkin-agent <unkin-agent@unkin.net>
This commit was merged in pull request #152.
This commit is contained in:
2026-09-13 22:54:44 +10:00
committed by BenVincent
parent 9e18627567
commit c1e60dad83
6 changed files with 29 additions and 0 deletions
@@ -0,0 +1,11 @@
---
# Kubernetes auth for the puppetserver compilers, which run certmanager
# server-side during catalog compilation. The AppRole equivalent is pinned to
# the legacy VM master IPs and cannot be used from autoscaled compiler pods.
bound_service_account_names:
- default
bound_service_account_namespaces:
- puppet
token_ttl: 30
token_max_ttl: 30
audience: https://kubernetes.default.svc.cluster.local
@@ -0,0 +1,10 @@
---
# Kubernetes auth for the puppetserver compilers, which run sshsignhost
# server-side during catalog compilation.
bound_service_account_names:
- default
bound_service_account_namespaces:
- puppet
token_ttl: 30
token_max_ttl: 30
audience: https://kubernetes.default.svc.cluster.local
+2
View File
@@ -17,3 +17,5 @@ rules:
auth:
approle:
- certmanager
k8s/au/syd1:
- puppet_certmanager
+2
View File
@@ -17,3 +17,5 @@ rules:
auth:
approle:
- certmanager
k8s/au/syd1:
- puppet_certmanager
+2
View File
@@ -9,3 +9,5 @@ rules:
auth:
approle:
- sshsigner
k8s/au/syd1:
- puppet_sshsigner
+2
View File
@@ -9,3 +9,5 @@ rules:
auth:
approle:
- sshsigner
k8s/au/syd1:
- puppet_sshsigner