Skip to content

Commit ad25575

Browse files
Merge pull request #94101 from aravipra/OSDOCS-14805
OSDOCS#14805: adding API section
2 parents 7d73888 + f97c837 commit ad25575

20 files changed

+793
-0
lines changed

_topic_maps/_topic_map.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1263,6 +1263,8 @@ Topics:
12631263
File: external-secrets-operator-monitoring
12641264
- Name: Uninstalling the External Secrets Operator
12651265
File: external-secrets-operator-uninstall
1266+
- Name: External Secrets Operator APIs
1267+
File: external-secrets-operator-api
12661268
- Name: Viewing audit logs
12671269
File: audit-log-view
12681270
- Name: Configuring the audit log policy

modules/eso-bitwarden-secret.adoc

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
// Module included in the following assemblies:
2+
//
3+
// * security/external_secrets_operator/external-secrets-operator-api.adoc
4+
5+
:_mod-docs-content-type: REFERENCE
6+
[id="eso-bitwarden-secret_{context}"]
7+
= bitwardenSecretManagerProvider
8+
9+
The `bitwardenSecretManagerProvider` field enables the bitwarden secrets manager provider and sets up the additional service required to connect to the bitwarden server.
10+
11+
[cols="1,1,1,1,1",options="header"]
12+
|===
13+
| Field
14+
| Type
15+
| Description
16+
| Default
17+
| Validation
18+
19+
| `enabled`
20+
| _string_
21+
| `enabled` field enables the `bitwardenSecretManagerProvider`. you can set this field to `true` or `false`.
22+
| false
23+
| enum: [true false] +
24+
Optional
25+
26+
| `secretRef`
27+
| _SecretReference_
28+
| `SecretRef` specifies the kubernetes secret that contains the TLS key pair for the bitwarden server. If this reference is not provided and `certManagerConfig` field is configured, the issuer defined in `certManagerConfig` generates the required certificate. The secret must use `tls.crt` for certificate, `tls.key` for the private key, and `ca.crt` for CA certificate.
29+
|
30+
| Optional
31+
|===

modules/eso-cert-manager-config.adoc

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
// Module included in the following assemblies:
2+
//
3+
// * security/external_secrets_operator/external-secrets-operator-api.adoc
4+
5+
:_mod-docs-content-type: REFERENCE
6+
[id="eso-cert-manager-config_{context}"]
7+
= certManagerConfig
8+
9+
The `certManagerConfig` field configures the `cert-manager` Operator settings.
10+
11+
[cols="1,1,1,1,1",options="header"]
12+
|===
13+
| Field
14+
| Type
15+
| Description
16+
| Default
17+
| Validation
18+
19+
| `enabled`
20+
| _string_
21+
| `enabled` specifies whether cert-manager must obtain and renew certificates for the webhook server instead of using built-in certificates. Set this field to `true` or `false`.
22+
| false
23+
| enum: [true false] +
24+
Required
25+
26+
| `addInjectorAnnotations`
27+
| _string_
28+
| `addInjectorAnnotations` adds the `cert-manager.io/inject-ca-from` annotation to the webhooks and custom resource definitions (CRDs) to automatically configure the webhook with the `cert-manager` Operator certificate authority (CA). This requires CA Injector to be enabled in `cert-manager` Operator. Set this field to `true` or `false`.
29+
| false
30+
| enum: [true false] +
31+
Optional
32+
33+
| `issuerRef`
34+
| _ObjectReference_
35+
| `issuerRef` contains details of the referenced object used for obtaining certificates. The object must exist in the `external-secrets` namespace unless a cluster-scoped `cert-manager` Operator issuer is used.
36+
|
37+
| Required
38+
39+
| `certificateDuration`
40+
| link:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.31/#duration-v1-meta[_Duration_]
41+
| `certificateDuration` sets the validity period of the webhook certificate.
42+
| 8760h
43+
| Optional
44+
45+
| `certificateRenewBefore`
46+
| link:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.31/#duration-v1-meta[_Duration_]
47+
| `certificateRenewBefore` sets the ahead time to renew the webhook certificate before expiry.
48+
| 30m
49+
| Optional
50+
|===

modules/eso-controller-config.adoc

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
// Module included in the following assemblies:
2+
//
3+
// * security/external_secrets_operator/external-secrets-operator-api.adoc
4+
5+
:_mod-docs-content-type: REFERENCE
6+
[id="eso-controller-config_{context}"]
7+
= controllerConfig
8+
9+
The `controllerConfig` field configures the operator to set the default values for installing `external-secrets` operand.
10+
11+
[cols="1,1,1,1,1",options="header"]
12+
|===
13+
| Field
14+
| Type
15+
| Description
16+
| Default
17+
| Validation
18+
19+
| `namespace`
20+
| _string_
21+
| `namespace` configures the namespace for installing the `external-secrets` operand.
22+
| external-secrets
23+
| Optional
24+
25+
| `labels`
26+
| _object (keys:string, values:string)_
27+
| `labels` field applies labels to all resources created for the `external-secrets` operand deployment.
28+
|
29+
| Optional
30+
|===

modules/eso-controller-status.adoc

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
// Module included in the following assemblies:
2+
//
3+
// * security/external_secrets_operator/external-secrets-operator-api.adoc
4+
5+
:_mod-docs-content-type: REFERENCE
6+
[id="eso-controller-status_{context}"]
7+
= controllerStatus
8+
9+
The `controllerStatus` field contains the observed conditions of the controllers used by the Operator.
10+
11+
[cols="1,1,1,1,1",options="header"]
12+
|===
13+
| Field
14+
| Type
15+
| Description
16+
| Default
17+
| Validation
18+
19+
| `name`
20+
| _string_
21+
| `name` specifies the name of the controller for which the observed condition is recorded.
22+
|
23+
| Required
24+
25+
| `conditions`
26+
| _array_
27+
| `conditions` contains information about the current state of the {external-secrets-operator-short} controllers.
28+
|
29+
|
30+
31+
| `observedGeneration`
32+
| _integer_
33+
| `observedGeneration` represents the `.metadata.generation` on the observed resource.
34+
|
35+
| Minimum: 0
36+
|===
Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
// Module included in the following assemblies:
2+
//
3+
// * security/external_secrets_operator/external-secrets-operator-api.adoc
4+
5+
:_mod-docs-content-type: REFERENCE
6+
[id="eso-external-secrets-config_{context}"]
7+
= externalSecretsConfig
8+
9+
The `externalSecretsConfig` field configures the behavior of `external-secrets` operand.
10+
11+
[cols="1,1,1,1,1",options="header"]
12+
|===
13+
| Field
14+
| Type
15+
| Description
16+
| Default
17+
| Validation
18+
19+
| `logLevel`
20+
| _integer_
21+
| `logLevel` supports a range of values as defined in the link:https://github.com/kubernetes/community/blob/master/contributors/devel/sig-instrumentation/logging.md#what-method-to-use[kubernetes logging guidelines].
22+
| 1
23+
| The maximum range value is 5 +
24+
The minimum range value is 1 +
25+
Optional
26+
27+
| `operatingNamespace`
28+
| _string_
29+
| `operatingNamespace` restricts the `external-secrets` operand operations to the provided namespace. Enabling this field disables `ClusterSecretStore` and `ClusterExternalSecret`.
30+
|
31+
| Optional
32+
33+
| `bitwardenSecretManagerProvider`
34+
| _object_
35+
| `bitwardenSecretManagerProvider` enables the bitwarden secrets manager provider and sets up the additional service required for connecting to the bitwarden server.
36+
|
37+
| Optional
38+
39+
| `webhookConfig`
40+
| _object_
41+
| `webhookConfig` configures webhook specifics of the `external-secrets` operand.
42+
|
43+
|
44+
45+
| `certManagerConfig`
46+
| _object_
47+
| `certManagerConfig` configures `cert-manager` Operator settings that are used to generate certificates for the webhook and `bitwarden-sdk-server` components.
48+
|
49+
|Optional
50+
51+
| `resources`
52+
| link:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.31/#resourcerequirements-v1-core[_ResourceRequirements_]
53+
| `resources` defines the resource requirements. You cannot change the value of this field after setting it initially. For more information, see link:https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/[]
54+
|
55+
| Optional
56+
57+
| `affinity`
58+
| link:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.31/#affinity-v1-core[_Affinity_]
59+
| `affinity` sets the scheduling affinity rules. For more information, see link:https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/[]
60+
|
61+
| Optional
62+
63+
| `tolerations`
64+
| link:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.31/#toleration-v1-core[_Toleration_] _array_
65+
| `tolerations` sets the pod tolerations. For more information, see link:https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/[]
66+
|
67+
| Optional
68+
69+
| `nodeSelector`
70+
| _object (keys:string, values:string)_
71+
| `nodeSelector` defines the scheduling criteria by using node labels. For more information, see link:https://kubernetes.io/docs/concepts/configuration/assign-pod-node/[]
72+
|
73+
| Optional
74+
|===
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
// Module included in the following assemblies:
2+
//
3+
// * security/external_secrets_operator/external-secrets-operator-api.adoc
4+
5+
:_mod-docs-content-type: REFERENCE
6+
[id="eso-external-secrets-list_{context}"]
7+
= externalSecretsList
8+
9+
The `externalSecretsList` object fetches the list of `externalSecrets` objects.
10+
11+
[cols="1,1,1,1,1",options="header"]
12+
|===
13+
| Field
14+
| Type
15+
| Description
16+
| Default
17+
| Validation
18+
19+
| `apiVersion`
20+
| _string_
21+
| The `apiVersion` specifies the version of the schema in use, which is `operator.openshift.io/v1alpha1`
22+
|
23+
|
24+
25+
| `kind`
26+
| _string_
27+
| `kind` specifies the type of the object, which is `externalSecretsList` for this API.
28+
|
29+
|
30+
31+
| `metadata`
32+
| link:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.31/#listmeta-v1-meta[_ListMeta_]
33+
| Refer to Kubernetes API documentation for details about the `metadata` fields.
34+
|
35+
|
36+
37+
| `items`
38+
| _array_
39+
| `Items` contains a list of `externalSecrets` objects.
40+
|
41+
|
42+
|===
Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
// Module included in the following assemblies:
2+
//
3+
// * security/external_secrets_operator/external-secrets-operator-api.adoc
4+
5+
:_mod-docs-content-type: REFERENCE
6+
[id="eso-external-secrets-manager-list_{context}"]
7+
= externalSecretsManagerList
8+
9+
The `externalSecretsManagerList` object fetches the list of `externalSecretsManager` objects.
10+
11+
12+
[cols="1,1,1,1,1",options="header"]
13+
|===
14+
| Field
15+
| Type
16+
| Description
17+
| Default
18+
| Validation
19+
20+
| `apiVersion`
21+
| _string_
22+
| The `apiVersion` specifies the version of the schema in use, which is `operator.openshift.io/v1alpha1`.
23+
|
24+
|
25+
26+
| `kind`
27+
| _string_
28+
| `kind` specifies the type of the object, which is `externalSecretsManagerList` for this API.
29+
|
30+
|
31+
32+
| `metadata`
33+
| link:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.31/#listmeta-v1-meta[_ListMeta_]
34+
| Refer to Kubernetes API documentation for details about the `metadata` fields.
35+
|
36+
|
37+
38+
| `items`
39+
| _array_
40+
| `Items` contains a list of `externalSecretsManager` objects.
41+
|
42+
|
43+
|===
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
// Module included in the following assemblies:
2+
//
3+
// * security/external_secrets_operator/external-secrets-operator-api.adoc
4+
5+
:_mod-docs-content-type: REFERENCE
6+
[id="eso-external-secrets-manager-spec_{context}"]
7+
= externalSecretsManagerSpec
8+
9+
The `externalSecretsManagerSpec` field defines the desired behavior of the `externalSecretsManager` object.
10+
11+
[cols="1,1,1,1,1",options="header"]
12+
|===
13+
| Field
14+
| type
15+
| Description
16+
| Default
17+
| Validation
18+
19+
| `globalConfig`
20+
| _object_
21+
| `globalConfig` configures the behavior of deployments that {external-secrets-operator-short} manages.
22+
|
23+
| Optional
24+
25+
| `feature`
26+
| _array_
27+
| `feature` enables the optional features of the Operator.
28+
|
29+
| Optional
30+
|===
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
// Module included in the following assemblies:
2+
//
3+
// * security/external_secrets_operator/external-secrets-operator-api.adoc
4+
5+
:_mod-docs-content-type: REFERENCE
6+
[id="eso-external-secrets-manager-status_{context}"]
7+
= externalSecretsManagerStatus
8+
9+
The `externalSecretsManagerStatus` field shows the most recently observed status of the `externalSecretsManager` object.
10+
11+
[cols="1,1,1,1,1",options="header"]
12+
|===
13+
| Field
14+
| Type
15+
| Description
16+
| Default
17+
| Validation
18+
19+
| `controllerStatus`
20+
| _array_
21+
| `controllerStatus` holds the observed conditions of the controllers used by the Operator.
22+
|
23+
|
24+
25+
| `lastTransitionTime`
26+
| link:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.32/#time-v1-meta[_Time_]
27+
| `lastTransitionTime` records the most recent time the status of the condition changed.
28+
|
29+
| Format: date-time +
30+
Type: string
31+
|===

0 commit comments

Comments
 (0)