Skip to content

Commit cd6ff40

Browse files
author
Martin Jackson
committed
Add some documentation on how to add elements to clustergroup
1 parent 1257c2b commit cd6ff40

2 files changed

Lines changed: 53 additions & 0 deletions

File tree

README.md

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,3 +8,24 @@ The main purpose of this collections are to:
88
loading local secrets files into VP secrets stores.
99

1010
2. Help manage imperative and other utility functions of the cluster
11+
12+
## SS CSI workload auth notes
13+
14+
`vault_utils` can read `ssCsiWorkloadAuth` entries from clustergroup values and
15+
create Vault Kubernetes auth roles for hub and spoke workloads.
16+
17+
At the application level (`clusterGroup.applications.<app>`), the relevant
18+
inputs are:
19+
20+
- `ssCsiWorkloadAuth` (list)
21+
- `ssCsiWorkloadAuth[].serviceAccount` (required)
22+
- `ssCsiWorkloadAuth[].namespace` (optional)
23+
- `ssCsiWorkloadAuth[].cluster` (optional)
24+
- `ssCsiWorkloadAuth[].roleSlug` / `role_slug` (optional)
25+
- application `namespace` (optional default for entry namespace)
26+
27+
CA material management for SS CSI is not handled in this collection anymore.
28+
Provide CA distribution using a separate chart or platform mechanism.
29+
30+
For the complete flow and task ordering, see
31+
`secrets-initialization-and-vault-unseal.md`.

roles/vault_utils/README.md

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,38 @@ This role configures four secret paths in vault:
5454
be used with ESO's `PushSecrets` so you can push an existing secret from one namespace, to the vault under this path and
5555
then it can be retrieved by an `ExternalSecret` either in a different namespace *or* from an entirely different cluster.
5656

57+
## SS CSI workload auth
58+
59+
This role can create Vault Kubernetes auth roles from
60+
`clusterGroup.applications.*.ssCsiWorkloadAuth` and
61+
`clusterGroup.managedClusterGroups.*.applications.*.ssCsiWorkloadAuth`.
62+
63+
For each `ssCsiWorkloadAuth` entry:
64+
65+
- required: `serviceAccount`
66+
- optional: `namespace`, `cluster`, `roleSlug` (or `role_slug`)
67+
68+
Application-level `namespace` is used as the default when an entry does not set
69+
`namespace`.
70+
71+
Example:
72+
73+
```yaml
74+
clusterGroup:
75+
applications:
76+
my-app:
77+
namespace: my-app-namespace
78+
ssCsiWorkloadAuth:
79+
- serviceAccount: my-app-sa
80+
cluster: hub
81+
```
82+
83+
SS CSI CA material management is external to this role. Use a separate chart or
84+
platform CA distribution workflow for Vault route trust.
85+
86+
For a detailed end-to-end description of `vault.yml` task order and SS CSI
87+
behavior, see `secrets-initialization-and-vault-unseal.md` in this repository.
88+
5789
## Values secret file format
5890

5991
Currently this role supports two formats: version 1.0 (which is the assumed

0 commit comments

Comments
 (0)