Add terraform-ipam CI Vault access
Grant the terraform-ipam Woodpecker pipeline the same Vault footprint as the other terraform-* runners, plus a KV read for its provider tokens: - k8s auth role woodpecker_terraform_ipam (SA terraform-ipam / woodpecker ns) - consul secret backend role + ACL policy writing infra/terraform/ipam/* - consul creds read policy - kv read policy for kv/service/terraform/ipam (netbox_token + kea_token) Claude-Session: https://claude.ai/code/session_01JUoARVdmhxKQHyyyp1pxeT
This commit is contained in:
@@ -0,0 +1,7 @@
|
||||
bound_service_account_names:
|
||||
- terraform-ipam
|
||||
bound_service_account_namespaces:
|
||||
- woodpecker
|
||||
token_ttl: 600
|
||||
token_max_ttl: 600
|
||||
audience: https://kubernetes.default.svc.cluster.local
|
||||
@@ -0,0 +1,5 @@
|
||||
consul_roles:
|
||||
- terraform-ipam
|
||||
ttl: 120
|
||||
max_ttl: 300
|
||||
datacenters: []
|
||||
@@ -0,0 +1,11 @@
|
||||
---
|
||||
rules:
|
||||
- path: "consul_root/au/syd1/creds/terraform-ipam"
|
||||
capabilities:
|
||||
- read
|
||||
|
||||
auth:
|
||||
approle:
|
||||
- terraform_ipam
|
||||
k8s/au/syd1:
|
||||
- woodpecker_terraform_ipam
|
||||
@@ -0,0 +1,13 @@
|
||||
# Allow the Terraform IPAM runner to read the NetBox + KeaAPI tokens
|
||||
# (netbox_token / kea_token fields) used by the netbox and kea providers.
|
||||
---
|
||||
rules:
|
||||
- path: "kv/data/service/terraform/ipam"
|
||||
capabilities:
|
||||
- read
|
||||
|
||||
auth:
|
||||
approle:
|
||||
- terraform_ipam
|
||||
k8s/au/syd1:
|
||||
- woodpecker_terraform_ipam
|
||||
@@ -0,0 +1,7 @@
|
||||
key_prefix "infra/terraform/ipam/" {
|
||||
policy = "write"
|
||||
}
|
||||
|
||||
session_prefix "" {
|
||||
policy = "write"
|
||||
}
|
||||
Reference in New Issue
Block a user