resource "vault_kv_secret_v2" "quay_op" { mount = vault_mount.secret.path name = "zot/quay-op" data_json_wo_version = 1 data_json_wo = jsonencode({ username = "PLACEHOLDER" password = "PLACEHOLDER" }) } resource "vault_policy" "quay_op" { name = "quay-op-writer" policy = <<-EOT path "secret/data/zot/quay-op" { capabilities = ["read"] } EOT } resource "vault_kubernetes_auth_backend_role" "quay_op" { backend = vault_auth_backend.kubernetes.path role_name = "quay-op-writer" bound_service_account_names = ["quay-op-zot-vso"] bound_service_account_namespaces = ["project-delivery"] token_policies = [vault_policy.quay_op.name] token_ttl = 3600 token_max_ttl = 3600 }