Skip to content

Commit 23b1b84

Browse files
Merge pull request #1594 from juliocamarero/docs_include_all_keys
Document the option to includeAllKeys in trust-manager sources
2 parents b7d2692 + 8851c84 commit 23b1b84

File tree

1 file changed

+26
-5
lines changed

1 file changed

+26
-5
lines changed

content/docs/trust/trust-manager/README.md

Lines changed: 26 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,12 @@ spec:
6666
fruit: apple
6767
key: "ca.crt"
6868

69+
# And another Secret source, but this time instead of specifying a key from the Secret data,
70+
# including all certificates from every key
71+
- secret:
72+
name: "my-regional-cas"
73+
includeAllKeys: true
74+
6975
# A ConfigMap in the "trust" namespace; see "Trust Namespace" below for further details
7076
- configMap:
7177
name: "my-org.net"
@@ -77,6 +83,12 @@ spec:
7783
matchLabels:
7884
fruit: apple
7985
key: "ca.crt"
86+
87+
# And another ConfigMap source, but this time instead of specifying a key from the ConfigMap data,
88+
# including all certificates from every key
89+
- secret:
90+
name: "my-org-cas"
91+
includeAllKeys: true
8092

8193
# A manually specified string
8294
- inLine: |
@@ -103,26 +115,35 @@ spec:
103115
linkerd.io/inject: "enabled"
104116
```
105117
118+
All sources and target options are documented in the trust-manager [API reference documentation](./api-reference.md).
119+
120+
#### Sources
121+
106122
`Bundle` resources currently support several source types:
107123

108124
- `configMap` - a `ConfigMap` resource in the trust-manager namespace
109125
- `secret` - a `Secret` resource in the trust-manager namespace
110126
- `inLine` - a manually specified string containing at least one certificate
111127
- `useDefaultCAs` - usually, a bundle of publicly trusted certificates
112128

113-
`ConfigMap` is the default target type, but as of v0.7.0 trust-manager also supports `Secret` resources as targets.
114-
115-
Support for `Secret` targets must be explicitly enabled in the trust-manager controller; see details below under "Enable Secret targets".
129+
Both `ConfigMap` and `Secret`, support specifying a data key (`key`) that contains at least one certificate or use the
130+
`includeAllKeys` option to include all certificates from every key in the resource. The latter is useful in dynamic
131+
environments where key names are only known at runtime. When defining a `ConfigMap` or `Secret` source, the `key` and
132+
`includeAllKeys` fields are mutually exclusive: only one **must** be set, but not both.
116133

117134
Both `ConfigMap` and `Secret` also support specifying label selectors to select multiple resources at once, which is useful in dynamic
118135
environments where the name of the `ConfigMap` or `Secret` is known only at runtime. When adding a source, either of type `ConfigMap` or `Secret`,
119136
the fields `name` and `selector` are mutually exclusive: one **must** be set, but not both.
120137

121-
122-
All sources and target options are documented in the trust-manager [API reference documentation](./api-reference.md).
138+
These features can be combined to, for instance, select all Secrets with a specific label and include every
139+
certificate from each key within those Secrets.
123140

124141
#### Targets
125142

143+
`ConfigMap` is the default target type, but as of v0.7.0 trust-manager also supports `Secret` resources as targets.
144+
145+
Support for `Secret` targets must be explicitly enabled in the trust-manager controller; see details below under "Enable Secret targets".
146+
126147
All `Bundle` targets are written to `ConfigMap`s (and/or `Secret`s) whose name matches that of the
127148
`Bundle`, and every target has a PEM-formatted bundle included.
128149

0 commit comments

Comments
 (0)