1
0
mirror of https://github.com/openshift/openshift-docs.git synced 2026-02-05 12:46:18 +01:00

Merge pull request #85980 from openshift/revert-85970-apis-4-18rc0-418

Revert "Add OpenShift 4.18 RC0 APIs"
This commit is contained in:
Jason Βoxman
2024-12-09 10:54:20 -05:00
committed by GitHub
149 changed files with 5303 additions and 24573 deletions

View File

@@ -458,9 +458,6 @@ apiMap:
- kind: NetworkPolicy
group: networking.k8s.io
version: v1
- kind: NodeSlicePool
group: whereabouts.cni.cncf.io
version: v1alpha1
- kind: OverlappingRangeIPReservation
group: whereabouts.cni.cncf.io
version: v1alpha1
@@ -602,21 +599,21 @@ apiMap:
- kind: CatalogSource
group: operators.coreos.com
version: v1alpha1
- kind: ClusterCatalog
group: olm.operatorframework.io
version: v1
- kind: ClusterExtension
group: olm.operatorframework.io
version: v1
# - kind: ClusterCatalog
# group: catalogd.operatorframework.io
# version: v1alpha1
# - kind: ClusterExtension
# group: olm.operatorframework.io
# version: v1alpha1
- kind: ClusterServiceVersion
group: operators.coreos.com
version: v1alpha1
- kind: InstallPlan
group: operators.coreos.com
version: v1alpha1
- kind: OLM
group: operator.openshift.io
version: v1
# - kind: OLM
# group: operator.openshift.io
# version: v1alpha1
- kind: OLMConfig
group: operators.coreos.com
version: v1
@@ -680,9 +677,6 @@ apiMap:
- kind: HostFirmwareSettings
group: metal3.io
version: v1alpha1
- kind: HostUpdatePolicy
group: metal3.io
version: v1alpha1
- kind: Metal3Remediation
group: infrastructure.cluster.x-k8s.io
version: v1beta1

View File

@@ -150,18 +150,10 @@ Type::
|===
| Property | Type | Description
| `fieldSelector`
| `object`
| FieldSelectorAttributes indicates a field limited access. Webhook authors are encouraged to * ensure rawSelector and requirements are not both set * consider the requirements field if set * not try to parse or consider the rawSelector field if set. This is to avoid another CVE-2022-2880 (i.e. getting different systems to agree on how exactly to parse a query is not something we want), see https://www.oxeye.io/resources/golang-parameter-smuggling-attack for more details. For the *SubjectAccessReview endpoints of the kube-apiserver: * If rawSelector is empty and requirements are empty, the request is not limited. * If rawSelector is present and requirements are empty, the rawSelector will be parsed and limited if the parsing succeeds. * If rawSelector is empty and requirements are present, the requirements should be honored * If rawSelector is present and requirements are present, the request is invalid.
| `group`
| `string`
| Group is the API Group of the Resource. "*" means all.
| `labelSelector`
| `object`
| LabelSelectorAttributes indicates a label limited access. Webhook authors are encouraged to * ensure rawSelector and requirements are not both set * consider the requirements field if set * not try to parse or consider the rawSelector field if set. This is to avoid another CVE-2022-2880 (i.e. getting different systems to agree on how exactly to parse a query is not something we want), see https://www.oxeye.io/resources/golang-parameter-smuggling-attack for more details. For the *SubjectAccessReview endpoints of the kube-apiserver: * If rawSelector is empty and requirements are empty, the request is not limited. * If rawSelector is present and requirements are empty, the rawSelector will be parsed and limited if the parsing succeeds. * If rawSelector is empty and requirements are present, the requirements should be honored * If rawSelector is present and requirements are present, the request is invalid.
| `name`
| `string`
| Name is the name of the resource being requested for a "get" or deleted for a "delete". "" (empty) means all.
@@ -186,58 +178,6 @@ Type::
| `string`
| Version is the API Version of the Resource. "*" means all.
|===
=== .spec.resourceAttributes.fieldSelector
Description::
+
--
FieldSelectorAttributes indicates a field limited access. Webhook authors are encouraged to * ensure rawSelector and requirements are not both set * consider the requirements field if set * not try to parse or consider the rawSelector field if set. This is to avoid another CVE-2022-2880 (i.e. getting different systems to agree on how exactly to parse a query is not something we want), see https://www.oxeye.io/resources/golang-parameter-smuggling-attack for more details. For the *SubjectAccessReview endpoints of the kube-apiserver: * If rawSelector is empty and requirements are empty, the request is not limited. * If rawSelector is present and requirements are empty, the rawSelector will be parsed and limited if the parsing succeeds. * If rawSelector is empty and requirements are present, the requirements should be honored * If rawSelector is present and requirements are present, the request is invalid.
--
Type::
`object`
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `rawSelector`
| `string`
| rawSelector is the serialization of a field selector that would be included in a query parameter. Webhook implementations are encouraged to ignore rawSelector. The kube-apiserver's *SubjectAccessReview will parse the rawSelector as long as the requirements are not present.
| `requirements`
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-FieldSelectorRequirement[`array (FieldSelectorRequirement)`]
| requirements is the parsed interpretation of a field selector. All requirements must be met for a resource instance to match the selector. Webhook implementations should handle requirements, but how to handle them is up to the webhook. Since requirements can only limit the request, it is safe to authorize as unlimited request if the requirements are not understood.
|===
=== .spec.resourceAttributes.labelSelector
Description::
+
--
LabelSelectorAttributes indicates a label limited access. Webhook authors are encouraged to * ensure rawSelector and requirements are not both set * consider the requirements field if set * not try to parse or consider the rawSelector field if set. This is to avoid another CVE-2022-2880 (i.e. getting different systems to agree on how exactly to parse a query is not something we want), see https://www.oxeye.io/resources/golang-parameter-smuggling-attack for more details. For the *SubjectAccessReview endpoints of the kube-apiserver: * If rawSelector is empty and requirements are empty, the request is not limited. * If rawSelector is present and requirements are empty, the rawSelector will be parsed and limited if the parsing succeeds. * If rawSelector is empty and requirements are present, the requirements should be honored * If rawSelector is present and requirements are present, the request is invalid.
--
Type::
`object`
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `rawSelector`
| `string`
| rawSelector is the serialization of a field selector that would be included in a query parameter. Webhook implementations are encouraged to ignore rawSelector. The kube-apiserver's *SubjectAccessReview will parse the rawSelector as long as the requirements are not present.
| `requirements`
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-LabelSelectorRequirement[`array (LabelSelectorRequirement)`]
| requirements is the parsed interpretation of a label selector. All requirements must be met for a resource instance to match the selector. Webhook implementations should handle requirements, but how to handle them is up to the webhook. Since requirements can only limit the request, it is safe to authorize as unlimited request if the requirements are not understood.
|===
=== .status
Description::

View File

@@ -117,18 +117,10 @@ Type::
|===
| Property | Type | Description
| `fieldSelector`
| `object`
| FieldSelectorAttributes indicates a field limited access. Webhook authors are encouraged to * ensure rawSelector and requirements are not both set * consider the requirements field if set * not try to parse or consider the rawSelector field if set. This is to avoid another CVE-2022-2880 (i.e. getting different systems to agree on how exactly to parse a query is not something we want), see https://www.oxeye.io/resources/golang-parameter-smuggling-attack for more details. For the *SubjectAccessReview endpoints of the kube-apiserver: * If rawSelector is empty and requirements are empty, the request is not limited. * If rawSelector is present and requirements are empty, the rawSelector will be parsed and limited if the parsing succeeds. * If rawSelector is empty and requirements are present, the requirements should be honored * If rawSelector is present and requirements are present, the request is invalid.
| `group`
| `string`
| Group is the API Group of the Resource. "*" means all.
| `labelSelector`
| `object`
| LabelSelectorAttributes indicates a label limited access. Webhook authors are encouraged to * ensure rawSelector and requirements are not both set * consider the requirements field if set * not try to parse or consider the rawSelector field if set. This is to avoid another CVE-2022-2880 (i.e. getting different systems to agree on how exactly to parse a query is not something we want), see https://www.oxeye.io/resources/golang-parameter-smuggling-attack for more details. For the *SubjectAccessReview endpoints of the kube-apiserver: * If rawSelector is empty and requirements are empty, the request is not limited. * If rawSelector is present and requirements are empty, the rawSelector will be parsed and limited if the parsing succeeds. * If rawSelector is empty and requirements are present, the requirements should be honored * If rawSelector is present and requirements are present, the request is invalid.
| `name`
| `string`
| Name is the name of the resource being requested for a "get" or deleted for a "delete". "" (empty) means all.
@@ -153,58 +145,6 @@ Type::
| `string`
| Version is the API Version of the Resource. "*" means all.
|===
=== .spec.resourceAttributes.fieldSelector
Description::
+
--
FieldSelectorAttributes indicates a field limited access. Webhook authors are encouraged to * ensure rawSelector and requirements are not both set * consider the requirements field if set * not try to parse or consider the rawSelector field if set. This is to avoid another CVE-2022-2880 (i.e. getting different systems to agree on how exactly to parse a query is not something we want), see https://www.oxeye.io/resources/golang-parameter-smuggling-attack for more details. For the *SubjectAccessReview endpoints of the kube-apiserver: * If rawSelector is empty and requirements are empty, the request is not limited. * If rawSelector is present and requirements are empty, the rawSelector will be parsed and limited if the parsing succeeds. * If rawSelector is empty and requirements are present, the requirements should be honored * If rawSelector is present and requirements are present, the request is invalid.
--
Type::
`object`
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `rawSelector`
| `string`
| rawSelector is the serialization of a field selector that would be included in a query parameter. Webhook implementations are encouraged to ignore rawSelector. The kube-apiserver's *SubjectAccessReview will parse the rawSelector as long as the requirements are not present.
| `requirements`
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-FieldSelectorRequirement[`array (FieldSelectorRequirement)`]
| requirements is the parsed interpretation of a field selector. All requirements must be met for a resource instance to match the selector. Webhook implementations should handle requirements, but how to handle them is up to the webhook. Since requirements can only limit the request, it is safe to authorize as unlimited request if the requirements are not understood.
|===
=== .spec.resourceAttributes.labelSelector
Description::
+
--
LabelSelectorAttributes indicates a label limited access. Webhook authors are encouraged to * ensure rawSelector and requirements are not both set * consider the requirements field if set * not try to parse or consider the rawSelector field if set. This is to avoid another CVE-2022-2880 (i.e. getting different systems to agree on how exactly to parse a query is not something we want), see https://www.oxeye.io/resources/golang-parameter-smuggling-attack for more details. For the *SubjectAccessReview endpoints of the kube-apiserver: * If rawSelector is empty and requirements are empty, the request is not limited. * If rawSelector is present and requirements are empty, the rawSelector will be parsed and limited if the parsing succeeds. * If rawSelector is empty and requirements are present, the requirements should be honored * If rawSelector is present and requirements are present, the request is invalid.
--
Type::
`object`
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `rawSelector`
| `string`
| rawSelector is the serialization of a field selector that would be included in a query parameter. Webhook implementations are encouraged to ignore rawSelector. The kube-apiserver's *SubjectAccessReview will parse the rawSelector as long as the requirements are not present.
| `requirements`
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-LabelSelectorRequirement[`array (LabelSelectorRequirement)`]
| requirements is the parsed interpretation of a label selector. All requirements must be met for a resource instance to match the selector. Webhook implementations should handle requirements, but how to handle them is up to the webhook. Since requirements can only limit the request, it is safe to authorize as unlimited request if the requirements are not understood.
|===
=== .status
Description::

View File

@@ -150,18 +150,10 @@ Type::
|===
| Property | Type | Description
| `fieldSelector`
| `object`
| FieldSelectorAttributes indicates a field limited access. Webhook authors are encouraged to * ensure rawSelector and requirements are not both set * consider the requirements field if set * not try to parse or consider the rawSelector field if set. This is to avoid another CVE-2022-2880 (i.e. getting different systems to agree on how exactly to parse a query is not something we want), see https://www.oxeye.io/resources/golang-parameter-smuggling-attack for more details. For the *SubjectAccessReview endpoints of the kube-apiserver: * If rawSelector is empty and requirements are empty, the request is not limited. * If rawSelector is present and requirements are empty, the rawSelector will be parsed and limited if the parsing succeeds. * If rawSelector is empty and requirements are present, the requirements should be honored * If rawSelector is present and requirements are present, the request is invalid.
| `group`
| `string`
| Group is the API Group of the Resource. "*" means all.
| `labelSelector`
| `object`
| LabelSelectorAttributes indicates a label limited access. Webhook authors are encouraged to * ensure rawSelector and requirements are not both set * consider the requirements field if set * not try to parse or consider the rawSelector field if set. This is to avoid another CVE-2022-2880 (i.e. getting different systems to agree on how exactly to parse a query is not something we want), see https://www.oxeye.io/resources/golang-parameter-smuggling-attack for more details. For the *SubjectAccessReview endpoints of the kube-apiserver: * If rawSelector is empty and requirements are empty, the request is not limited. * If rawSelector is present and requirements are empty, the rawSelector will be parsed and limited if the parsing succeeds. * If rawSelector is empty and requirements are present, the requirements should be honored * If rawSelector is present and requirements are present, the request is invalid.
| `name`
| `string`
| Name is the name of the resource being requested for a "get" or deleted for a "delete". "" (empty) means all.
@@ -186,58 +178,6 @@ Type::
| `string`
| Version is the API Version of the Resource. "*" means all.
|===
=== .spec.resourceAttributes.fieldSelector
Description::
+
--
FieldSelectorAttributes indicates a field limited access. Webhook authors are encouraged to * ensure rawSelector and requirements are not both set * consider the requirements field if set * not try to parse or consider the rawSelector field if set. This is to avoid another CVE-2022-2880 (i.e. getting different systems to agree on how exactly to parse a query is not something we want), see https://www.oxeye.io/resources/golang-parameter-smuggling-attack for more details. For the *SubjectAccessReview endpoints of the kube-apiserver: * If rawSelector is empty and requirements are empty, the request is not limited. * If rawSelector is present and requirements are empty, the rawSelector will be parsed and limited if the parsing succeeds. * If rawSelector is empty and requirements are present, the requirements should be honored * If rawSelector is present and requirements are present, the request is invalid.
--
Type::
`object`
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `rawSelector`
| `string`
| rawSelector is the serialization of a field selector that would be included in a query parameter. Webhook implementations are encouraged to ignore rawSelector. The kube-apiserver's *SubjectAccessReview will parse the rawSelector as long as the requirements are not present.
| `requirements`
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-FieldSelectorRequirement[`array (FieldSelectorRequirement)`]
| requirements is the parsed interpretation of a field selector. All requirements must be met for a resource instance to match the selector. Webhook implementations should handle requirements, but how to handle them is up to the webhook. Since requirements can only limit the request, it is safe to authorize as unlimited request if the requirements are not understood.
|===
=== .spec.resourceAttributes.labelSelector
Description::
+
--
LabelSelectorAttributes indicates a label limited access. Webhook authors are encouraged to * ensure rawSelector and requirements are not both set * consider the requirements field if set * not try to parse or consider the rawSelector field if set. This is to avoid another CVE-2022-2880 (i.e. getting different systems to agree on how exactly to parse a query is not something we want), see https://www.oxeye.io/resources/golang-parameter-smuggling-attack for more details. For the *SubjectAccessReview endpoints of the kube-apiserver: * If rawSelector is empty and requirements are empty, the request is not limited. * If rawSelector is present and requirements are empty, the rawSelector will be parsed and limited if the parsing succeeds. * If rawSelector is empty and requirements are present, the requirements should be honored * If rawSelector is present and requirements are present, the request is invalid.
--
Type::
`object`
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `rawSelector`
| `string`
| rawSelector is the serialization of a field selector that would be included in a query parameter. Webhook implementations are encouraged to ignore rawSelector. The kube-apiserver's *SubjectAccessReview will parse the rawSelector as long as the requirements are not present.
| `requirements`
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-LabelSelectorRequirement[`array (LabelSelectorRequirement)`]
| requirements is the parsed interpretation of a label selector. All requirements must be met for a resource instance to match the selector. Webhook implementations should handle requirements, but how to handle them is up to the webhook. Since requirements can only limit the request, it is safe to authorize as unlimited request if the requirements are not understood.
|===
=== .status
Description::

View File

@@ -65,36 +65,15 @@ Type::
| `balanceSimilarNodeGroups`
| `boolean`
| BalanceSimilarNodeGroups enables/disables the
`--balance-similar-node-groups` cluster-autoscaler feature.
This feature will automatically identify node groups with
the same instance type and the same set of labels and try
to keep the respective sizes of those node groups balanced.
| BalanceSimilarNodeGroups enables/disables the `--balance-similar-node-groups` cluster-autoscaler feature. This feature will automatically identify node groups with the same instance type and the same set of labels and try to keep the respective sizes of those node groups balanced.
| `balancingIgnoredLabels`
| `array (string)`
| BalancingIgnoredLabels sets "--balancing-ignore-label <label name>" flag on cluster-autoscaler for each listed label.
This option specifies labels that cluster autoscaler should ignore when considering node group similarity.
For example, if you have nodes with "topology.ebs.csi.aws.com/zone" label, you can add name of this label here
to prevent cluster autoscaler from spliting nodes into different node groups based on its value.
| BalancingIgnoredLabels sets "--balancing-ignore-label <label name>" flag on cluster-autoscaler for each listed label. This option specifies labels that cluster autoscaler should ignore when considering node group similarity. For example, if you have nodes with "topology.ebs.csi.aws.com/zone" label, you can add name of this label here to prevent cluster autoscaler from spliting nodes into different node groups based on its value.
| `expanders`
| `array (string)`
| Sets the type and order of expanders to be used during scale out operations.
This option specifies an ordered list, highest priority first, of expanders that
will be used by the cluster autoscaler to select node groups for expansion
when scaling out.
Expanders instruct the autoscaler on how to choose node groups when scaling out
the cluster. They can be specified in order so that the result from the first expander
is used as the input to the second, and so forth. For example, if set to `[LeastWaste, Random]`
the autoscaler will first evaluate node groups to determine which will have the least
resource waste, if multiple groups are selected the autoscaler will then randomly choose
between those groups to determine the group for scaling.
The following expanders are available:
* LeastWaste - selects the node group that will have the least idle CPU (if tied, unused memory) after scale-up.
* Priority - selects the node group that has the highest priority assigned by the user. For details, please see https://github.com/openshift/kubernetes-autoscaler/blob/master/cluster-autoscaler/expander/priority/readme.md
* Random - selects the node group randomly.
If not specified, the default value is `Random`, available options are: `LeastWaste`, `Priority`, `Random`.
| Sets the type and order of expanders to be used during scale out operations. This option specifies an ordered list, highest priority first, of expanders that will be used by the cluster autoscaler to select node groups for expansion when scaling out. Expanders instruct the autoscaler on how to choose node groups when scaling out the cluster. They can be specified in order so that the result from the first expander is used as the input to the second, and so forth. For example, if set to `[LeastWaste, Random]` the autoscaler will first evaluate node groups to determine which will have the least resource waste, if multiple groups are selected the autoscaler will then randomly choose between those groups to determine the group for scaling. The following expanders are available: * LeastWaste - selects the node group that will have the least idle CPU (if tied, unused memory) after scale-up. * Priority - selects the node group that has the highest priority assigned by the user. For details, please see https://github.com/openshift/kubernetes-autoscaler/blob/master/cluster-autoscaler/expander/priority/readme.md * Random - selects the node group randomly. If not specified, the default value is `Random`, available options are: `LeastWaste`, `Priority`, `Random`.
| `ignoreDaemonsetsUtilization`
| `boolean`
@@ -102,10 +81,8 @@ If not specified, the default value is `Random`, available options are: `LeastWa
| `logVerbosity`
| `integer`
| Sets the autoscaler log level.
Default value is 1, level 4 is recommended for DEBUGGING and level 6 will enable almost everything.
This option has priority over log level set by the `CLUSTER_AUTOSCALER_VERBOSITY` environment variable.
| Sets the autoscaler log level. Default value is 1, level 4 is recommended for DEBUGGING and level 6 will enable almost everything.
This option has priority over log level set by the `CLUSTER_AUTOSCALER_VERBOSITY` environment variable.
| `maxNodeProvisionTime`
| `string`
@@ -117,9 +94,7 @@ This option has priority over log level set by the `CLUSTER_AUTOSCALER_VERBOSITY
| `podPriorityThreshold`
| `integer`
| To allow users to schedule "best-effort" pods, which shouldn't trigger
Cluster Autoscaler actions, but only run when there are spare resources available,
More info: https://github.com/kubernetes/autoscaler/blob/master/cluster-autoscaler/FAQ.md#how-does-cluster-autoscaler-work-with-pod-priority-and-preemption
| To allow users to schedule "best-effort" pods, which shouldn't trigger Cluster Autoscaler actions, but only run when there are spare resources available, More info: https://github.com/kubernetes/autoscaler/blob/master/cluster-autoscaler/FAQ.md#how-does-cluster-autoscaler-work-with-pod-priority-and-preemption
| `resourceLimits`
| `object`
@@ -153,13 +128,11 @@ Type::
| `cores`
| `object`
| Minimum and maximum number of cores in cluster, in the format <min>:<max>.
Cluster autoscaler will not scale the cluster beyond these numbers.
| Minimum and maximum number of cores in cluster, in the format <min>:<max>. Cluster autoscaler will not scale the cluster beyond these numbers.
| `gpus`
| `array`
| Minimum and maximum number of different GPUs in cluster, in the format <gpu_type>:<min>:<max>.
Cluster autoscaler will not scale the cluster beyond these numbers. Can be passed multiple times.
| Minimum and maximum number of different GPUs in cluster, in the format <gpu_type>:<min>:<max>. Cluster autoscaler will not scale the cluster beyond these numbers. Can be passed multiple times.
| `gpus[]`
| `object`
@@ -167,21 +140,18 @@ Cluster autoscaler will not scale the cluster beyond these numbers. Can be passe
| `maxNodesTotal`
| `integer`
| Maximum number of nodes in all node groups.
Cluster autoscaler will not grow the cluster beyond this number.
| Maximum number of nodes in all node groups. Cluster autoscaler will not grow the cluster beyond this number.
| `memory`
| `object`
| Minimum and maximum number of GiB of memory in cluster, in the format <min>:<max>.
Cluster autoscaler will not scale the cluster beyond these numbers.
| Minimum and maximum number of GiB of memory in cluster, in the format <min>:<max>. Cluster autoscaler will not scale the cluster beyond these numbers.
|===
=== .spec.resourceLimits.cores
Description::
+
--
Minimum and maximum number of cores in cluster, in the format <min>:<max>.
Cluster autoscaler will not scale the cluster beyond these numbers.
Minimum and maximum number of cores in cluster, in the format <min>:<max>. Cluster autoscaler will not scale the cluster beyond these numbers.
--
Type::
@@ -210,8 +180,7 @@ Required::
Description::
+
--
Minimum and maximum number of different GPUs in cluster, in the format <gpu_type>:<min>:<max>.
Cluster autoscaler will not scale the cluster beyond these numbers. Can be passed multiple times.
Minimum and maximum number of different GPUs in cluster, in the format <gpu_type>:<min>:<max>. Cluster autoscaler will not scale the cluster beyond these numbers. Can be passed multiple times.
--
Type::
@@ -251,19 +220,14 @@ Required::
| `type`
| `string`
| The type of GPU to associate with the minimum and maximum limits.
This value is used by the Cluster Autoscaler to identify Nodes that will have GPU capacity by searching
for it as a label value on the Node objects. For example, Nodes that carry the label key
`cluster-api/accelerator` with the label value being the same as the Type field will be counted towards
the resource limits by the Cluster Autoscaler.
| The type of GPU to associate with the minimum and maximum limits. This value is used by the Cluster Autoscaler to identify Nodes that will have GPU capacity by searching for it as a label value on the Node objects. For example, Nodes that carry the label key `cluster-api/accelerator` with the label value being the same as the Type field will be counted towards the resource limits by the Cluster Autoscaler.
|===
=== .spec.resourceLimits.memory
Description::
+
--
Minimum and maximum number of GiB of memory in cluster, in the format <min>:<max>.
Cluster autoscaler will not scale the cluster beyond these numbers.
Minimum and maximum number of GiB of memory in cluster, in the format <min>:<max>. Cluster autoscaler will not scale the cluster beyond these numbers.
--
Type::

View File

@@ -102,22 +102,15 @@ Required::
| `apiVersion`
| `string`
| APIVersion defines the versioned schema of this representation of an
object. Servers should convert recognized schemas to the latest internal
value, and may reject unrecognized values. More info:
https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
| APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
| `kind`
| `string`
| Kind is a string value representing the REST resource this object
represents. Servers may infer this from the endpoint the client submits
requests to. Cannot be updated. In CamelCase. More info:
https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
| Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
| `name`
| `string`
| Name specifies a name of an object, e.g. worker-us-east-1a.
Scalable resources are expected to exist under a single namespace.
| Name specifies a name of an object, e.g. worker-us-east-1a. Scalable resources are expected to exist under a single namespace.
|===
=== .status
@@ -164,22 +157,15 @@ Required::
| `apiVersion`
| `string`
| APIVersion defines the versioned schema of this representation of an
object. Servers should convert recognized schemas to the latest internal
value, and may reject unrecognized values. More info:
https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
| APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
| `kind`
| `string`
| Kind is a string value representing the REST resource this object
represents. Servers may infer this from the endpoint the client submits
requests to. Cannot be updated. In CamelCase. More info:
https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
| Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
| `name`
| `string`
| Name specifies a name of an object, e.g. worker-us-east-1a.
Scalable resources are expected to exist under a single namespace.
| Name specifies a name of an object, e.g. worker-us-east-1a. Scalable resources are expected to exist under a single namespace.
|===

View File

@@ -105,12 +105,8 @@ Type::
| `name`
| `string`
| Name of the referent.
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
TODO: Add other useful fields. apiVersion, kind, uid?
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896.
TODO: Add other useful fields. apiVersion, kind, uid?
|===
=== .spec.poolRef

View File

@@ -65,10 +65,6 @@ Required::
|===
| Property | Type | Description
| `clusterName`
| `string`
| ClusterName is the name of the Cluster this object belongs to.
| `poolRef`
| `object`
| PoolRef is a reference to the pool from which an IP address should be created.
@@ -159,12 +155,8 @@ Type::
| `name`
| `string`
| Name of the referent.
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
TODO: Add other useful fields. apiVersion, kind, uid?
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896.
TODO: Add other useful fields. apiVersion, kind, uid?
|===
=== .status.conditions

View File

@@ -11,11 +11,8 @@ toc::[]
Description::
+
--
APIServer holds configuration (like serving certificates, client CA and CORS domains)
shared by all API servers in the system, among them especially kube-apiserver
and openshift-apiserver. The canonical name of an instance is 'cluster'.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
APIServer holds configuration (like serving certificates, client CA and CORS domains) shared by all API servers in the system, among them especially kube-apiserver and openshift-apiserver. The canonical name of an instance is 'cluster'.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -71,23 +68,15 @@ Type::
| `additionalCORSAllowedOrigins`
| `array (string)`
| additionalCORSAllowedOrigins lists additional, user-defined regular expressions describing hosts for which the
API server allows access using the CORS headers. This may be needed to access the API and the integrated OAuth
server from JavaScript applications.
The values are regular expressions that correspond to the Golang regular expression language.
| additionalCORSAllowedOrigins lists additional, user-defined regular expressions describing hosts for which the API server allows access using the CORS headers. This may be needed to access the API and the integrated OAuth server from JavaScript applications. The values are regular expressions that correspond to the Golang regular expression language.
| `audit`
| `object`
| audit specifies the settings for audit configuration to be applied to all OpenShift-provided
API servers in the cluster.
| audit specifies the settings for audit configuration to be applied to all OpenShift-provided API servers in the cluster.
| `clientCA`
| `object`
| clientCA references a ConfigMap containing a certificate bundle for the signers that will be recognized for
incoming client certificates in addition to the operator managed signers. If this is empty, then only operator managed signers are valid.
You usually only have to set this if you have your own PKI you wish to honor client certificates from.
The ConfigMap must exist in the openshift-config namespace and contain the following required fields:
- ConfigMap.Data["ca-bundle.crt"] - CA bundle.
| clientCA references a ConfigMap containing a certificate bundle for the signers that will be recognized for incoming client certificates in addition to the operator managed signers. If this is empty, then only operator managed signers are valid. You usually only have to set this if you have your own PKI you wish to honor client certificates from. The ConfigMap must exist in the openshift-config namespace and contain the following required fields: - ConfigMap.Data["ca-bundle.crt"] - CA bundle.
| `encryption`
| `object`
@@ -95,24 +84,19 @@ The ConfigMap must exist in the openshift-config namespace and contain the follo
| `servingCerts`
| `object`
| servingCert is the TLS cert info for serving secure traffic. If not specified, operator managed certificates
will be used for serving secure traffic.
| servingCert is the TLS cert info for serving secure traffic. If not specified, operator managed certificates will be used for serving secure traffic.
| `tlsSecurityProfile`
| `object`
| tlsSecurityProfile specifies settings for TLS connections for externally exposed servers.
If unset, a default (which may change between releases) is chosen. Note that only Old,
Intermediate and Custom profiles are currently supported, and the maximum available
minTLSVersion is VersionTLS12.
| tlsSecurityProfile specifies settings for TLS connections for externally exposed servers.
If unset, a default (which may change between releases) is chosen. Note that only Old, Intermediate and Custom profiles are currently supported, and the maximum available minTLSVersion is VersionTLS12.
|===
=== .spec.audit
Description::
+
--
audit specifies the settings for audit configuration to be applied to all OpenShift-provided
API servers in the cluster.
audit specifies the settings for audit configuration to be applied to all OpenShift-provided API servers in the cluster.
--
Type::
@@ -127,47 +111,25 @@ Type::
| `customRules`
| `array`
| customRules specify profiles per group. These profile take precedence over the
top-level profile field if they apply. They are evaluation from top to bottom and
the first one that matches, applies.
| customRules specify profiles per group. These profile take precedence over the top-level profile field if they apply. They are evaluation from top to bottom and the first one that matches, applies.
| `customRules[]`
| `object`
| AuditCustomRule describes a custom rule for an audit profile that takes precedence over
the top-level profile.
| AuditCustomRule describes a custom rule for an audit profile that takes precedence over the top-level profile.
| `profile`
| `string`
| profile specifies the name of the desired top-level audit profile to be applied to all requests
sent to any of the OpenShift-provided API servers in the cluster (kube-apiserver,
openshift-apiserver and oauth-apiserver), with the exception of those requests that match
one or more of the customRules.
The following profiles are provided:
- Default: default policy which means MetaData level logging with the exception of events
(not logged at all), oauthaccesstokens and oauthauthorizetokens (both logged at RequestBody
level).
- WriteRequestBodies: like 'Default', but logs request and response HTTP payloads for
write requests (create, update, patch).
- AllRequestBodies: like 'WriteRequestBodies', but also logs request and response
HTTP payloads for read requests (get, list).
- None: no requests are logged at all, not even oauthaccesstokens and oauthauthorizetokens.
Warning: It is not recommended to disable audit logging by using the `None` profile unless you
are fully aware of the risks of not logging data that can be beneficial when troubleshooting issues.
If you disable audit logging and a support situation arises, you might need to enable audit logging
and reproduce the issue in order to troubleshoot properly.
If unset, the 'Default' profile is used as the default.
| profile specifies the name of the desired top-level audit profile to be applied to all requests sent to any of the OpenShift-provided API servers in the cluster (kube-apiserver, openshift-apiserver and oauth-apiserver), with the exception of those requests that match one or more of the customRules.
The following profiles are provided: - Default: default policy which means MetaData level logging with the exception of events (not logged at all), oauthaccesstokens and oauthauthorizetokens (both logged at RequestBody level). - WriteRequestBodies: like 'Default', but logs request and response HTTP payloads for write requests (create, update, patch). - AllRequestBodies: like 'WriteRequestBodies', but also logs request and response HTTP payloads for read requests (get, list). - None: no requests are logged at all, not even oauthaccesstokens and oauthauthorizetokens.
Warning: It is not recommended to disable audit logging by using the `None` profile unless you are fully aware of the risks of not logging data that can be beneficial when troubleshooting issues. If you disable audit logging and a support situation arises, you might need to enable audit logging and reproduce the issue in order to troubleshoot properly.
If unset, the 'Default' profile is used as the default.
|===
=== .spec.audit.customRules
Description::
+
--
customRules specify profiles per group. These profile take precedence over the
top-level profile field if they apply. They are evaluation from top to bottom and
the first one that matches, applies.
customRules specify profiles per group. These profile take precedence over the top-level profile field if they apply. They are evaluation from top to bottom and the first one that matches, applies.
--
Type::
@@ -180,8 +142,7 @@ Type::
Description::
+
--
AuditCustomRule describes a custom rule for an audit profile that takes precedence over
the top-level profile.
AuditCustomRule describes a custom rule for an audit profile that takes precedence over the top-level profile.
--
Type::
@@ -203,29 +164,16 @@ Required::
| `profile`
| `string`
| profile specifies the name of the desired audit policy configuration to be deployed to
all OpenShift-provided API servers in the cluster.
The following profiles are provided:
- Default: the existing default policy.
- WriteRequestBodies: like 'Default', but logs request and response HTTP payloads for
write requests (create, update, patch).
- AllRequestBodies: like 'WriteRequestBodies', but also logs request and response
HTTP payloads for read requests (get, list).
- None: no requests are logged at all, not even oauthaccesstokens and oauthauthorizetokens.
If unset, the 'Default' profile is used as the default.
| profile specifies the name of the desired audit policy configuration to be deployed to all OpenShift-provided API servers in the cluster.
The following profiles are provided: - Default: the existing default policy. - WriteRequestBodies: like 'Default', but logs request and response HTTP payloads for write requests (create, update, patch). - AllRequestBodies: like 'WriteRequestBodies', but also logs request and response HTTP payloads for read requests (get, list). - None: no requests are logged at all, not even oauthaccesstokens and oauthauthorizetokens.
If unset, the 'Default' profile is used as the default.
|===
=== .spec.clientCA
Description::
+
--
clientCA references a ConfigMap containing a certificate bundle for the signers that will be recognized for
incoming client certificates in addition to the operator managed signers. If this is empty, then only operator managed signers are valid.
You usually only have to set this if you have your own PKI you wish to honor client certificates from.
The ConfigMap must exist in the openshift-config namespace and contain the following required fields:
- ConfigMap.Data["ca-bundle.crt"] - CA bundle.
clientCA references a ConfigMap containing a certificate bundle for the signers that will be recognized for incoming client certificates in addition to the operator managed signers. If this is empty, then only operator managed signers are valid. You usually only have to set this if you have your own PKI you wish to honor client certificates from. The ConfigMap must exist in the openshift-config namespace and contain the following required fields: - ConfigMap.Data["ca-bundle.crt"] - CA bundle.
--
Type::
@@ -264,27 +212,16 @@ Type::
| `type`
| `string`
| type defines what encryption type should be used to encrypt resources at the datastore layer.
When this field is unset (i.e. when it is set to the empty string), identity is implied.
The behavior of unset can and will change over time. Even if encryption is enabled by default,
the meaning of unset may change to a different encryption type based on changes in best practices.
When encryption is enabled, all sensitive resources shipped with the platform are encrypted.
This list of sensitive resources can and will change over time. The current authoritative list is:
1. secrets
2. configmaps
3. routes.route.openshift.io
4. oauthaccesstokens.oauth.openshift.io
5. oauthauthorizetokens.oauth.openshift.io
| type defines what encryption type should be used to encrypt resources at the datastore layer. When this field is unset (i.e. when it is set to the empty string), identity is implied. The behavior of unset can and will change over time. Even if encryption is enabled by default, the meaning of unset may change to a different encryption type based on changes in best practices.
When encryption is enabled, all sensitive resources shipped with the platform are encrypted. This list of sensitive resources can and will change over time. The current authoritative list is:
1. secrets 2. configmaps 3. routes.route.openshift.io 4. oauthaccesstokens.oauth.openshift.io 5. oauthauthorizetokens.oauth.openshift.io
|===
=== .spec.servingCerts
Description::
+
--
servingCert is the TLS cert info for serving secure traffic. If not specified, operator managed certificates
will be used for serving secure traffic.
servingCert is the TLS cert info for serving secure traffic. If not specified, operator managed certificates will be used for serving secure traffic.
--
Type::
@@ -299,9 +236,7 @@ Type::
| `namedCertificates`
| `array`
| namedCertificates references secrets containing the TLS cert info for serving secure traffic to specific hostnames.
If no named certificates are provided, or no named certificates match the server name as understood by a client,
the defaultServingCertificate will be used.
| namedCertificates references secrets containing the TLS cert info for serving secure traffic to specific hostnames. If no named certificates are provided, or no named certificates match the server name as understood by a client, the defaultServingCertificate will be used.
| `namedCertificates[]`
| `object`
@@ -312,9 +247,7 @@ the defaultServingCertificate will be used.
Description::
+
--
namedCertificates references secrets containing the TLS cert info for serving secure traffic to specific hostnames.
If no named certificates are provided, or no named certificates match the server name as understood by a client,
the defaultServingCertificate will be used.
namedCertificates references secrets containing the TLS cert info for serving secure traffic to specific hostnames. If no named certificates are provided, or no named certificates match the server name as understood by a client, the defaultServingCertificate will be used.
--
Type::
@@ -342,26 +275,18 @@ Type::
| `names`
| `array (string)`
| names is a optional list of explicit DNS names (leading wildcards allowed) that should use this certificate to
serve secure traffic. If no names are provided, the implicit names will be extracted from the certificates.
Exact names trump over wildcard names. Explicit names defined here trump over extracted implicit names.
| names is a optional list of explicit DNS names (leading wildcards allowed) that should use this certificate to serve secure traffic. If no names are provided, the implicit names will be extracted from the certificates. Exact names trump over wildcard names. Explicit names defined here trump over extracted implicit names.
| `servingCertificate`
| `object`
| servingCertificate references a kubernetes.io/tls type secret containing the TLS cert info for serving secure traffic.
The secret must exist in the openshift-config namespace and contain the following required fields:
- Secret.Data["tls.key"] - TLS private key.
- Secret.Data["tls.crt"] - TLS certificate.
| servingCertificate references a kubernetes.io/tls type secret containing the TLS cert info for serving secure traffic. The secret must exist in the openshift-config namespace and contain the following required fields: - Secret.Data["tls.key"] - TLS private key. - Secret.Data["tls.crt"] - TLS certificate.
|===
=== .spec.servingCerts.namedCertificates[].servingCertificate
Description::
+
--
servingCertificate references a kubernetes.io/tls type secret containing the TLS cert info for serving secure traffic.
The secret must exist in the openshift-config namespace and contain the following required fields:
- Secret.Data["tls.key"] - TLS private key.
- Secret.Data["tls.crt"] - TLS certificate.
servingCertificate references a kubernetes.io/tls type secret containing the TLS cert info for serving secure traffic. The secret must exist in the openshift-config namespace and contain the following required fields: - Secret.Data["tls.key"] - TLS private key. - Secret.Data["tls.crt"] - TLS certificate.
--
Type::
@@ -385,11 +310,8 @@ Required::
Description::
+
--
tlsSecurityProfile specifies settings for TLS connections for externally exposed servers.
If unset, a default (which may change between releases) is chosen. Note that only Old,
Intermediate and Custom profiles are currently supported, and the maximum available
minTLSVersion is VersionTLS12.
tlsSecurityProfile specifies settings for TLS connections for externally exposed servers.
If unset, a default (which may change between releases) is chosen. Note that only Old, Intermediate and Custom profiles are currently supported, and the maximum available minTLSVersion is VersionTLS12.
--
Type::
@@ -404,158 +326,87 @@ Type::
| `custom`
| ``
| custom is a user-defined TLS security profile. Be extremely careful using a custom
profile as invalid configurations can be catastrophic. An example custom profile
looks like this:
ciphers:
- ECDHE-ECDSA-CHACHA20-POLY1305
- ECDHE-RSA-CHACHA20-POLY1305
- ECDHE-RSA-AES128-GCM-SHA256
- ECDHE-ECDSA-AES128-GCM-SHA256
minTLSVersion: VersionTLS11
| custom is a user-defined TLS security profile. Be extremely careful using a custom profile as invalid configurations can be catastrophic. An example custom profile looks like this:
ciphers:
- ECDHE-ECDSA-CHACHA20-POLY1305
- ECDHE-RSA-CHACHA20-POLY1305
- ECDHE-RSA-AES128-GCM-SHA256
- ECDHE-ECDSA-AES128-GCM-SHA256
minTLSVersion: VersionTLS11
| `intermediate`
| ``
| intermediate is a TLS security profile based on:
https://wiki.mozilla.org/Security/Server_Side_TLS#Intermediate_compatibility_.28recommended.29
and looks like this (yaml):
ciphers:
- TLS_AES_128_GCM_SHA256
- TLS_AES_256_GCM_SHA384
- TLS_CHACHA20_POLY1305_SHA256
- ECDHE-ECDSA-AES128-GCM-SHA256
- ECDHE-RSA-AES128-GCM-SHA256
- ECDHE-ECDSA-AES256-GCM-SHA384
- ECDHE-RSA-AES256-GCM-SHA384
- ECDHE-ECDSA-CHACHA20-POLY1305
- ECDHE-RSA-CHACHA20-POLY1305
- DHE-RSA-AES128-GCM-SHA256
- DHE-RSA-AES256-GCM-SHA384
minTLSVersion: VersionTLS12
| intermediate is a TLS security profile based on:
https://wiki.mozilla.org/Security/Server_Side_TLS#Intermediate_compatibility_.28recommended.29
and looks like this (yaml):
ciphers:
- TLS_AES_128_GCM_SHA256
- TLS_AES_256_GCM_SHA384
- TLS_CHACHA20_POLY1305_SHA256
- ECDHE-ECDSA-AES128-GCM-SHA256
- ECDHE-RSA-AES128-GCM-SHA256
- ECDHE-ECDSA-AES256-GCM-SHA384
- ECDHE-RSA-AES256-GCM-SHA384
- ECDHE-ECDSA-CHACHA20-POLY1305
- ECDHE-RSA-CHACHA20-POLY1305
- DHE-RSA-AES128-GCM-SHA256
- DHE-RSA-AES256-GCM-SHA384
minTLSVersion: VersionTLS12
| `modern`
| ``
| modern is a TLS security profile based on:
https://wiki.mozilla.org/Security/Server_Side_TLS#Modern_compatibility
and looks like this (yaml):
ciphers:
- TLS_AES_128_GCM_SHA256
- TLS_AES_256_GCM_SHA384
- TLS_CHACHA20_POLY1305_SHA256
minTLSVersion: VersionTLS13
| modern is a TLS security profile based on:
https://wiki.mozilla.org/Security/Server_Side_TLS#Modern_compatibility
and looks like this (yaml):
ciphers:
- TLS_AES_128_GCM_SHA256
- TLS_AES_256_GCM_SHA384
- TLS_CHACHA20_POLY1305_SHA256
minTLSVersion: VersionTLS13
| `old`
| ``
| old is a TLS security profile based on:
https://wiki.mozilla.org/Security/Server_Side_TLS#Old_backward_compatibility
and looks like this (yaml):
ciphers:
- TLS_AES_128_GCM_SHA256
- TLS_AES_256_GCM_SHA384
- TLS_CHACHA20_POLY1305_SHA256
- ECDHE-ECDSA-AES128-GCM-SHA256
- ECDHE-RSA-AES128-GCM-SHA256
- ECDHE-ECDSA-AES256-GCM-SHA384
- ECDHE-RSA-AES256-GCM-SHA384
- ECDHE-ECDSA-CHACHA20-POLY1305
- ECDHE-RSA-CHACHA20-POLY1305
- DHE-RSA-AES128-GCM-SHA256
- DHE-RSA-AES256-GCM-SHA384
- DHE-RSA-CHACHA20-POLY1305
- ECDHE-ECDSA-AES128-SHA256
- ECDHE-RSA-AES128-SHA256
- ECDHE-ECDSA-AES128-SHA
- ECDHE-RSA-AES128-SHA
- ECDHE-ECDSA-AES256-SHA384
- ECDHE-RSA-AES256-SHA384
- ECDHE-ECDSA-AES256-SHA
- ECDHE-RSA-AES256-SHA
- DHE-RSA-AES128-SHA256
- DHE-RSA-AES256-SHA256
- AES128-GCM-SHA256
- AES256-GCM-SHA384
- AES128-SHA256
- AES256-SHA256
- AES128-SHA
- AES256-SHA
- DES-CBC3-SHA
minTLSVersion: VersionTLS10
| old is a TLS security profile based on:
https://wiki.mozilla.org/Security/Server_Side_TLS#Old_backward_compatibility
and looks like this (yaml):
ciphers:
- TLS_AES_128_GCM_SHA256
- TLS_AES_256_GCM_SHA384
- TLS_CHACHA20_POLY1305_SHA256
- ECDHE-ECDSA-AES128-GCM-SHA256
- ECDHE-RSA-AES128-GCM-SHA256
- ECDHE-ECDSA-AES256-GCM-SHA384
- ECDHE-RSA-AES256-GCM-SHA384
- ECDHE-ECDSA-CHACHA20-POLY1305
- ECDHE-RSA-CHACHA20-POLY1305
- DHE-RSA-AES128-GCM-SHA256
- DHE-RSA-AES256-GCM-SHA384
- DHE-RSA-CHACHA20-POLY1305
- ECDHE-ECDSA-AES128-SHA256
- ECDHE-RSA-AES128-SHA256
- ECDHE-ECDSA-AES128-SHA
- ECDHE-RSA-AES128-SHA
- ECDHE-ECDSA-AES256-SHA384
- ECDHE-RSA-AES256-SHA384
- ECDHE-ECDSA-AES256-SHA
- ECDHE-RSA-AES256-SHA
- DHE-RSA-AES128-SHA256
- DHE-RSA-AES256-SHA256
- AES128-GCM-SHA256
- AES256-GCM-SHA384
- AES128-SHA256
- AES256-SHA256
- AES128-SHA
- AES256-SHA
- DES-CBC3-SHA
minTLSVersion: VersionTLS10
| `type`
| `string`
| type is one of Old, Intermediate, Modern or Custom. Custom provides
the ability to specify individual TLS security profile parameters.
Old, Intermediate and Modern are TLS security profiles based on:
https://wiki.mozilla.org/Security/Server_Side_TLS#Recommended_configurations
The profiles are intent based, so they may change over time as new ciphers are developed and existing ciphers
are found to be insecure. Depending on precisely which ciphers are available to a process, the list may be
reduced.
Note that the Modern profile is currently not supported because it is not
yet well adopted by common software libraries.
| type is one of Old, Intermediate, Modern or Custom. Custom provides the ability to specify individual TLS security profile parameters. Old, Intermediate and Modern are TLS security profiles based on:
https://wiki.mozilla.org/Security/Server_Side_TLS#Recommended_configurations
The profiles are intent based, so they may change over time as new ciphers are developed and existing ciphers are found to be insecure. Depending on precisely which ciphers are available to a process, the list may be reduced.
Note that the Modern profile is currently not supported because it is not yet well adopted by common software libraries.
|===
=== .status

View File

@@ -11,10 +11,8 @@ toc::[]
Description::
+
--
Authentication specifies cluster-wide settings for authentication (like OAuth and
webhook token authenticators). The canonical name of an instance is `cluster`.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
Authentication specifies cluster-wide settings for authentication (like OAuth and webhook token authenticators). The canonical name of an instance is `cluster`.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -70,44 +68,20 @@ Type::
| `oauthMetadata`
| `object`
| oauthMetadata contains the discovery endpoint data for OAuth 2.0
Authorization Server Metadata for an external OAuth server.
This discovery document can be viewed from its served location:
oc get --raw '/.well-known/oauth-authorization-server'
For further details, see the IETF Draft:
https://tools.ietf.org/html/draft-ietf-oauth-discovery-04#section-2
If oauthMetadata.name is non-empty, this value has precedence
over any metadata reference stored in status.
The key "oauthMetadata" is used to locate the data.
If specified and the config map or expected key is not found, no metadata is served.
If the specified metadata is not valid, no metadata is served.
The namespace for this config map is openshift-config.
| oauthMetadata contains the discovery endpoint data for OAuth 2.0 Authorization Server Metadata for an external OAuth server. This discovery document can be viewed from its served location: oc get --raw '/.well-known/oauth-authorization-server' For further details, see the IETF Draft: https://tools.ietf.org/html/draft-ietf-oauth-discovery-04#section-2 If oauthMetadata.name is non-empty, this value has precedence over any metadata reference stored in status. The key "oauthMetadata" is used to locate the data. If specified and the config map or expected key is not found, no metadata is served. If the specified metadata is not valid, no metadata is served. The namespace for this config map is openshift-config.
| `serviceAccountIssuer`
| `string`
| serviceAccountIssuer is the identifier of the bound service account token
issuer.
The default is https://kubernetes.default.svc
WARNING: Updating this field will not result in immediate invalidation of all bound tokens with the
previous issuer value. Instead, the tokens issued by previous service account issuer will continue to
be trusted for a time period chosen by the platform (currently set to 24h).
This time period is subject to change over time.
This allows internal components to transition to use new service account issuer without service distruption.
| serviceAccountIssuer is the identifier of the bound service account token issuer. The default is https://kubernetes.default.svc WARNING: Updating this field will not result in immediate invalidation of all bound tokens with the previous issuer value. Instead, the tokens issued by previous service account issuer will continue to be trusted for a time period chosen by the platform (currently set to 24h). This time period is subject to change over time. This allows internal components to transition to use new service account issuer without service distruption.
| `type`
| `string`
| type identifies the cluster managed, user facing authentication mode in use.
Specifically, it manages the component that responds to login attempts.
The default is IntegratedOAuth.
| type identifies the cluster managed, user facing authentication mode in use. Specifically, it manages the component that responds to login attempts. The default is IntegratedOAuth.
| `webhookTokenAuthenticator`
| `object`
| webhookTokenAuthenticator configures a remote token reviewer.
These remote authentication webhooks can be used to verify bearer tokens
via the tokenreviews.authentication.k8s.io REST API. This is required to
honor bearer tokens that are provisioned by an external authentication service.
Can only be set if "Type" is set to "None".
| webhookTokenAuthenticator configures a remote token reviewer. These remote authentication webhooks can be used to verify bearer tokens via the tokenreviews.authentication.k8s.io REST API. This is required to honor bearer tokens that are provisioned by an external authentication service.
Can only be set if "Type" is set to "None".
| `webhookTokenAuthenticators`
| `array`
@@ -115,26 +89,14 @@ Can only be set if "Type" is set to "None".
| `webhookTokenAuthenticators[]`
| `object`
| deprecatedWebhookTokenAuthenticator holds the necessary configuration options for a remote token authenticator.
It's the same as WebhookTokenAuthenticator but it's missing the 'required' validation on KubeConfig field.
| deprecatedWebhookTokenAuthenticator holds the necessary configuration options for a remote token authenticator. It's the same as WebhookTokenAuthenticator but it's missing the 'required' validation on KubeConfig field.
|===
=== .spec.oauthMetadata
Description::
+
--
oauthMetadata contains the discovery endpoint data for OAuth 2.0
Authorization Server Metadata for an external OAuth server.
This discovery document can be viewed from its served location:
oc get --raw '/.well-known/oauth-authorization-server'
For further details, see the IETF Draft:
https://tools.ietf.org/html/draft-ietf-oauth-discovery-04#section-2
If oauthMetadata.name is non-empty, this value has precedence
over any metadata reference stored in status.
The key "oauthMetadata" is used to locate the data.
If specified and the config map or expected key is not found, no metadata is served.
If the specified metadata is not valid, no metadata is served.
The namespace for this config map is openshift-config.
oauthMetadata contains the discovery endpoint data for OAuth 2.0 Authorization Server Metadata for an external OAuth server. This discovery document can be viewed from its served location: oc get --raw '/.well-known/oauth-authorization-server' For further details, see the IETF Draft: https://tools.ietf.org/html/draft-ietf-oauth-discovery-04#section-2 If oauthMetadata.name is non-empty, this value has precedence over any metadata reference stored in status. The key "oauthMetadata" is used to locate the data. If specified and the config map or expected key is not found, no metadata is served. If the specified metadata is not valid, no metadata is served. The namespace for this config map is openshift-config.
--
Type::
@@ -158,12 +120,8 @@ Required::
Description::
+
--
webhookTokenAuthenticator configures a remote token reviewer.
These remote authentication webhooks can be used to verify bearer tokens
via the tokenreviews.authentication.k8s.io REST API. This is required to
honor bearer tokens that are provisioned by an external authentication service.
Can only be set if "Type" is set to "None".
webhookTokenAuthenticator configures a remote token reviewer. These remote authentication webhooks can be used to verify bearer tokens via the tokenreviews.authentication.k8s.io REST API. This is required to honor bearer tokens that are provisioned by an external authentication service.
Can only be set if "Type" is set to "None".
--
Type::
@@ -180,34 +138,20 @@ Required::
| `kubeConfig`
| `object`
| kubeConfig references a secret that contains kube config file data which
describes how to access the remote webhook service.
The namespace for the referenced secret is openshift-config.
For further details, see:
https://kubernetes.io/docs/reference/access-authn-authz/authentication/#webhook-token-authentication
The key "kubeConfig" is used to locate the data.
If the secret or expected key is not found, the webhook is not honored.
If the specified kube config data is not valid, the webhook is not honored.
| kubeConfig references a secret that contains kube config file data which describes how to access the remote webhook service. The namespace for the referenced secret is openshift-config.
For further details, see:
https://kubernetes.io/docs/reference/access-authn-authz/authentication/#webhook-token-authentication
The key "kubeConfig" is used to locate the data. If the secret or expected key is not found, the webhook is not honored. If the specified kube config data is not valid, the webhook is not honored.
|===
=== .spec.webhookTokenAuthenticator.kubeConfig
Description::
+
--
kubeConfig references a secret that contains kube config file data which
describes how to access the remote webhook service.
The namespace for the referenced secret is openshift-config.
For further details, see:
https://kubernetes.io/docs/reference/access-authn-authz/authentication/#webhook-token-authentication
The key "kubeConfig" is used to locate the data.
If the secret or expected key is not found, the webhook is not honored.
If the specified kube config data is not valid, the webhook is not honored.
kubeConfig references a secret that contains kube config file data which describes how to access the remote webhook service. The namespace for the referenced secret is openshift-config.
For further details, see:
https://kubernetes.io/docs/reference/access-authn-authz/authentication/#webhook-token-authentication
The key "kubeConfig" is used to locate the data. If the secret or expected key is not found, the webhook is not honored. If the specified kube config data is not valid, the webhook is not honored.
--
Type::
@@ -244,8 +188,7 @@ Type::
Description::
+
--
deprecatedWebhookTokenAuthenticator holds the necessary configuration options for a remote token authenticator.
It's the same as WebhookTokenAuthenticator but it's missing the 'required' validation on KubeConfig field.
deprecatedWebhookTokenAuthenticator holds the necessary configuration options for a remote token authenticator. It's the same as WebhookTokenAuthenticator but it's missing the 'required' validation on KubeConfig field.
--
Type::
@@ -260,26 +203,14 @@ Type::
| `kubeConfig`
| `object`
| kubeConfig contains kube config file data which describes how to access the remote webhook service.
For further details, see:
https://kubernetes.io/docs/reference/access-authn-authz/authentication/#webhook-token-authentication
The key "kubeConfig" is used to locate the data.
If the secret or expected key is not found, the webhook is not honored.
If the specified kube config data is not valid, the webhook is not honored.
The namespace for this secret is determined by the point of use.
| kubeConfig contains kube config file data which describes how to access the remote webhook service. For further details, see: https://kubernetes.io/docs/reference/access-authn-authz/authentication/#webhook-token-authentication The key "kubeConfig" is used to locate the data. If the secret or expected key is not found, the webhook is not honored. If the specified kube config data is not valid, the webhook is not honored. The namespace for this secret is determined by the point of use.
|===
=== .spec.webhookTokenAuthenticators[].kubeConfig
Description::
+
--
kubeConfig contains kube config file data which describes how to access the remote webhook service.
For further details, see:
https://kubernetes.io/docs/reference/access-authn-authz/authentication/#webhook-token-authentication
The key "kubeConfig" is used to locate the data.
If the secret or expected key is not found, the webhook is not honored.
If the specified kube config data is not valid, the webhook is not honored.
The namespace for this secret is determined by the point of use.
kubeConfig contains kube config file data which describes how to access the remote webhook service. For further details, see: https://kubernetes.io/docs/reference/access-authn-authz/authentication/#webhook-token-authentication The key "kubeConfig" is used to locate the data. If the secret or expected key is not found, the webhook is not honored. If the specified kube config data is not valid, the webhook is not honored. The namespace for this secret is determined by the point of use.
--
Type::
@@ -318,38 +249,14 @@ Type::
| `integratedOAuthMetadata`
| `object`
| integratedOAuthMetadata contains the discovery endpoint data for OAuth 2.0
Authorization Server Metadata for the in-cluster integrated OAuth server.
This discovery document can be viewed from its served location:
oc get --raw '/.well-known/oauth-authorization-server'
For further details, see the IETF Draft:
https://tools.ietf.org/html/draft-ietf-oauth-discovery-04#section-2
This contains the observed value based on cluster state.
An explicitly set value in spec.oauthMetadata has precedence over this field.
This field has no meaning if authentication spec.type is not set to IntegratedOAuth.
The key "oauthMetadata" is used to locate the data.
If the config map or expected key is not found, no metadata is served.
If the specified metadata is not valid, no metadata is served.
The namespace for this config map is openshift-config-managed.
| integratedOAuthMetadata contains the discovery endpoint data for OAuth 2.0 Authorization Server Metadata for the in-cluster integrated OAuth server. This discovery document can be viewed from its served location: oc get --raw '/.well-known/oauth-authorization-server' For further details, see the IETF Draft: https://tools.ietf.org/html/draft-ietf-oauth-discovery-04#section-2 This contains the observed value based on cluster state. An explicitly set value in spec.oauthMetadata has precedence over this field. This field has no meaning if authentication spec.type is not set to IntegratedOAuth. The key "oauthMetadata" is used to locate the data. If the config map or expected key is not found, no metadata is served. If the specified metadata is not valid, no metadata is served. The namespace for this config map is openshift-config-managed.
|===
=== .status.integratedOAuthMetadata
Description::
+
--
integratedOAuthMetadata contains the discovery endpoint data for OAuth 2.0
Authorization Server Metadata for the in-cluster integrated OAuth server.
This discovery document can be viewed from its served location:
oc get --raw '/.well-known/oauth-authorization-server'
For further details, see the IETF Draft:
https://tools.ietf.org/html/draft-ietf-oauth-discovery-04#section-2
This contains the observed value based on cluster state.
An explicitly set value in spec.oauthMetadata has precedence over this field.
This field has no meaning if authentication spec.type is not set to IntegratedOAuth.
The key "oauthMetadata" is used to locate the data.
If the config map or expected key is not found, no metadata is served.
If the specified metadata is not valid, no metadata is served.
The namespace for this config map is openshift-config-managed.
integratedOAuthMetadata contains the discovery endpoint data for OAuth 2.0 Authorization Server Metadata for the in-cluster integrated OAuth server. This discovery document can be viewed from its served location: oc get --raw '/.well-known/oauth-authorization-server' For further details, see the IETF Draft: https://tools.ietf.org/html/draft-ietf-oauth-discovery-04#section-2 This contains the observed value based on cluster state. An explicitly set value in spec.oauthMetadata has precedence over this field. This field has no meaning if authentication spec.type is not set to IntegratedOAuth. The key "oauthMetadata" is used to locate the data. If the config map or expected key is not found, no metadata is served. If the specified metadata is not valid, no metadata is served. The namespace for this config map is openshift-config-managed.
--
Type::

View File

@@ -11,12 +11,9 @@ toc::[]
Description::
+
--
Build configures the behavior of OpenShift builds for the entire cluster.
This includes default settings that can be overridden in BuildConfig objects, and overrides which are applied to all builds.
The canonical name is "cluster"
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
Build configures the behavior of OpenShift builds for the entire cluster. This includes default settings that can be overridden in BuildConfig objects, and overrides which are applied to all builds.
The canonical name is "cluster"
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -68,12 +65,8 @@ Type::
| `additionalTrustedCA`
| `object`
| AdditionalTrustedCA is a reference to a ConfigMap containing additional CAs that
should be trusted for image pushes and pulls during builds.
The namespace for this config map is openshift-config.
DEPRECATED: Additional CAs for image pull and push should be set on
image.config.openshift.io/cluster instead.
| AdditionalTrustedCA is a reference to a ConfigMap containing additional CAs that should be trusted for image pushes and pulls during builds. The namespace for this config map is openshift-config.
DEPRECATED: Additional CAs for image pull and push should be set on image.config.openshift.io/cluster instead.
| `buildDefaults`
| `object`
@@ -88,12 +81,8 @@ image.config.openshift.io/cluster instead.
Description::
+
--
AdditionalTrustedCA is a reference to a ConfigMap containing additional CAs that
should be trusted for image pushes and pulls during builds.
The namespace for this config map is openshift-config.
DEPRECATED: Additional CAs for image pull and push should be set on
image.config.openshift.io/cluster instead.
AdditionalTrustedCA is a reference to a ConfigMap containing additional CAs that should be trusted for image pushes and pulls during builds. The namespace for this config map is openshift-config.
DEPRECATED: Additional CAs for image pull and push should be set on image.config.openshift.io/cluster instead.
--
Type::
@@ -132,16 +121,12 @@ Type::
| `defaultProxy`
| `object`
| DefaultProxy contains the default proxy settings for all build operations, including image pull/push
and source download.
Values can be overrode by setting the `HTTP_PROXY`, `HTTPS_PROXY`, and `NO_PROXY` environment variables
in the build config's strategy.
| DefaultProxy contains the default proxy settings for all build operations, including image pull/push and source download.
Values can be overrode by setting the `HTTP_PROXY`, `HTTPS_PROXY`, and `NO_PROXY` environment variables in the build config's strategy.
| `env`
| `array`
| Env is a set of default environment variables that will be applied to the
build if the specified variables do not exist on the build
| Env is a set of default environment variables that will be applied to the build if the specified variables do not exist on the build
| `env[]`
| `object`
@@ -149,16 +134,12 @@ build if the specified variables do not exist on the build
| `gitProxy`
| `object`
| GitProxy contains the proxy settings for git operations only. If set, this will override
any Proxy settings for all git commands, such as git clone.
Values that are not set here will be inherited from DefaultProxy.
| GitProxy contains the proxy settings for git operations only. If set, this will override any Proxy settings for all git commands, such as git clone.
Values that are not set here will be inherited from DefaultProxy.
| `imageLabels`
| `array`
| ImageLabels is a list of docker labels that are applied to the resulting image.
User can override a default label by providing a label with the same name in their
Build/BuildConfig.
| ImageLabels is a list of docker labels that are applied to the resulting image. User can override a default label by providing a label with the same name in their Build/BuildConfig.
| `imageLabels[]`
| `object`
@@ -173,11 +154,8 @@ Build/BuildConfig.
Description::
+
--
DefaultProxy contains the default proxy settings for all build operations, including image pull/push
and source download.
Values can be overrode by setting the `HTTP_PROXY`, `HTTPS_PROXY`, and `NO_PROXY` environment variables
in the build config's strategy.
DefaultProxy contains the default proxy settings for all build operations, including image pull/push and source download.
Values can be overrode by setting the `HTTP_PROXY`, `HTTPS_PROXY`, and `NO_PROXY` environment variables in the build config's strategy.
--
Type::
@@ -200,8 +178,7 @@ Type::
| `noProxy`
| `string`
| noProxy is a comma-separated list of hostnames and/or CIDRs and/or IPs for which the proxy should not be used.
Empty means unset and will not result in an env var.
| noProxy is a comma-separated list of hostnames and/or CIDRs and/or IPs for which the proxy should not be used. Empty means unset and will not result in an env var.
| `readinessEndpoints`
| `array (string)`
@@ -209,58 +186,18 @@ Empty means unset and will not result in an env var.
| `trustedCA`
| `object`
| trustedCA is a reference to a ConfigMap containing a CA certificate bundle.
The trustedCA field should only be consumed by a proxy validator. The
validator is responsible for reading the certificate bundle from the required
key "ca-bundle.crt", merging it with the system default trust bundle,
and writing the merged trust bundle to a ConfigMap named "trusted-ca-bundle"
in the "openshift-config-managed" namespace. Clients that expect to make
proxy connections must use the trusted-ca-bundle for all HTTPS requests to
the proxy, and may use the trusted-ca-bundle for non-proxy HTTPS requests as
well.
The namespace for the ConfigMap referenced by trustedCA is
"openshift-config". Here is an example ConfigMap (in yaml):
apiVersion: v1
kind: ConfigMap
metadata:
name: user-ca-bundle
namespace: openshift-config
data:
ca-bundle.crt: \|
-----BEGIN CERTIFICATE-----
Custom CA certificate bundle.
-----END CERTIFICATE-----
| trustedCA is a reference to a ConfigMap containing a CA certificate bundle. The trustedCA field should only be consumed by a proxy validator. The validator is responsible for reading the certificate bundle from the required key "ca-bundle.crt", merging it with the system default trust bundle, and writing the merged trust bundle to a ConfigMap named "trusted-ca-bundle" in the "openshift-config-managed" namespace. Clients that expect to make proxy connections must use the trusted-ca-bundle for all HTTPS requests to the proxy, and may use the trusted-ca-bundle for non-proxy HTTPS requests as well.
The namespace for the ConfigMap referenced by trustedCA is "openshift-config". Here is an example ConfigMap (in yaml):
apiVersion: v1 kind: ConfigMap metadata: name: user-ca-bundle namespace: openshift-config data: ca-bundle.crt: \| -----BEGIN CERTIFICATE----- Custom CA certificate bundle. -----END CERTIFICATE-----
|===
=== .spec.buildDefaults.defaultProxy.trustedCA
Description::
+
--
trustedCA is a reference to a ConfigMap containing a CA certificate bundle.
The trustedCA field should only be consumed by a proxy validator. The
validator is responsible for reading the certificate bundle from the required
key "ca-bundle.crt", merging it with the system default trust bundle,
and writing the merged trust bundle to a ConfigMap named "trusted-ca-bundle"
in the "openshift-config-managed" namespace. Clients that expect to make
proxy connections must use the trusted-ca-bundle for all HTTPS requests to
the proxy, and may use the trusted-ca-bundle for non-proxy HTTPS requests as
well.
The namespace for the ConfigMap referenced by trustedCA is
"openshift-config". Here is an example ConfigMap (in yaml):
apiVersion: v1
kind: ConfigMap
metadata:
name: user-ca-bundle
namespace: openshift-config
data:
ca-bundle.crt: \|
-----BEGIN CERTIFICATE-----
Custom CA certificate bundle.
-----END CERTIFICATE-----
trustedCA is a reference to a ConfigMap containing a CA certificate bundle. The trustedCA field should only be consumed by a proxy validator. The validator is responsible for reading the certificate bundle from the required key "ca-bundle.crt", merging it with the system default trust bundle, and writing the merged trust bundle to a ConfigMap named "trusted-ca-bundle" in the "openshift-config-managed" namespace. Clients that expect to make proxy connections must use the trusted-ca-bundle for all HTTPS requests to the proxy, and may use the trusted-ca-bundle for non-proxy HTTPS requests as well.
The namespace for the ConfigMap referenced by trustedCA is "openshift-config". Here is an example ConfigMap (in yaml):
apiVersion: v1 kind: ConfigMap metadata: name: user-ca-bundle namespace: openshift-config data: ca-bundle.crt: \| -----BEGIN CERTIFICATE----- Custom CA certificate bundle. -----END CERTIFICATE-----
--
Type::
@@ -284,8 +221,7 @@ Required::
Description::
+
--
Env is a set of default environment variables that will be applied to the
build if the specified variables do not exist on the build
Env is a set of default environment variables that will be applied to the build if the specified variables do not exist on the build
--
Type::
@@ -319,15 +255,7 @@ Required::
| `value`
| `string`
| Variable references $(VAR_NAME) are expanded
using the previously defined environment variables in the container and
any service environment variables. If a variable cannot be resolved,
the reference in the input string will be unchanged. Double $$ are reduced
to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e.
"$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)".
Escaped references will never be expanded, regardless of whether the variable
exists or not.
Defaults to "".
| Variable references $(VAR_NAME) are expanded using the previously defined environment variables in the container and any service environment variables. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless of whether the variable exists or not. Defaults to "".
| `valueFrom`
| `object`
@@ -357,13 +285,11 @@ Type::
| `fieldRef`
| `object`
| Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['<KEY>']`, `metadata.annotations['<KEY>']`,
spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.
| Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['<KEY>']`, `metadata.annotations['<KEY>']`, spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.
| `resourceFieldRef`
| `object`
| Selects a resource of the container: only resources limits and requests
(limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported.
| Selects a resource of the container: only resources limits and requests (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported.
| `secretKeyRef`
| `object`
@@ -395,11 +321,7 @@ Required::
| `name`
| `string`
| Name of the referent.
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
| Name of the referent. This field is effectively required, but due to backwards compatibility is allowed to be empty. Instances of this type with an empty value here are almost certainly wrong. TODO: Add other useful fields. apiVersion, kind, uid? More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896.
| `optional`
| `boolean`
@@ -410,8 +332,7 @@ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/nam
Description::
+
--
Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['<KEY>']`, `metadata.annotations['<KEY>']`,
spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.
Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['<KEY>']`, `metadata.annotations['<KEY>']`, spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.
--
Type::
@@ -439,8 +360,7 @@ Required::
Description::
+
--
Selects a resource of the container: only resources limits and requests
(limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported.
Selects a resource of the container: only resources limits and requests (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported.
--
Type::
@@ -493,11 +413,7 @@ Required::
| `name`
| `string`
| Name of the referent.
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
| Name of the referent. This field is effectively required, but due to backwards compatibility is allowed to be empty. Instances of this type with an empty value here are almost certainly wrong. TODO: Add other useful fields. apiVersion, kind, uid? More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896.
| `optional`
| `boolean`
@@ -508,10 +424,8 @@ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/nam
Description::
+
--
GitProxy contains the proxy settings for git operations only. If set, this will override
any Proxy settings for all git commands, such as git clone.
Values that are not set here will be inherited from DefaultProxy.
GitProxy contains the proxy settings for git operations only. If set, this will override any Proxy settings for all git commands, such as git clone.
Values that are not set here will be inherited from DefaultProxy.
--
Type::
@@ -534,8 +448,7 @@ Type::
| `noProxy`
| `string`
| noProxy is a comma-separated list of hostnames and/or CIDRs and/or IPs for which the proxy should not be used.
Empty means unset and will not result in an env var.
| noProxy is a comma-separated list of hostnames and/or CIDRs and/or IPs for which the proxy should not be used. Empty means unset and will not result in an env var.
| `readinessEndpoints`
| `array (string)`
@@ -543,58 +456,18 @@ Empty means unset and will not result in an env var.
| `trustedCA`
| `object`
| trustedCA is a reference to a ConfigMap containing a CA certificate bundle.
The trustedCA field should only be consumed by a proxy validator. The
validator is responsible for reading the certificate bundle from the required
key "ca-bundle.crt", merging it with the system default trust bundle,
and writing the merged trust bundle to a ConfigMap named "trusted-ca-bundle"
in the "openshift-config-managed" namespace. Clients that expect to make
proxy connections must use the trusted-ca-bundle for all HTTPS requests to
the proxy, and may use the trusted-ca-bundle for non-proxy HTTPS requests as
well.
The namespace for the ConfigMap referenced by trustedCA is
"openshift-config". Here is an example ConfigMap (in yaml):
apiVersion: v1
kind: ConfigMap
metadata:
name: user-ca-bundle
namespace: openshift-config
data:
ca-bundle.crt: \|
-----BEGIN CERTIFICATE-----
Custom CA certificate bundle.
-----END CERTIFICATE-----
| trustedCA is a reference to a ConfigMap containing a CA certificate bundle. The trustedCA field should only be consumed by a proxy validator. The validator is responsible for reading the certificate bundle from the required key "ca-bundle.crt", merging it with the system default trust bundle, and writing the merged trust bundle to a ConfigMap named "trusted-ca-bundle" in the "openshift-config-managed" namespace. Clients that expect to make proxy connections must use the trusted-ca-bundle for all HTTPS requests to the proxy, and may use the trusted-ca-bundle for non-proxy HTTPS requests as well.
The namespace for the ConfigMap referenced by trustedCA is "openshift-config". Here is an example ConfigMap (in yaml):
apiVersion: v1 kind: ConfigMap metadata: name: user-ca-bundle namespace: openshift-config data: ca-bundle.crt: \| -----BEGIN CERTIFICATE----- Custom CA certificate bundle. -----END CERTIFICATE-----
|===
=== .spec.buildDefaults.gitProxy.trustedCA
Description::
+
--
trustedCA is a reference to a ConfigMap containing a CA certificate bundle.
The trustedCA field should only be consumed by a proxy validator. The
validator is responsible for reading the certificate bundle from the required
key "ca-bundle.crt", merging it with the system default trust bundle,
and writing the merged trust bundle to a ConfigMap named "trusted-ca-bundle"
in the "openshift-config-managed" namespace. Clients that expect to make
proxy connections must use the trusted-ca-bundle for all HTTPS requests to
the proxy, and may use the trusted-ca-bundle for non-proxy HTTPS requests as
well.
The namespace for the ConfigMap referenced by trustedCA is
"openshift-config". Here is an example ConfigMap (in yaml):
apiVersion: v1
kind: ConfigMap
metadata:
name: user-ca-bundle
namespace: openshift-config
data:
ca-bundle.crt: \|
-----BEGIN CERTIFICATE-----
Custom CA certificate bundle.
-----END CERTIFICATE-----
trustedCA is a reference to a ConfigMap containing a CA certificate bundle. The trustedCA field should only be consumed by a proxy validator. The validator is responsible for reading the certificate bundle from the required key "ca-bundle.crt", merging it with the system default trust bundle, and writing the merged trust bundle to a ConfigMap named "trusted-ca-bundle" in the "openshift-config-managed" namespace. Clients that expect to make proxy connections must use the trusted-ca-bundle for all HTTPS requests to the proxy, and may use the trusted-ca-bundle for non-proxy HTTPS requests as well.
The namespace for the ConfigMap referenced by trustedCA is "openshift-config". Here is an example ConfigMap (in yaml):
apiVersion: v1 kind: ConfigMap metadata: name: user-ca-bundle namespace: openshift-config data: ca-bundle.crt: \| -----BEGIN CERTIFICATE----- Custom CA certificate bundle. -----END CERTIFICATE-----
--
Type::
@@ -618,9 +491,7 @@ Required::
Description::
+
--
ImageLabels is a list of docker labels that are applied to the resulting image.
User can override a default label by providing a label with the same name in their
Build/BuildConfig.
ImageLabels is a list of docker labels that are applied to the resulting image. User can override a default label by providing a label with the same name in their Build/BuildConfig.
--
Type::
@@ -674,13 +545,9 @@ Type::
| `claims`
| `array`
| Claims lists the names of resources, defined in spec.resourceClaims,
that are used by this container.
This is an alpha field and requires enabling the
DynamicResourceAllocation feature gate.
This field is immutable. It can only be set for containers.
| Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container.
This is an alpha field and requires enabling the DynamicResourceAllocation feature gate.
This field is immutable. It can only be set for containers.
| `claims[]`
| `object`
@@ -688,28 +555,20 @@ This field is immutable. It can only be set for containers.
| `limits`
| `integer-or-string`
| Limits describes the maximum amount of compute resources allowed.
More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
| Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
| `requests`
| `integer-or-string`
| Requests describes the minimum amount of compute resources required.
If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
otherwise to an implementation-defined value. Requests cannot exceed Limits.
More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
| Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. Requests cannot exceed Limits. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
|===
=== .spec.buildDefaults.resources.claims
Description::
+
--
Claims lists the names of resources, defined in spec.resourceClaims,
that are used by this container.
This is an alpha field and requires enabling the
DynamicResourceAllocation feature gate.
This field is immutable. It can only be set for containers.
Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container.
This is an alpha field and requires enabling the DynamicResourceAllocation feature gate.
This field is immutable. It can only be set for containers.
--
Type::
@@ -739,15 +598,7 @@ Required::
| `name`
| `string`
| Name must match the name of one entry in pod.spec.resourceClaims of
the Pod where this field is used. It makes that resource available
inside a container.
| `request`
| `string`
| Request is the name chosen for a request in the referenced claim.
If empty, everything from the claim is made available, otherwise
only the result of this request.
| Name must match the name of one entry in pod.spec.resourceClaims of the Pod where this field is used. It makes that resource available inside a container.
|===
=== .spec.buildOverrides
@@ -769,16 +620,11 @@ Type::
| `forcePull`
| `boolean`
| ForcePull overrides, if set, the equivalent value in the builds,
i.e. false disables force pull for all builds,
true enables force pull for all builds,
independently of what each build specifies itself
| ForcePull overrides, if set, the equivalent value in the builds, i.e. false disables force pull for all builds, true enables force pull for all builds, independently of what each build specifies itself
| `imageLabels`
| `array`
| ImageLabels is a list of docker labels that are applied to the resulting image.
If user provided a label in their Build/BuildConfig with the same name as one in this
list, the user's label will be overwritten.
| ImageLabels is a list of docker labels that are applied to the resulting image. If user provided a label in their Build/BuildConfig with the same name as one in this list, the user's label will be overwritten.
| `imageLabels[]`
| `object`
@@ -790,22 +636,18 @@ list, the user's label will be overwritten.
| `tolerations`
| `array`
| Tolerations is a list of Tolerations that will override any existing
tolerations set on a build pod.
| Tolerations is a list of Tolerations that will override any existing tolerations set on a build pod.
| `tolerations[]`
| `object`
| The pod this Toleration is attached to tolerates any taint that matches
the triple <key,value,effect> using the matching operator <operator>.
| The pod this Toleration is attached to tolerates any taint that matches the triple <key,value,effect> using the matching operator <operator>.
|===
=== .spec.buildOverrides.imageLabels
Description::
+
--
ImageLabels is a list of docker labels that are applied to the resulting image.
If user provided a label in their Build/BuildConfig with the same name as one in this
list, the user's label will be overwritten.
ImageLabels is a list of docker labels that are applied to the resulting image. If user provided a label in their Build/BuildConfig with the same name as one in this list, the user's label will be overwritten.
--
Type::
@@ -844,8 +686,7 @@ Type::
Description::
+
--
Tolerations is a list of Tolerations that will override any existing
tolerations set on a build pod.
Tolerations is a list of Tolerations that will override any existing tolerations set on a build pod.
--
Type::
@@ -858,8 +699,7 @@ Type::
Description::
+
--
The pod this Toleration is attached to tolerates any taint that matches
the triple <key,value,effect> using the matching operator <operator>.
The pod this Toleration is attached to tolerates any taint that matches the triple <key,value,effect> using the matching operator <operator>.
--
Type::
@@ -874,32 +714,23 @@ Type::
| `effect`
| `string`
| Effect indicates the taint effect to match. Empty means match all taint effects.
When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute.
| Effect indicates the taint effect to match. Empty means match all taint effects. When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute.
| `key`
| `string`
| Key is the taint key that the toleration applies to. Empty means match all taint keys.
If the key is empty, operator must be Exists; this combination means to match all values and all keys.
| Key is the taint key that the toleration applies to. Empty means match all taint keys. If the key is empty, operator must be Exists; this combination means to match all values and all keys.
| `operator`
| `string`
| Operator represents a key's relationship to the value.
Valid operators are Exists and Equal. Defaults to Equal.
Exists is equivalent to wildcard for value, so that a pod can
tolerate all taints of a particular category.
| Operator represents a key's relationship to the value. Valid operators are Exists and Equal. Defaults to Equal. Exists is equivalent to wildcard for value, so that a pod can tolerate all taints of a particular category.
| `tolerationSeconds`
| `integer`
| TolerationSeconds represents the period of time the toleration (which must be
of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default,
it is not set, which means tolerate the taint forever (do not evict). Zero and
negative values will be treated as 0 (evict immediately) by the system.
| TolerationSeconds represents the period of time the toleration (which must be of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default, it is not set, which means tolerate the taint forever (do not evict). Zero and negative values will be treated as 0 (evict immediately) by the system.
| `value`
| `string`
| Value is the taint value the toleration matches to.
If the operator is Exists, the value should be empty, otherwise just a regular string.
| Value is the taint value the toleration matches to. If the operator is Exists, the value should be empty, otherwise just a regular string.
|===

View File

@@ -11,11 +11,8 @@ toc::[]
Description::
+
--
ClusterOperator is the Custom Resource object which holds the current state
of an operator. This object is used by operators to convey their state to
the rest of the cluster.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
ClusterOperator is the Custom Resource object which holds the current state of an operator. This object is used by operators to convey their state to the rest of the cluster.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -49,8 +46,7 @@ Required::
| `status`
| `object`
| status holds the information about the state of an operator. It is consistent with status information across
the Kubernetes ecosystem.
| status holds the information about the state of an operator. It is consistent with status information across the Kubernetes ecosystem.
|===
=== .spec
@@ -70,8 +66,7 @@ Type::
Description::
+
--
status holds the information about the state of an operator. It is consistent with status information across
the Kubernetes ecosystem.
status holds the information about the state of an operator. It is consistent with status information across the Kubernetes ecosystem.
--
Type::
@@ -90,20 +85,15 @@ Type::
| `conditions[]`
| `object`
| ClusterOperatorStatusCondition represents the state of the operator's
managed and monitored components.
| ClusterOperatorStatusCondition represents the state of the operator's managed and monitored components.
| `extension`
| ``
| extension contains any additional status information specific to the
operator which owns this status object.
| extension contains any additional status information specific to the operator which owns this status object.
| `relatedObjects`
| `array`
| relatedObjects is a list of objects that are "interesting" or related to this operator. Common uses are:
1. the detailed resource driving the operator
2. operator namespaces
3. operand namespaces
| relatedObjects is a list of objects that are "interesting" or related to this operator. Common uses are: 1. the detailed resource driving the operator 2. operator namespaces 3. operand namespaces
| `relatedObjects[]`
| `object`
@@ -111,9 +101,7 @@ operator which owns this status object.
| `versions`
| `array`
| versions is a slice of operator and operand version tuples. Operators which manage multiple operands will have multiple
operand entries in the array. Available operators must report the version of the operator itself with the name "operator".
An operator reports a new "operator" version when it has rolled out the new version to all of its operands.
| versions is a slice of operator and operand version tuples. Operators which manage multiple operands will have multiple operand entries in the array. Available operators must report the version of the operator itself with the name "operator". An operator reports a new "operator" version when it has rolled out the new version to all of its operands.
| `versions[]`
| `object`
@@ -137,8 +125,7 @@ Type::
Description::
+
--
ClusterOperatorStatusCondition represents the state of the operator's
managed and monitored components.
ClusterOperatorStatusCondition represents the state of the operator's managed and monitored components.
--
Type::
@@ -161,9 +148,7 @@ Required::
| `message`
| `string`
| message provides additional information about the current condition.
This is only to be consumed by humans. It may contain Line Feed
characters (U+000A), which should be rendered as new lines.
| message provides additional information about the current condition. This is only to be consumed by humans. It may contain Line Feed characters (U+000A), which should be rendered as new lines.
| `reason`
| `string`
@@ -182,10 +167,7 @@ characters (U+000A), which should be rendered as new lines.
Description::
+
--
relatedObjects is a list of objects that are "interesting" or related to this operator. Common uses are:
1. the detailed resource driving the operator
2. operator namespaces
3. operand namespaces
relatedObjects is a list of objects that are "interesting" or related to this operator. Common uses are: 1. the detailed resource driving the operator 2. operator namespaces 3. operand namespaces
--
Type::
@@ -236,9 +218,7 @@ Required::
Description::
+
--
versions is a slice of operator and operand version tuples. Operators which manage multiple operands will have multiple
operand entries in the array. Available operators must report the version of the operator itself with the name "operator".
An operator reports a new "operator" version when it has rolled out the new version to all of its operands.
versions is a slice of operator and operand version tuples. Operators which manage multiple operands will have multiple operand entries in the array. Available operators must report the version of the operator itself with the name "operator". An operator reports a new "operator" version when it has rolled out the new version to all of its operands.
--
Type::
@@ -273,9 +253,7 @@ Required::
| `version`
| `string`
| version indicates which version of a particular operand is currently being managed. It must always match the Available
operand. If 1.0.0 is Available, then this must indicate 1.0.0 even if the operator is trying to rollout
1.1.0
| version indicates which version of a particular operand is currently being managed. It must always match the Available operand. If 1.0.0 is Available, then this must indicate 1.0.0 even if the operator is trying to rollout 1.1.0
|===

View File

@@ -11,10 +11,8 @@ toc::[]
Description::
+
--
ClusterVersion is the configuration for the ClusterVersionOperator. This is where
parameters related to automatic updates can be set.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
ClusterVersion is the configuration for the ClusterVersionOperator. This is where parameters related to automatic updates can be set.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -44,21 +42,18 @@ Required::
| `spec`
| `object`
| spec is the desired state of the cluster version - the operator will work
to ensure that the desired version is applied to the cluster.
| spec is the desired state of the cluster version - the operator will work to ensure that the desired version is applied to the cluster.
| `status`
| `object`
| status contains information about the available updates and any in-progress
updates.
| status contains information about the available updates and any in-progress updates.
|===
=== .spec
Description::
+
--
spec is the desired state of the cluster version - the operator will work
to ensure that the desired version is applied to the cluster.
spec is the desired state of the cluster version - the operator will work to ensure that the desired version is applied to the cluster.
--
Type::
@@ -75,70 +70,40 @@ Required::
| `capabilities`
| `object`
| capabilities configures the installation of optional, core
cluster components. A null value here is identical to an
empty object; see the child properties for default semantics.
| capabilities configures the installation of optional, core cluster components. A null value here is identical to an empty object; see the child properties for default semantics.
| `channel`
| `string`
| channel is an identifier for explicitly requesting that a non-default
set of updates be applied to this cluster. The default channel will be
contain stable updates that are appropriate for production clusters.
| channel is an identifier for explicitly requesting that a non-default set of updates be applied to this cluster. The default channel will be contain stable updates that are appropriate for production clusters.
| `clusterID`
| `string`
| clusterID uniquely identifies this cluster. This is expected to be
an RFC4122 UUID value (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx in
hexadecimal values). This is a required field.
| clusterID uniquely identifies this cluster. This is expected to be an RFC4122 UUID value (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx in hexadecimal values). This is a required field.
| `desiredUpdate`
| `object`
| desiredUpdate is an optional field that indicates the desired value of
the cluster version. Setting this value will trigger an upgrade (if
the current version does not match the desired version). The set of
recommended update values is listed as part of available updates in
status, and setting values outside that range may cause the upgrade
to fail.
Some of the fields are inter-related with restrictions and meanings described here.
1. image is specified, version is specified, architecture is specified. API validation error.
2. image is specified, version is specified, architecture is not specified. You should not do this. version is silently ignored and image is used.
3. image is specified, version is not specified, architecture is specified. API validation error.
4. image is specified, version is not specified, architecture is not specified. image is used.
5. image is not specified, version is specified, architecture is specified. version and desired architecture are used to select an image.
6. image is not specified, version is specified, architecture is not specified. version and current architecture are used to select an image.
7. image is not specified, version is not specified, architecture is specified. API validation error.
8. image is not specified, version is not specified, architecture is not specified. API validation error.
If an upgrade fails the operator will halt and report status
about the failing component. Setting the desired update value back to
the previous version will cause a rollback to be attempted. Not all
rollbacks will succeed.
| desiredUpdate is an optional field that indicates the desired value of the cluster version. Setting this value will trigger an upgrade (if the current version does not match the desired version). The set of recommended update values is listed as part of available updates in status, and setting values outside that range may cause the upgrade to fail.
Some of the fields are inter-related with restrictions and meanings described here. 1. image is specified, version is specified, architecture is specified. API validation error. 2. image is specified, version is specified, architecture is not specified. You should not do this. version is silently ignored and image is used. 3. image is specified, version is not specified, architecture is specified. API validation error. 4. image is specified, version is not specified, architecture is not specified. image is used. 5. image is not specified, version is specified, architecture is specified. version and desired architecture are used to select an image. 6. image is not specified, version is specified, architecture is not specified. version and current architecture are used to select an image. 7. image is not specified, version is not specified, architecture is specified. API validation error. 8. image is not specified, version is not specified, architecture is not specified. API validation error.
If an upgrade fails the operator will halt and report status about the failing component. Setting the desired update value back to the previous version will cause a rollback to be attempted. Not all rollbacks will succeed.
| `overrides`
| `array`
| overrides is list of overides for components that are managed by
cluster version operator. Marking a component unmanaged will prevent
the operator from creating or updating the object.
| overrides is list of overides for components that are managed by cluster version operator. Marking a component unmanaged will prevent the operator from creating or updating the object.
| `overrides[]`
| `object`
| ComponentOverride allows overriding cluster version operator's behavior
for a component.
| ComponentOverride allows overriding cluster version operator's behavior for a component.
| `upstream`
| `string`
| upstream may be used to specify the preferred update server. By default
it will use the appropriate update server for the cluster and region.
| upstream may be used to specify the preferred update server. By default it will use the appropriate update server for the cluster and region.
|===
=== .spec.capabilities
Description::
+
--
capabilities configures the installation of optional, core
cluster components. A null value here is identical to an
empty object; see the child properties for default semantics.
capabilities configures the installation of optional, core cluster components. A null value here is identical to an empty object; see the child properties for default semantics.
--
Type::
@@ -153,44 +118,20 @@ Type::
| `additionalEnabledCapabilities`
| `array (string)`
| additionalEnabledCapabilities extends the set of managed
capabilities beyond the baseline defined in
baselineCapabilitySet. The default is an empty set.
| additionalEnabledCapabilities extends the set of managed capabilities beyond the baseline defined in baselineCapabilitySet. The default is an empty set.
| `baselineCapabilitySet`
| `string`
| baselineCapabilitySet selects an initial set of
optional capabilities to enable, which can be extended via
additionalEnabledCapabilities. If unset, the cluster will
choose a default, and the default may change over time.
The current default is vCurrent.
| baselineCapabilitySet selects an initial set of optional capabilities to enable, which can be extended via additionalEnabledCapabilities. If unset, the cluster will choose a default, and the default may change over time. The current default is vCurrent.
|===
=== .spec.desiredUpdate
Description::
+
--
desiredUpdate is an optional field that indicates the desired value of
the cluster version. Setting this value will trigger an upgrade (if
the current version does not match the desired version). The set of
recommended update values is listed as part of available updates in
status, and setting values outside that range may cause the upgrade
to fail.
Some of the fields are inter-related with restrictions and meanings described here.
1. image is specified, version is specified, architecture is specified. API validation error.
2. image is specified, version is specified, architecture is not specified. You should not do this. version is silently ignored and image is used.
3. image is specified, version is not specified, architecture is specified. API validation error.
4. image is specified, version is not specified, architecture is not specified. image is used.
5. image is not specified, version is specified, architecture is specified. version and desired architecture are used to select an image.
6. image is not specified, version is specified, architecture is not specified. version and current architecture are used to select an image.
7. image is not specified, version is not specified, architecture is specified. API validation error.
8. image is not specified, version is not specified, architecture is not specified. API validation error.
If an upgrade fails the operator will halt and report status
about the failing component. Setting the desired update value back to
the previous version will cause a rollback to be attempted. Not all
rollbacks will succeed.
desiredUpdate is an optional field that indicates the desired value of the cluster version. Setting this value will trigger an upgrade (if the current version does not match the desired version). The set of recommended update values is listed as part of available updates in status, and setting values outside that range may cause the upgrade to fail.
Some of the fields are inter-related with restrictions and meanings described here. 1. image is specified, version is specified, architecture is specified. API validation error. 2. image is specified, version is specified, architecture is not specified. You should not do this. version is silently ignored and image is used. 3. image is specified, version is not specified, architecture is specified. API validation error. 4. image is specified, version is not specified, architecture is not specified. image is used. 5. image is not specified, version is specified, architecture is specified. version and desired architecture are used to select an image. 6. image is not specified, version is specified, architecture is not specified. version and current architecture are used to select an image. 7. image is not specified, version is not specified, architecture is specified. API validation error. 8. image is not specified, version is not specified, architecture is not specified. API validation error.
If an upgrade fails the operator will halt and report status about the failing component. Setting the desired update value back to the previous version will cause a rollback to be attempted. Not all rollbacks will succeed.
--
Type::
@@ -205,45 +146,26 @@ Type::
| `architecture`
| `string`
| architecture is an optional field that indicates the desired
value of the cluster architecture. In this context cluster
architecture means either a single architecture or a multi
architecture. architecture can only be set to Multi thereby
only allowing updates from single to multi architecture. If
architecture is set, image cannot be set and version must be
set.
Valid values are 'Multi' and empty.
| architecture is an optional field that indicates the desired value of the cluster architecture. In this context cluster architecture means either a single architecture or a multi architecture. architecture can only be set to Multi thereby only allowing updates from single to multi architecture. If architecture is set, image cannot be set and version must be set. Valid values are 'Multi' and empty.
| `force`
| `boolean`
| force allows an administrator to update to an image that has failed
verification or upgradeable checks. This option should only
be used when the authenticity of the provided image has been verified out
of band because the provided image will run with full administrative access
to the cluster. Do not use this flag with images that comes from unknown
or potentially malicious sources.
| force allows an administrator to update to an image that has failed verification or upgradeable checks. This option should only be used when the authenticity of the provided image has been verified out of band because the provided image will run with full administrative access to the cluster. Do not use this flag with images that comes from unknown or potentially malicious sources.
| `image`
| `string`
| image is a container image location that contains the update.
image should be used when the desired version does not exist in availableUpdates or history.
When image is set, version is ignored. When image is set, version should be empty.
When image is set, architecture cannot be specified.
| image is a container image location that contains the update. image should be used when the desired version does not exist in availableUpdates or history. When image is set, version is ignored. When image is set, version should be empty. When image is set, architecture cannot be specified.
| `version`
| `string`
| version is a semantic version identifying the update version.
version is ignored if image is specified and required if
architecture is specified.
| version is a semantic version identifying the update version. version is ignored if image is specified and required if architecture is specified.
|===
=== .spec.overrides
Description::
+
--
overrides is list of overides for components that are managed by
cluster version operator. Marking a component unmanaged will prevent
the operator from creating or updating the object.
overrides is list of overides for components that are managed by cluster version operator. Marking a component unmanaged will prevent the operator from creating or updating the object.
--
Type::
@@ -256,8 +178,7 @@ Type::
Description::
+
--
ComponentOverride allows overriding cluster version operator's behavior
for a component.
ComponentOverride allows overriding cluster version operator's behavior for a component.
--
Type::
@@ -290,22 +211,18 @@ Required::
| `namespace`
| `string`
| namespace is the component's namespace. If the resource is cluster
scoped, the namespace should be empty.
| namespace is the component's namespace. If the resource is cluster scoped, the namespace should be empty.
| `unmanaged`
| `boolean`
| unmanaged controls if cluster version operator should stop managing the
resources in this cluster.
Default: false
| unmanaged controls if cluster version operator should stop managing the resources in this cluster. Default: false
|===
=== .status
Description::
+
--
status contains information about the available updates and any in-progress
updates.
status contains information about the available updates and any in-progress updates.
--
Type::
@@ -324,11 +241,7 @@ Required::
| `availableUpdates`
| ``
| availableUpdates contains updates recommended for this
cluster. Updates which appear in conditionalUpdates but not in
availableUpdates may expose this cluster to known issues. This list
may be empty if no updates are recommended, if the update service
is unavailable, or if an invalid channel has been specified.
| availableUpdates contains updates recommended for this cluster. Updates which appear in conditionalUpdates but not in availableUpdates may expose this cluster to known issues. This list may be empty if no updates are recommended, if the update service is unavailable, or if an invalid channel has been specified.
| `capabilities`
| `object`
@@ -336,50 +249,27 @@ is unavailable, or if an invalid channel has been specified.
| `conditionalUpdates`
| `array`
| conditionalUpdates contains the list of updates that may be
recommended for this cluster if it meets specific required
conditions. Consumers interested in the set of updates that are
actually recommended for this cluster should use
availableUpdates. This list may be empty if no updates are
recommended, if the update service is unavailable, or if an empty
or invalid channel has been specified.
| conditionalUpdates contains the list of updates that may be recommended for this cluster if it meets specific required conditions. Consumers interested in the set of updates that are actually recommended for this cluster should use availableUpdates. This list may be empty if no updates are recommended, if the update service is unavailable, or if an empty or invalid channel has been specified.
| `conditionalUpdates[]`
| `object`
| ConditionalUpdate represents an update which is recommended to some
clusters on the version the current cluster is reconciling, but which
may not be recommended for the current cluster.
| ConditionalUpdate represents an update which is recommended to some clusters on the version the current cluster is reconciling, but which may not be recommended for the current cluster.
| `conditions`
| `array`
| conditions provides information about the cluster version. The condition
"Available" is set to true if the desiredUpdate has been reached. The
condition "Progressing" is set to true if an update is being applied.
The condition "Degraded" is set to true if an update is currently blocked
by a temporary or permanent error. Conditions are only valid for the
current desiredUpdate when metadata.generation is equal to
status.generation.
| conditions provides information about the cluster version. The condition "Available" is set to true if the desiredUpdate has been reached. The condition "Progressing" is set to true if an update is being applied. The condition "Degraded" is set to true if an update is currently blocked by a temporary or permanent error. Conditions are only valid for the current desiredUpdate when metadata.generation is equal to status.generation.
| `conditions[]`
| `object`
| ClusterOperatorStatusCondition represents the state of the operator's
managed and monitored components.
| ClusterOperatorStatusCondition represents the state of the operator's managed and monitored components.
| `desired`
| `object`
| desired is the version that the cluster is reconciling towards.
If the cluster is not yet fully initialized desired will be set
with the information available, which may be an image or a tag.
| desired is the version that the cluster is reconciling towards. If the cluster is not yet fully initialized desired will be set with the information available, which may be an image or a tag.
| `history`
| `array`
| history contains a list of the most recent versions applied to the cluster.
This value may be empty during cluster startup, and then will be updated
when a new update is being applied. The newest update is first in the
list and it is ordered by recency. Updates in the history have state
Completed if the rollout completed - if an update was failing or halfway
applied the state will be Partial. Only a limited amount of update history
is preserved.
| history contains a list of the most recent versions applied to the cluster. This value may be empty during cluster startup, and then will be updated when a new update is being applied. The newest update is first in the list and it is ordered by recency. Updates in the history have state Completed if the rollout completed - if an update was failing or halfway applied the state will be Partial. Only a limited amount of update history is preserved.
| `history[]`
| `object`
@@ -387,15 +277,11 @@ is preserved.
| `observedGeneration`
| `integer`
| observedGeneration reports which version of the spec is being synced.
If this value is not equal to metadata.generation, then the desired
and conditions fields may represent a previous version.
| observedGeneration reports which version of the spec is being synced. If this value is not equal to metadata.generation, then the desired and conditions fields may represent a previous version.
| `versionHash`
| `string`
| versionHash is a fingerprint of the content that the cluster will be
updated with. It is used by the operator to avoid unnecessary work
and is for internal use only.
| versionHash is a fingerprint of the content that the cluster will be updated with. It is used by the operator to avoid unnecessary work and is for internal use only.
|===
=== .status.capabilities
@@ -428,13 +314,7 @@ Type::
Description::
+
--
conditionalUpdates contains the list of updates that may be
recommended for this cluster if it meets specific required
conditions. Consumers interested in the set of updates that are
actually recommended for this cluster should use
availableUpdates. This list may be empty if no updates are
recommended, if the update service is unavailable, or if an empty
or invalid channel has been specified.
conditionalUpdates contains the list of updates that may be recommended for this cluster if it meets specific required conditions. Consumers interested in the set of updates that are actually recommended for this cluster should use availableUpdates. This list may be empty if no updates are recommended, if the update service is unavailable, or if an empty or invalid channel has been specified.
--
Type::
@@ -447,9 +327,7 @@ Type::
Description::
+
--
ConditionalUpdate represents an update which is recommended to some
clusters on the version the current cluster is reconciling, but which
may not be recommended for the current cluster.
ConditionalUpdate represents an update which is recommended to some clusters on the version the current cluster is reconciling, but which may not be recommended for the current cluster.
--
Type::
@@ -467,13 +345,13 @@ Required::
| `conditions`
| `array`
| conditions represents the observations of the conditional update's
current status. Known types are:
* Recommended, for whether the update is recommended for the current cluster.
| conditions represents the observations of the conditional update's current status. Known types are: * Recommended, for whether the update is recommended for the current cluster.
| `conditions[]`
| `object`
| Condition contains details for one aspect of the current state of this API Resource.
| Condition contains details for one aspect of the current state of this API Resource. --- This struct is intended for direct use as an array at the field path .status.conditions. For example,
type FooStatus struct{ // Represents the observations of a foo's current state. // Known .status.conditions.type are: "Available", "Progressing", and "Degraded" // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"`
// other fields }
| `release`
| `object`
@@ -481,25 +359,18 @@ current status. Known types are:
| `risks`
| `array`
| risks represents the range of issues associated with
updating to the target release. The cluster-version
operator will evaluate all entries, and only recommend the
update if there is at least one entry and all entries
recommend the update.
| risks represents the range of issues associated with updating to the target release. The cluster-version operator will evaluate all entries, and only recommend the update if there is at least one entry and all entries recommend the update.
| `risks[]`
| `object`
| ConditionalUpdateRisk represents a reason and cluster-state
for not recommending a conditional update.
| ConditionalUpdateRisk represents a reason and cluster-state for not recommending a conditional update.
|===
=== .status.conditionalUpdates[].conditions
Description::
+
--
conditions represents the observations of the conditional update's
current status. Known types are:
* Recommended, for whether the update is recommended for the current cluster.
conditions represents the observations of the conditional update's current status. Known types are: * Recommended, for whether the update is recommended for the current cluster.
--
Type::
@@ -512,7 +383,9 @@ Type::
Description::
+
--
Condition contains details for one aspect of the current state of this API Resource.
Condition contains details for one aspect of the current state of this API Resource. --- This struct is intended for direct use as an array at the field path .status.conditions. For example,
type FooStatus struct{ // Represents the observations of a foo's current state. // Known .status.conditions.type are: "Available", "Progressing", and "Degraded" // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"`
// other fields }
--
Type::
@@ -533,27 +406,19 @@ Required::
| `lastTransitionTime`
| `string`
| lastTransitionTime is the last time the condition transitioned from one status to another.
This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
| lastTransitionTime is the last time the condition transitioned from one status to another. This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
| `message`
| `string`
| message is a human readable message indicating details about the transition.
This may be an empty string.
| message is a human readable message indicating details about the transition. This may be an empty string.
| `observedGeneration`
| `integer`
| observedGeneration represents the .metadata.generation that the condition was set based upon.
For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date
with respect to the current state of the instance.
| observedGeneration represents the .metadata.generation that the condition was set based upon. For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date with respect to the current state of the instance.
| `reason`
| `string`
| reason contains a programmatic identifier indicating the reason for the condition's last transition.
Producers of specific condition types may define expected values and meanings for this field,
and whether the values are considered a guaranteed API.
The value should be a CamelCase string.
This field may not be empty.
| reason contains a programmatic identifier indicating the reason for the condition's last transition. Producers of specific condition types may define expected values and meanings for this field, and whether the values are considered a guaranteed API. The value should be a CamelCase string. This field may not be empty.
| `status`
| `string`
@@ -561,7 +426,7 @@ This field may not be empty.
| `type`
| `string`
| type of condition in CamelCase or in foo.example.com/CamelCase.
| type of condition in CamelCase or in foo.example.com/CamelCase. --- Many .condition.type values are consistent across resources like Available, but because arbitrary conditions can be useful (see .node.status.conditions), the ability to deconflict is important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
|===
=== .status.conditionalUpdates[].release
@@ -574,9 +439,6 @@ release is the target of the update.
Type::
`object`
Required::
- `image`
- `version`
@@ -586,38 +448,26 @@ Required::
| `channels`
| `array (string)`
| channels is the set of Cincinnati channels to which the release
currently belongs.
| channels is the set of Cincinnati channels to which the release currently belongs.
| `image`
| `string`
| image is a container image location that contains the update. When this
field is part of spec, image is optional if version is specified and the
availableUpdates field contains a matching version.
| image is a container image location that contains the update. When this field is part of spec, image is optional if version is specified and the availableUpdates field contains a matching version.
| `url`
| `string`
| url contains information about this release. This URL is set by
the 'url' metadata property on a release or the metadata returned by
the update API and should be displayed as a link in user
interfaces. The URL field may not be set for test or nightly
releases.
| url contains information about this release. This URL is set by the 'url' metadata property on a release or the metadata returned by the update API and should be displayed as a link in user interfaces. The URL field may not be set for test or nightly releases.
| `version`
| `string`
| version is a semantic version identifying the update version. When this
field is part of spec, version is optional if image is specified.
| version is a semantic version identifying the update version. When this field is part of spec, version is optional if image is specified.
|===
=== .status.conditionalUpdates[].risks
Description::
+
--
risks represents the range of issues associated with
updating to the target release. The cluster-version
operator will evaluate all entries, and only recommend the
update if there is at least one entry and all entries
recommend the update.
risks represents the range of issues associated with updating to the target release. The cluster-version operator will evaluate all entries, and only recommend the update if there is at least one entry and all entries recommend the update.
--
Type::
@@ -630,8 +480,7 @@ Type::
Description::
+
--
ConditionalUpdateRisk represents a reason and cluster-state
for not recommending a conditional update.
ConditionalUpdateRisk represents a reason and cluster-state for not recommending a conditional update.
--
Type::
@@ -651,33 +500,19 @@ Required::
| `matchingRules`
| `array`
| matchingRules is a slice of conditions for deciding which
clusters match the risk and which do not. The slice is
ordered by decreasing precedence. The cluster-version
operator will walk the slice in order, and stop after the
first it can successfully evaluate. If no condition can be
successfully evaluated, the update will not be recommended.
| matchingRules is a slice of conditions for deciding which clusters match the risk and which do not. The slice is ordered by decreasing precedence. The cluster-version operator will walk the slice in order, and stop after the first it can successfully evaluate. If no condition can be successfully evaluated, the update will not be recommended.
| `matchingRules[]`
| `object`
| ClusterCondition is a union of typed cluster conditions. The 'type'
property determines which of the type-specific properties are relevant.
When evaluated on a cluster, the condition may match, not match, or
fail to evaluate.
| ClusterCondition is a union of typed cluster conditions. The 'type' property determines which of the type-specific properties are relevant. When evaluated on a cluster, the condition may match, not match, or fail to evaluate.
| `message`
| `string`
| message provides additional information about the risk of
updating, in the event that matchingRules match the cluster
state. This is only to be consumed by humans. It may
contain Line Feed characters (U+000A), which should be
rendered as new lines.
| message provides additional information about the risk of updating, in the event that matchingRules match the cluster state. This is only to be consumed by humans. It may contain Line Feed characters (U+000A), which should be rendered as new lines.
| `name`
| `string`
| name is the CamelCase reason for not recommending a
conditional update, in the event that matchingRules match the
cluster state.
| name is the CamelCase reason for not recommending a conditional update, in the event that matchingRules match the cluster state.
| `url`
| `string`
@@ -688,12 +523,7 @@ cluster state.
Description::
+
--
matchingRules is a slice of conditions for deciding which
clusters match the risk and which do not. The slice is
ordered by decreasing precedence. The cluster-version
operator will walk the slice in order, and stop after the
first it can successfully evaluate. If no condition can be
successfully evaluated, the update will not be recommended.
matchingRules is a slice of conditions for deciding which clusters match the risk and which do not. The slice is ordered by decreasing precedence. The cluster-version operator will walk the slice in order, and stop after the first it can successfully evaluate. If no condition can be successfully evaluated, the update will not be recommended.
--
Type::
@@ -706,10 +536,7 @@ Type::
Description::
+
--
ClusterCondition is a union of typed cluster conditions. The 'type'
property determines which of the type-specific properties are relevant.
When evaluated on a cluster, the condition may match, not match, or
fail to evaluate.
ClusterCondition is a union of typed cluster conditions. The 'type' property determines which of the type-specific properties are relevant. When evaluated on a cluster, the condition may match, not match, or fail to evaluate.
--
Type::
@@ -730,8 +557,7 @@ Required::
| `type`
| `string`
| type represents the cluster-condition type. This defines
the members and semantics of any additional properties.
| type represents the cluster-condition type. This defines the members and semantics of any additional properties.
|===
=== .status.conditionalUpdates[].risks[].matchingRules[].promql
@@ -755,24 +581,14 @@ Required::
| `promql`
| `string`
| PromQL is a PromQL query classifying clusters. This query
query should return a 1 in the match case and a 0 in the
does-not-match case. Queries which return no time
series, or which return values besides 0 or 1, are
evaluation failures.
| PromQL is a PromQL query classifying clusters. This query query should return a 1 in the match case and a 0 in the does-not-match case. Queries which return no time series, or which return values besides 0 or 1, are evaluation failures.
|===
=== .status.conditions
Description::
+
--
conditions provides information about the cluster version. The condition
"Available" is set to true if the desiredUpdate has been reached. The
condition "Progressing" is set to true if an update is being applied.
The condition "Degraded" is set to true if an update is currently blocked
by a temporary or permanent error. Conditions are only valid for the
current desiredUpdate when metadata.generation is equal to
status.generation.
conditions provides information about the cluster version. The condition "Available" is set to true if the desiredUpdate has been reached. The condition "Progressing" is set to true if an update is being applied. The condition "Degraded" is set to true if an update is currently blocked by a temporary or permanent error. Conditions are only valid for the current desiredUpdate when metadata.generation is equal to status.generation.
--
Type::
@@ -785,8 +601,7 @@ Type::
Description::
+
--
ClusterOperatorStatusCondition represents the state of the operator's
managed and monitored components.
ClusterOperatorStatusCondition represents the state of the operator's managed and monitored components.
--
Type::
@@ -809,9 +624,7 @@ Required::
| `message`
| `string`
| message provides additional information about the current condition.
This is only to be consumed by humans. It may contain Line Feed
characters (U+000A), which should be rendered as new lines.
| message provides additional information about the current condition. This is only to be consumed by humans. It may contain Line Feed characters (U+000A), which should be rendered as new lines.
| `reason`
| `string`
@@ -830,17 +643,12 @@ characters (U+000A), which should be rendered as new lines.
Description::
+
--
desired is the version that the cluster is reconciling towards.
If the cluster is not yet fully initialized desired will be set
with the information available, which may be an image or a tag.
desired is the version that the cluster is reconciling towards. If the cluster is not yet fully initialized desired will be set with the information available, which may be an image or a tag.
--
Type::
`object`
Required::
- `image`
- `version`
@@ -850,40 +658,26 @@ Required::
| `channels`
| `array (string)`
| channels is the set of Cincinnati channels to which the release
currently belongs.
| channels is the set of Cincinnati channels to which the release currently belongs.
| `image`
| `string`
| image is a container image location that contains the update. When this
field is part of spec, image is optional if version is specified and the
availableUpdates field contains a matching version.
| image is a container image location that contains the update. When this field is part of spec, image is optional if version is specified and the availableUpdates field contains a matching version.
| `url`
| `string`
| url contains information about this release. This URL is set by
the 'url' metadata property on a release or the metadata returned by
the update API and should be displayed as a link in user
interfaces. The URL field may not be set for test or nightly
releases.
| url contains information about this release. This URL is set by the 'url' metadata property on a release or the metadata returned by the update API and should be displayed as a link in user interfaces. The URL field may not be set for test or nightly releases.
| `version`
| `string`
| version is a semantic version identifying the update version. When this
field is part of spec, version is optional if image is specified.
| version is a semantic version identifying the update version. When this field is part of spec, version is optional if image is specified.
|===
=== .status.history
Description::
+
--
history contains a list of the most recent versions applied to the cluster.
This value may be empty during cluster startup, and then will be updated
when a new update is being applied. The newest update is first in the
list and it is ordered by recency. Updates in the history have state
Completed if the rollout completed - if an update was failing or halfway
applied the state will be Partial. Only a limited amount of update history
is preserved.
history contains a list of the most recent versions applied to the cluster. This value may be empty during cluster startup, and then will be updated when a new update is being applied. The newest update is first in the list and it is ordered by recency. Updates in the history have state Completed if the rollout completed - if an update was failing or halfway applied the state will be Partial. Only a limited amount of update history is preserved.
--
Type::
@@ -916,23 +710,15 @@ Required::
| `acceptedRisks`
| `string`
| acceptedRisks records risks which were accepted to initiate the update.
For example, it may menition an Upgradeable=False or missing signature
that was overriden via desiredUpdate.force, or an update that was
initiated despite not being in the availableUpdates set of recommended
update targets.
| acceptedRisks records risks which were accepted to initiate the update. For example, it may menition an Upgradeable=False or missing signature that was overriden via desiredUpdate.force, or an update that was initiated despite not being in the availableUpdates set of recommended update targets.
| `completionTime`
| ``
| completionTime, if set, is when the update was fully applied. The update
that is currently being applied will have a null completion time.
Completion time will always be set for entries that are not the current
update (usually to the started time of the next update).
| completionTime, if set, is when the update was fully applied. The update that is currently being applied will have a null completion time. Completion time will always be set for entries that are not the current update (usually to the started time of the next update).
| `image`
| `string`
| image is a container image location that contains the update. This value
is always populated.
| image is a container image location that contains the update. This value is always populated.
| `startedTime`
| `string`
@@ -940,23 +726,15 @@ is always populated.
| `state`
| `string`
| state reflects whether the update was fully applied. The Partial state
indicates the update is not fully applied, while the Completed state
indicates the update was successfully rolled out at least once (all
parts of the update successfully applied).
| state reflects whether the update was fully applied. The Partial state indicates the update is not fully applied, while the Completed state indicates the update was successfully rolled out at least once (all parts of the update successfully applied).
| `verified`
| `boolean`
| verified indicates whether the provided update was properly verified
before it was installed. If this is false the cluster may not be trusted.
Verified does not cover upgradeable checks that depend on the cluster
state at the time when the update target was accepted.
| verified indicates whether the provided update was properly verified before it was installed. If this is false the cluster may not be trusted. Verified does not cover upgradeable checks that depend on the cluster state at the time when the update target was accepted.
| `version`
| `string`
| version is a semantic version identifying the update version. If the
requested image does not define a version, or if a failure occurs
retrieving the image, this value may be empty.
| version is a semantic version identifying the update version. If the requested image does not define a version, or if a failure occurs retrieving the image, this value may be empty.
|===

View File

@@ -12,11 +12,8 @@ toc::[]
Description::
+
--
APIServer holds configuration (like serving certificates, client CA and CORS domains)
shared by all API servers in the system, among them especially kube-apiserver
and openshift-apiserver. The canonical name of an instance is 'cluster'.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
APIServer holds configuration (like serving certificates, client CA and CORS domains) shared by all API servers in the system, among them especially kube-apiserver and openshift-apiserver. The canonical name of an instance is 'cluster'.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -27,10 +24,8 @@ Type::
Description::
+
--
Authentication specifies cluster-wide settings for authentication (like OAuth and
webhook token authenticators). The canonical name of an instance is `cluster`.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
Authentication specifies cluster-wide settings for authentication (like OAuth and webhook token authenticators). The canonical name of an instance is `cluster`.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -41,12 +36,9 @@ Type::
Description::
+
--
Build configures the behavior of OpenShift builds for the entire cluster.
This includes default settings that can be overridden in BuildConfig objects, and overrides which are applied to all builds.
The canonical name is "cluster"
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
Build configures the behavior of OpenShift builds for the entire cluster. This includes default settings that can be overridden in BuildConfig objects, and overrides which are applied to all builds.
The canonical name is "cluster"
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -57,11 +49,8 @@ Type::
Description::
+
--
ClusterOperator is the Custom Resource object which holds the current state
of an operator. This object is used by operators to convey their state to
the rest of the cluster.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
ClusterOperator is the Custom Resource object which holds the current state of an operator. This object is used by operators to convey their state to the rest of the cluster.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -72,10 +61,8 @@ Type::
Description::
+
--
ClusterVersion is the configuration for the ClusterVersionOperator. This is where
parameters related to automatic updates can be set.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
ClusterVersion is the configuration for the ClusterVersionOperator. This is where parameters related to automatic updates can be set.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -86,11 +73,8 @@ Type::
Description::
+
--
Console holds cluster-wide configuration for the web console, including the
logout URL, and reports the public URL of the console. The canonical name is
`cluster`.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
Console holds cluster-wide configuration for the web console, including the logout URL, and reports the public URL of the console. The canonical name is `cluster`.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -101,9 +85,8 @@ Type::
Description::
+
--
DNS holds cluster-wide information about DNS. The canonical name is `cluster`
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
DNS holds cluster-wide information about DNS. The canonical name is `cluster`
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -114,9 +97,8 @@ Type::
Description::
+
--
Feature holds cluster-wide information about feature gates. The canonical name is `cluster`
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
Feature holds cluster-wide information about feature gates. The canonical name is `cluster`
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -127,9 +109,8 @@ Type::
Description::
+
--
HelmChartRepository holds cluster-wide configuration for proxied Helm chart repository
Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
HelmChartRepository holds cluster-wide configuration for proxied Helm chart repository
Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
--
Type::
@@ -140,14 +121,8 @@ Type::
Description::
+
--
Image governs policies related to imagestream imports and runtime configuration
for external registries. It allows cluster admins to configure which registries
OpenShift is allowed to import images from, extra CA trust bundles for external
registries, and policies to block or allow registry hostnames.
When exposing OpenShift's image registry to the public, this also lets cluster
admins specify the external hostname.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
Image governs policies related to imagestream imports and runtime configuration for external registries. It allows cluster admins to configure which registries OpenShift is allowed to import images from, extra CA trust bundles for external registries, and policies to block or allow registry hostnames. When exposing OpenShift's image registry to the public, this also lets cluster admins specify the external hostname.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -158,10 +133,8 @@ Type::
Description::
+
--
ImageDigestMirrorSet holds cluster-wide information about how to handle registry mirror rules on using digest pull specification.
When multiple policies are defined, the outcome of the behavior is defined on each field.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
ImageDigestMirrorSet holds cluster-wide information about how to handle registry mirror rules on using digest pull specification. When multiple policies are defined, the outcome of the behavior is defined on each field.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -172,10 +145,8 @@ Type::
Description::
+
--
ImageContentPolicy holds cluster-wide information about how to handle registry mirror rules.
When multiple policies are defined, the outcome of the behavior is defined on each field.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
ImageContentPolicy holds cluster-wide information about how to handle registry mirror rules. When multiple policies are defined, the outcome of the behavior is defined on each field.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -186,10 +157,8 @@ Type::
Description::
+
--
ImageTagMirrorSet holds cluster-wide information about how to handle registry mirror rules on using tag pull specification.
When multiple policies are defined, the outcome of the behavior is defined on each field.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
ImageTagMirrorSet holds cluster-wide information about how to handle registry mirror rules on using tag pull specification. When multiple policies are defined, the outcome of the behavior is defined on each field.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -200,9 +169,8 @@ Type::
Description::
+
--
Infrastructure holds cluster-wide information about Infrastructure. The canonical name is `cluster`
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
Infrastructure holds cluster-wide information about Infrastructure. The canonical name is `cluster`
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -213,10 +181,8 @@ Type::
Description::
+
--
Ingress holds cluster-wide information about ingress, including the default ingress domain
used for routes. The canonical name is `cluster`.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
Ingress holds cluster-wide information about ingress, including the default ingress domain used for routes. The canonical name is `cluster`.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -227,10 +193,8 @@ Type::
Description::
+
--
Network holds cluster-wide information about Network. The canonical name is `cluster`. It is used to configure the desired network configuration, such as: IP address pools for services/pod IPs, network plugin, etc.
Please view network.spec for an explanation on what applies when configuring this resource.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
Network holds cluster-wide information about Network. The canonical name is `cluster`. It is used to configure the desired network configuration, such as: IP address pools for services/pod IPs, network plugin, etc. Please view network.spec for an explanation on what applies when configuring this resource.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -241,9 +205,8 @@ Type::
Description::
+
--
Node holds cluster-wide information about node specific features.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
Node holds cluster-wide information about node specific features.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -254,11 +217,8 @@ Type::
Description::
+
--
OAuth holds cluster-wide information about OAuth. The canonical name is `cluster`.
It is used to configure the integrated OAuth server.
This configuration is only honored when the top level Authentication config has type set to IntegratedOAuth.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
OAuth holds cluster-wide information about OAuth. The canonical name is `cluster`. It is used to configure the integrated OAuth server. This configuration is only honored when the top level Authentication config has type set to IntegratedOAuth.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -281,9 +241,8 @@ Type::
Description::
+
--
Project holds cluster-wide information about Project. The canonical name is `cluster`
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
Project holds cluster-wide information about Project. The canonical name is `cluster`
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -294,9 +253,8 @@ Type::
Description::
+
--
ProjectHelmChartRepository holds namespace-wide configuration for proxied Helm chart repository
Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
ProjectHelmChartRepository holds namespace-wide configuration for proxied Helm chart repository
Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
--
Type::
@@ -307,9 +265,8 @@ Type::
Description::
+
--
Proxy holds cluster-wide information on how to configure default proxies for the cluster. The canonical name is `cluster`
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
Proxy holds cluster-wide information on how to configure default proxies for the cluster. The canonical name is `cluster`
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -320,10 +277,8 @@ Type::
Description::
+
--
Scheduler holds cluster-wide config information to run the Kubernetes Scheduler
and influence its placement decisions. The canonical name for this config is `cluster`.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
Scheduler holds cluster-wide config information to run the Kubernetes Scheduler and influence its placement decisions. The canonical name for this config is `cluster`.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::

View File

@@ -11,11 +11,8 @@ toc::[]
Description::
+
--
Console holds cluster-wide configuration for the web console, including the
logout URL, and reports the public URL of the console. The canonical name is
`cluster`.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
Console holds cluster-wide configuration for the web console, including the logout URL, and reports the public URL of the console. The canonical name is `cluster`.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -93,16 +90,7 @@ Type::
| `logoutRedirect`
| `string`
| An optional, absolute URL to redirect web browsers to after logging out of
the console. If not specified, it will redirect to the default login page.
This is required when using an identity provider that supports single
sign-on (SSO) such as:
- OpenID (Keycloak, Azure)
- RequestHeader (GSSAPI, SSPI, SAML)
- OAuth (GitHub, GitLab, Google)
Logging out of the console will destroy the user's token. The logoutRedirect
provides the user the option to perform single logout (SLO) through the identity
provider to destroy their single sign-on session.
| An optional, absolute URL to redirect web browsers to after logging out of the console. If not specified, it will redirect to the default login page. This is required when using an identity provider that supports single sign-on (SSO) such as: - OpenID (Keycloak, Azure) - RequestHeader (GSSAPI, SSPI, SAML) - OAuth (GitHub, GitLab, Google) Logging out of the console will destroy the user's token. The logoutRedirect provides the user the option to perform single logout (SLO) through the identity provider to destroy their single sign-on session.
|===
=== .status
@@ -124,8 +112,7 @@ Type::
| `consoleURL`
| `string`
| The URL for the console. This will be derived from the host for the route that
is created for the console.
| The URL for the console. This will be derived from the host for the route that is created for the console.
|===

View File

@@ -11,9 +11,8 @@ toc::[]
Description::
+
--
DNS holds cluster-wide information about DNS. The canonical name is `cluster`
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
DNS holds cluster-wide information about DNS. The canonical name is `cluster`
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -69,48 +68,32 @@ Type::
| `baseDomain`
| `string`
| baseDomain is the base domain of the cluster. All managed DNS records will
be sub-domains of this base.
For example, given the base domain `openshift.example.com`, an API server
DNS record may be created for `cluster-api.openshift.example.com`.
Once set, this field cannot be changed.
| baseDomain is the base domain of the cluster. All managed DNS records will be sub-domains of this base.
For example, given the base domain `openshift.example.com`, an API server DNS record may be created for `cluster-api.openshift.example.com`.
Once set, this field cannot be changed.
| `platform`
| `object`
| platform holds configuration specific to the underlying
infrastructure provider for DNS.
When omitted, this means the user has no opinion and the platform is left
to choose reasonable defaults. These defaults are subject to change over time.
| platform holds configuration specific to the underlying infrastructure provider for DNS. When omitted, this means the user has no opinion and the platform is left to choose reasonable defaults. These defaults are subject to change over time.
| `privateZone`
| `object`
| privateZone is the location where all the DNS records that are only available internally
to the cluster exist.
If this field is nil, no private records should be created.
Once set, this field cannot be changed.
| privateZone is the location where all the DNS records that are only available internally to the cluster exist.
If this field is nil, no private records should be created.
Once set, this field cannot be changed.
| `publicZone`
| `object`
| publicZone is the location where all the DNS records that are publicly accessible to
the internet exist.
If this field is nil, no public records should be created.
Once set, this field cannot be changed.
| publicZone is the location where all the DNS records that are publicly accessible to the internet exist.
If this field is nil, no public records should be created.
Once set, this field cannot be changed.
|===
=== .spec.platform
Description::
+
--
platform holds configuration specific to the underlying
infrastructure provider for DNS.
When omitted, this means the user has no opinion and the platform is left
to choose reasonable defaults. These defaults are subject to change over time.
platform holds configuration specific to the underlying infrastructure provider for DNS. When omitted, this means the user has no opinion and the platform is left to choose reasonable defaults. These defaults are subject to change over time.
--
Type::
@@ -131,11 +114,8 @@ Required::
| `type`
| `string`
| type is the underlying infrastructure provider for the cluster.
Allowed values: "", "AWS".
Individual components may not support all platforms,
and must handle unrecognized platforms with best-effort defaults.
| type is the underlying infrastructure provider for the cluster. Allowed values: "", "AWS".
Individual components may not support all platforms, and must handle unrecognized platforms with best-effort defaults.
|===
=== .spec.platform.aws
@@ -157,21 +137,16 @@ Type::
| `privateZoneIAMRole`
| `string`
| privateZoneIAMRole contains the ARN of an IAM role that should be assumed when performing
operations on the cluster's private hosted zone specified in the cluster DNS config.
When left empty, no role should be assumed.
| privateZoneIAMRole contains the ARN of an IAM role that should be assumed when performing operations on the cluster's private hosted zone specified in the cluster DNS config. When left empty, no role should be assumed.
|===
=== .spec.privateZone
Description::
+
--
privateZone is the location where all the DNS records that are only available internally
to the cluster exist.
If this field is nil, no private records should be created.
Once set, this field cannot be changed.
privateZone is the location where all the DNS records that are only available internally to the cluster exist.
If this field is nil, no private records should be created.
Once set, this field cannot be changed.
--
Type::
@@ -186,35 +161,24 @@ Type::
| `id`
| `string`
| id is the identifier that can be used to find the DNS hosted zone.
on AWS zone can be fetched using `ID` as id in [1]
on Azure zone can be fetched using `ID` as a pre-determined name in [2],
on GCP zone can be fetched using `ID` as a pre-determined name in [3].
[1]: https://docs.aws.amazon.com/cli/latest/reference/route53/get-hosted-zone.html#options
[2]: https://docs.microsoft.com/en-us/cli/azure/network/dns/zone?view=azure-cli-latest#az-network-dns-zone-show
[3]: https://cloud.google.com/dns/docs/reference/v1/managedZones/get
| id is the identifier that can be used to find the DNS hosted zone.
on AWS zone can be fetched using `ID` as id in [1] on Azure zone can be fetched using `ID` as a pre-determined name in [2], on GCP zone can be fetched using `ID` as a pre-determined name in [3].
[1]: https://docs.aws.amazon.com/cli/latest/reference/route53/get-hosted-zone.html#options [2]: https://docs.microsoft.com/en-us/cli/azure/network/dns/zone?view=azure-cli-latest#az-network-dns-zone-show [3]: https://cloud.google.com/dns/docs/reference/v1/managedZones/get
| `tags`
| `object (string)`
| tags can be used to query the DNS hosted zone.
on AWS, resourcegroupstaggingapi [1] can be used to fetch a zone using `Tags` as tag-filters,
[1]: https://docs.aws.amazon.com/cli/latest/reference/resourcegroupstaggingapi/get-resources.html#options
| tags can be used to query the DNS hosted zone.
on AWS, resourcegroupstaggingapi [1] can be used to fetch a zone using `Tags` as tag-filters,
[1]: https://docs.aws.amazon.com/cli/latest/reference/resourcegroupstaggingapi/get-resources.html#options
|===
=== .spec.publicZone
Description::
+
--
publicZone is the location where all the DNS records that are publicly accessible to
the internet exist.
If this field is nil, no public records should be created.
Once set, this field cannot be changed.
publicZone is the location where all the DNS records that are publicly accessible to the internet exist.
If this field is nil, no public records should be created.
Once set, this field cannot be changed.
--
Type::
@@ -229,23 +193,15 @@ Type::
| `id`
| `string`
| id is the identifier that can be used to find the DNS hosted zone.
on AWS zone can be fetched using `ID` as id in [1]
on Azure zone can be fetched using `ID` as a pre-determined name in [2],
on GCP zone can be fetched using `ID` as a pre-determined name in [3].
[1]: https://docs.aws.amazon.com/cli/latest/reference/route53/get-hosted-zone.html#options
[2]: https://docs.microsoft.com/en-us/cli/azure/network/dns/zone?view=azure-cli-latest#az-network-dns-zone-show
[3]: https://cloud.google.com/dns/docs/reference/v1/managedZones/get
| id is the identifier that can be used to find the DNS hosted zone.
on AWS zone can be fetched using `ID` as id in [1] on Azure zone can be fetched using `ID` as a pre-determined name in [2], on GCP zone can be fetched using `ID` as a pre-determined name in [3].
[1]: https://docs.aws.amazon.com/cli/latest/reference/route53/get-hosted-zone.html#options [2]: https://docs.microsoft.com/en-us/cli/azure/network/dns/zone?view=azure-cli-latest#az-network-dns-zone-show [3]: https://cloud.google.com/dns/docs/reference/v1/managedZones/get
| `tags`
| `object (string)`
| tags can be used to query the DNS hosted zone.
on AWS, resourcegroupstaggingapi [1] can be used to fetch a zone using `Tags` as tag-filters,
[1]: https://docs.aws.amazon.com/cli/latest/reference/resourcegroupstaggingapi/get-resources.html#options
| tags can be used to query the DNS hosted zone.
on AWS, resourcegroupstaggingapi [1] can be used to fetch a zone using `Tags` as tag-filters,
[1]: https://docs.aws.amazon.com/cli/latest/reference/resourcegroupstaggingapi/get-resources.html#options
|===
=== .status

View File

@@ -11,9 +11,8 @@ toc::[]
Description::
+
--
Feature holds cluster-wide information about feature gates. The canonical name is `cluster`
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
Feature holds cluster-wide information about feature gates. The canonical name is `cluster`
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -69,14 +68,11 @@ Type::
| `customNoUpgrade`
| ``
| customNoUpgrade allows the enabling or disabling of any feature. Turning this feature set on IS NOT SUPPORTED, CANNOT BE UNDONE, and PREVENTS UPGRADES.
Because of its nature, this setting cannot be validated. If you have any typos or accidentally apply invalid combinations
your cluster may fail in an unrecoverable way. featureSet must equal "CustomNoUpgrade" must be set to use this field.
| customNoUpgrade allows the enabling or disabling of any feature. Turning this feature set on IS NOT SUPPORTED, CANNOT BE UNDONE, and PREVENTS UPGRADES. Because of its nature, this setting cannot be validated. If you have any typos or accidentally apply invalid combinations your cluster may fail in an unrecoverable way. featureSet must equal "CustomNoUpgrade" must be set to use this field.
| `featureSet`
| `string`
| featureSet changes the list of features in the cluster. The default is empty. Be very careful adjusting this setting.
Turning on or off features may cause irreversible changes in your cluster which cannot be undone.
| featureSet changes the list of features in the cluster. The default is empty. Be very careful adjusting this setting. Turning on or off features may cause irreversible changes in your cluster which cannot be undone.
|===
=== .status
@@ -98,23 +94,17 @@ Type::
| `conditions`
| `array`
| conditions represent the observations of the current state.
Known .status.conditions.type are: "DeterminationDegraded"
| conditions represent the observations of the current state. Known .status.conditions.type are: "DeterminationDegraded"
| `conditions[]`
| `object`
| Condition contains details for one aspect of the current state of this API Resource.
| Condition contains details for one aspect of the current state of this API Resource. --- This struct is intended for direct use as an array at the field path .status.conditions. For example,
type FooStatus struct{ // Represents the observations of a foo's current state. // Known .status.conditions.type are: "Available", "Progressing", and "Degraded" // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"`
// other fields }
| `featureGates`
| `array`
| featureGates contains a list of enabled and disabled featureGates that are keyed by payloadVersion.
Operators other than the CVO and cluster-config-operator, must read the .status.featureGates, locate
the version they are managing, find the enabled/disabled featuregates and make the operand and operator match.
The enabled/disabled values for a particular version may change during the life of the cluster as various
.spec.featureSet values are selected.
Operators may choose to restart their processes to pick up these changes, but remembering past enable/disable
lists is beyond the scope of this API and is the responsibility of individual operators.
Only featureGates with .version in the ClusterVersion.status will be present in this list.
| featureGates contains a list of enabled and disabled featureGates that are keyed by payloadVersion. Operators other than the CVO and cluster-config-operator, must read the .status.featureGates, locate the version they are managing, find the enabled/disabled featuregates and make the operand and operator match. The enabled/disabled values for a particular version may change during the life of the cluster as various .spec.featureSet values are selected. Operators may choose to restart their processes to pick up these changes, but remembering past enable/disable lists is beyond the scope of this API and is the responsibility of individual operators. Only featureGates with .version in the ClusterVersion.status will be present in this list.
| `featureGates[]`
| `object`
@@ -125,8 +115,7 @@ Only featureGates with .version in the ClusterVersion.status will be present in
Description::
+
--
conditions represent the observations of the current state.
Known .status.conditions.type are: "DeterminationDegraded"
conditions represent the observations of the current state. Known .status.conditions.type are: "DeterminationDegraded"
--
Type::
@@ -139,7 +128,9 @@ Type::
Description::
+
--
Condition contains details for one aspect of the current state of this API Resource.
Condition contains details for one aspect of the current state of this API Resource. --- This struct is intended for direct use as an array at the field path .status.conditions. For example,
type FooStatus struct{ // Represents the observations of a foo's current state. // Known .status.conditions.type are: "Available", "Progressing", and "Degraded" // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"`
// other fields }
--
Type::
@@ -160,27 +151,19 @@ Required::
| `lastTransitionTime`
| `string`
| lastTransitionTime is the last time the condition transitioned from one status to another.
This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
| lastTransitionTime is the last time the condition transitioned from one status to another. This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
| `message`
| `string`
| message is a human readable message indicating details about the transition.
This may be an empty string.
| message is a human readable message indicating details about the transition. This may be an empty string.
| `observedGeneration`
| `integer`
| observedGeneration represents the .metadata.generation that the condition was set based upon.
For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date
with respect to the current state of the instance.
| observedGeneration represents the .metadata.generation that the condition was set based upon. For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date with respect to the current state of the instance.
| `reason`
| `string`
| reason contains a programmatic identifier indicating the reason for the condition's last transition.
Producers of specific condition types may define expected values and meanings for this field,
and whether the values are considered a guaranteed API.
The value should be a CamelCase string.
This field may not be empty.
| reason contains a programmatic identifier indicating the reason for the condition's last transition. Producers of specific condition types may define expected values and meanings for this field, and whether the values are considered a guaranteed API. The value should be a CamelCase string. This field may not be empty.
| `status`
| `string`
@@ -188,21 +171,14 @@ This field may not be empty.
| `type`
| `string`
| type of condition in CamelCase or in foo.example.com/CamelCase.
| type of condition in CamelCase or in foo.example.com/CamelCase. --- Many .condition.type values are consistent across resources like Available, but because arbitrary conditions can be useful (see .node.status.conditions), the ability to deconflict is important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
|===
=== .status.featureGates
Description::
+
--
featureGates contains a list of enabled and disabled featureGates that are keyed by payloadVersion.
Operators other than the CVO and cluster-config-operator, must read the .status.featureGates, locate
the version they are managing, find the enabled/disabled featuregates and make the operand and operator match.
The enabled/disabled values for a particular version may change during the life of the cluster as various
.spec.featureSet values are selected.
Operators may choose to restart their processes to pick up these changes, but remembering past enable/disable
lists is beyond the scope of this API and is the responsibility of individual operators.
Only featureGates with .version in the ClusterVersion.status will be present in this list.
featureGates contains a list of enabled and disabled featureGates that are keyed by payloadVersion. Operators other than the CVO and cluster-config-operator, must read the .status.featureGates, locate the version they are managing, find the enabled/disabled featuregates and make the operand and operator match. The enabled/disabled values for a particular version may change during the life of the cluster as various .spec.featureSet values are selected. Operators may choose to restart their processes to pick up these changes, but remembering past enable/disable lists is beyond the scope of this API and is the responsibility of individual operators. Only featureGates with .version in the ClusterVersion.status will be present in this list.
--
Type::

View File

@@ -11,9 +11,8 @@ toc::[]
Description::
+
--
HelmChartRepository holds cluster-wide configuration for proxied Helm chart repository
Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
HelmChartRepository holds cluster-wide configuration for proxied Helm chart repository
Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
--
Type::
@@ -103,19 +102,11 @@ Type::
| `ca`
| `object`
| ca is an optional reference to a config map by name containing the PEM-encoded CA bundle.
It is used as a trust anchor to validate the TLS certificate presented by the remote server.
The key "ca-bundle.crt" is used to locate the data.
If empty, the default system roots are used.
The namespace for this config map is openshift-config.
| ca is an optional reference to a config map by name containing the PEM-encoded CA bundle. It is used as a trust anchor to validate the TLS certificate presented by the remote server. The key "ca-bundle.crt" is used to locate the data. If empty, the default system roots are used. The namespace for this config map is openshift-config.
| `tlsClientConfig`
| `object`
| tlsClientConfig is an optional reference to a secret by name that contains the
PEM-encoded TLS client certificate and private key to present when connecting to the server.
The key "tls.crt" is used to locate the client certificate.
The key "tls.key" is used to locate the private key.
The namespace for this secret is openshift-config.
| tlsClientConfig is an optional reference to a secret by name that contains the PEM-encoded TLS client certificate and private key to present when connecting to the server. The key "tls.crt" is used to locate the client certificate. The key "tls.key" is used to locate the private key. The namespace for this secret is openshift-config.
| `url`
| `string`
@@ -126,11 +117,7 @@ The namespace for this secret is openshift-config.
Description::
+
--
ca is an optional reference to a config map by name containing the PEM-encoded CA bundle.
It is used as a trust anchor to validate the TLS certificate presented by the remote server.
The key "ca-bundle.crt" is used to locate the data.
If empty, the default system roots are used.
The namespace for this config map is openshift-config.
ca is an optional reference to a config map by name containing the PEM-encoded CA bundle. It is used as a trust anchor to validate the TLS certificate presented by the remote server. The key "ca-bundle.crt" is used to locate the data. If empty, the default system roots are used. The namespace for this config map is openshift-config.
--
Type::
@@ -154,11 +141,7 @@ Required::
Description::
+
--
tlsClientConfig is an optional reference to a secret by name that contains the
PEM-encoded TLS client certificate and private key to present when connecting to the server.
The key "tls.crt" is used to locate the client certificate.
The key "tls.key" is used to locate the private key.
The namespace for this secret is openshift-config.
tlsClientConfig is an optional reference to a secret by name that contains the PEM-encoded TLS client certificate and private key to present when connecting to the server. The key "tls.crt" is used to locate the client certificate. The key "tls.key" is used to locate the private key. The namespace for this secret is openshift-config.
--
Type::
@@ -201,7 +184,9 @@ Type::
| `conditions[]`
| `object`
| Condition contains details for one aspect of the current state of this API Resource.
| Condition contains details for one aspect of the current state of this API Resource. --- This struct is intended for direct use as an array at the field path .status.conditions. For example,
type FooStatus struct{ // Represents the observations of a foo's current state. // Known .status.conditions.type are: "Available", "Progressing", and "Degraded" // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"`
// other fields }
|===
=== .status.conditions
@@ -221,7 +206,9 @@ Type::
Description::
+
--
Condition contains details for one aspect of the current state of this API Resource.
Condition contains details for one aspect of the current state of this API Resource. --- This struct is intended for direct use as an array at the field path .status.conditions. For example,
type FooStatus struct{ // Represents the observations of a foo's current state. // Known .status.conditions.type are: "Available", "Progressing", and "Degraded" // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"`
// other fields }
--
Type::
@@ -242,27 +229,19 @@ Required::
| `lastTransitionTime`
| `string`
| lastTransitionTime is the last time the condition transitioned from one status to another.
This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
| lastTransitionTime is the last time the condition transitioned from one status to another. This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
| `message`
| `string`
| message is a human readable message indicating details about the transition.
This may be an empty string.
| message is a human readable message indicating details about the transition. This may be an empty string.
| `observedGeneration`
| `integer`
| observedGeneration represents the .metadata.generation that the condition was set based upon.
For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date
with respect to the current state of the instance.
| observedGeneration represents the .metadata.generation that the condition was set based upon. For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date with respect to the current state of the instance.
| `reason`
| `string`
| reason contains a programmatic identifier indicating the reason for the condition's last transition.
Producers of specific condition types may define expected values and meanings for this field,
and whether the values are considered a guaranteed API.
The value should be a CamelCase string.
This field may not be empty.
| reason contains a programmatic identifier indicating the reason for the condition's last transition. Producers of specific condition types may define expected values and meanings for this field, and whether the values are considered a guaranteed API. The value should be a CamelCase string. This field may not be empty.
| `status`
| `string`
@@ -270,7 +249,7 @@ This field may not be empty.
| `type`
| `string`
| type of condition in CamelCase or in foo.example.com/CamelCase.
| type of condition in CamelCase or in foo.example.com/CamelCase. --- Many .condition.type values are consistent across resources like Available, but because arbitrary conditions can be useful (see .node.status.conditions), the ability to deconflict is important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
|===

View File

@@ -11,14 +11,8 @@ toc::[]
Description::
+
--
Image governs policies related to imagestream imports and runtime configuration
for external registries. It allows cluster admins to configure which registries
OpenShift is allowed to import images from, extra CA trust bundles for external
registries, and policies to block or allow registry hostnames.
When exposing OpenShift's image registry to the public, this also lets cluster
admins specify the external hostname.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
Image governs policies related to imagestream imports and runtime configuration for external registries. It allows cluster admins to configure which registries OpenShift is allowed to import images from, extra CA trust bundles for external registries, and policies to block or allow registry hostnames. When exposing OpenShift's image registry to the public, this also lets cluster admins specify the external hostname.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -74,48 +68,30 @@ Type::
| `additionalTrustedCA`
| `object`
| additionalTrustedCA is a reference to a ConfigMap containing additional CAs that
should be trusted during imagestream import, pod image pull, build image pull, and
imageregistry pullthrough.
The namespace for this config map is openshift-config.
| additionalTrustedCA is a reference to a ConfigMap containing additional CAs that should be trusted during imagestream import, pod image pull, build image pull, and imageregistry pullthrough. The namespace for this config map is openshift-config.
| `allowedRegistriesForImport`
| `array`
| allowedRegistriesForImport limits the container image registries that normal users may import
images from. Set this list to the registries that you trust to contain valid Docker
images and that you want applications to be able to import from. Users with
permission to create Images or ImageStreamMappings via the API are not affected by
this policy - typically only administrators or system integrations will have those
permissions.
| allowedRegistriesForImport limits the container image registries that normal users may import images from. Set this list to the registries that you trust to contain valid Docker images and that you want applications to be able to import from. Users with permission to create Images or ImageStreamMappings via the API are not affected by this policy - typically only administrators or system integrations will have those permissions.
| `allowedRegistriesForImport[]`
| `object`
| RegistryLocation contains a location of the registry specified by the registry domain
name. The domain name might include wildcards, like '*' or '??'.
| RegistryLocation contains a location of the registry specified by the registry domain name. The domain name might include wildcards, like '*' or '??'.
| `externalRegistryHostnames`
| `array (string)`
| externalRegistryHostnames provides the hostnames for the default external image
registry. The external hostname should be set only when the image registry
is exposed externally. The first value is used in 'publicDockerImageRepository'
field in ImageStreams. The value must be in "hostname[:port]" format.
| externalRegistryHostnames provides the hostnames for the default external image registry. The external hostname should be set only when the image registry is exposed externally. The first value is used in 'publicDockerImageRepository' field in ImageStreams. The value must be in "hostname[:port]" format.
| `registrySources`
| `object`
| registrySources contains configuration that determines how the container runtime
should treat individual registries when accessing images for builds+pods. (e.g.
whether or not to allow insecure access). It does not contain configuration for the
internal cluster registry.
| registrySources contains configuration that determines how the container runtime should treat individual registries when accessing images for builds+pods. (e.g. whether or not to allow insecure access). It does not contain configuration for the internal cluster registry.
|===
=== .spec.additionalTrustedCA
Description::
+
--
additionalTrustedCA is a reference to a ConfigMap containing additional CAs that
should be trusted during imagestream import, pod image pull, build image pull, and
imageregistry pullthrough.
The namespace for this config map is openshift-config.
additionalTrustedCA is a reference to a ConfigMap containing additional CAs that should be trusted during imagestream import, pod image pull, build image pull, and imageregistry pullthrough. The namespace for this config map is openshift-config.
--
Type::
@@ -139,12 +115,7 @@ Required::
Description::
+
--
allowedRegistriesForImport limits the container image registries that normal users may import
images from. Set this list to the registries that you trust to contain valid Docker
images and that you want applications to be able to import from. Users with
permission to create Images or ImageStreamMappings via the API are not affected by
this policy - typically only administrators or system integrations will have those
permissions.
allowedRegistriesForImport limits the container image registries that normal users may import images from. Set this list to the registries that you trust to contain valid Docker images and that you want applications to be able to import from. Users with permission to create Images or ImageStreamMappings via the API are not affected by this policy - typically only administrators or system integrations will have those permissions.
--
Type::
@@ -157,8 +128,7 @@ Type::
Description::
+
--
RegistryLocation contains a location of the registry specified by the registry domain
name. The domain name might include wildcards, like '*' or '??'.
RegistryLocation contains a location of the registry specified by the registry domain name. The domain name might include wildcards, like '*' or '??'.
--
Type::
@@ -173,24 +143,18 @@ Type::
| `domainName`
| `string`
| domainName specifies a domain name for the registry
In case the registry use non-standard (80 or 443) port, the port should be included
in the domain name as well.
| domainName specifies a domain name for the registry In case the registry use non-standard (80 or 443) port, the port should be included in the domain name as well.
| `insecure`
| `boolean`
| insecure indicates whether the registry is secure (https) or insecure (http)
By default (if not specified) the registry is assumed as secure.
| insecure indicates whether the registry is secure (https) or insecure (http) By default (if not specified) the registry is assumed as secure.
|===
=== .spec.registrySources
Description::
+
--
registrySources contains configuration that determines how the container runtime
should treat individual registries when accessing images for builds+pods. (e.g.
whether or not to allow insecure access). It does not contain configuration for the
internal cluster registry.
registrySources contains configuration that determines how the container runtime should treat individual registries when accessing images for builds+pods. (e.g. whether or not to allow insecure access). It does not contain configuration for the internal cluster registry.
--
Type::
@@ -205,21 +169,17 @@ Type::
| `allowedRegistries`
| `array (string)`
| allowedRegistries are the only registries permitted for image pull and push actions. All other registries are denied.
Only one of BlockedRegistries or AllowedRegistries may be set.
| allowedRegistries are the only registries permitted for image pull and push actions. All other registries are denied.
Only one of BlockedRegistries or AllowedRegistries may be set.
| `blockedRegistries`
| `array (string)`
| blockedRegistries cannot be used for image pull and push actions. All other registries are permitted.
Only one of BlockedRegistries or AllowedRegistries may be set.
| blockedRegistries cannot be used for image pull and push actions. All other registries are permitted.
Only one of BlockedRegistries or AllowedRegistries may be set.
| `containerRuntimeSearchRegistries`
| `array (string)`
| containerRuntimeSearchRegistries are registries that will be searched when pulling images that do not have fully qualified
domains in their pull specs. Registries will be searched in the order provided in the list.
Note: this search list only works with the container runtime, i.e CRI-O. Will NOT work with builds or imagestream imports.
| containerRuntimeSearchRegistries are registries that will be searched when pulling images that do not have fully qualified domains in their pull specs. Registries will be searched in the order provided in the list. Note: this search list only works with the container runtime, i.e CRI-O. Will NOT work with builds or imagestream imports.
| `insecureRegistries`
| `array (string)`
@@ -245,17 +205,11 @@ Type::
| `externalRegistryHostnames`
| `array (string)`
| externalRegistryHostnames provides the hostnames for the default external image
registry. The external hostname should be set only when the image registry
is exposed externally. The first value is used in 'publicDockerImageRepository'
field in ImageStreams. The value must be in "hostname[:port]" format.
| externalRegistryHostnames provides the hostnames for the default external image registry. The external hostname should be set only when the image registry is exposed externally. The first value is used in 'publicDockerImageRepository' field in ImageStreams. The value must be in "hostname[:port]" format.
| `internalRegistryHostname`
| `string`
| internalRegistryHostname sets the hostname for the default internal image
registry. The value must be in "hostname[:port]" format.
This value is set by the image registry operator which controls the internal registry
hostname.
| internalRegistryHostname sets the hostname for the default internal image registry. The value must be in "hostname[:port]" format. This value is set by the image registry operator which controls the internal registry hostname.
|===

View File

@@ -11,10 +11,8 @@ toc::[]
Description::
+
--
ImageContentPolicy holds cluster-wide information about how to handle registry mirror rules.
When multiple policies are defined, the outcome of the behavior is defined on each field.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
ImageContentPolicy holds cluster-wide information about how to handle registry mirror rules. When multiple policies are defined, the outcome of the behavior is defined on each field.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -66,24 +64,10 @@ Type::
| `repositoryDigestMirrors`
| `array`
| repositoryDigestMirrors allows images referenced by image digests in pods to be
pulled from alternative mirrored repository locations. The image pull specification
provided to the pod will be compared to the source locations described in RepositoryDigestMirrors
and the image may be pulled down from any of the mirrors in the list instead of the
specified repository allowing administrators to choose a potentially faster mirror.
To pull image from mirrors by tags, should set the "allowMirrorByTags".
Each “source” repository is treated independently; configurations for different “source”
repositories dont interact.
If the "mirrors" is not specified, the image will continue to be pulled from the specified
repository in the pull spec.
When multiple policies are defined for the same “source” repository, the sets of defined
mirrors will be merged together, preserving the relative order of the mirrors, if possible.
For example, if policy A has mirrors `a, b, c` and policy B has mirrors `c, d, e`, the
mirrors will be used in the order `a, b, c, d, e`. If the orders of mirror entries conflict
(e.g. `a, b` vs. `b, a`) the configuration is not rejected but the resulting order is unspecified.
| repositoryDigestMirrors allows images referenced by image digests in pods to be pulled from alternative mirrored repository locations. The image pull specification provided to the pod will be compared to the source locations described in RepositoryDigestMirrors and the image may be pulled down from any of the mirrors in the list instead of the specified repository allowing administrators to choose a potentially faster mirror. To pull image from mirrors by tags, should set the "allowMirrorByTags".
Each “source” repository is treated independently; configurations for different “source” repositories dont interact.
If the "mirrors" is not specified, the image will continue to be pulled from the specified repository in the pull spec.
When multiple policies are defined for the same “source” repository, the sets of defined mirrors will be merged together, preserving the relative order of the mirrors, if possible. For example, if policy A has mirrors `a, b, c` and policy B has mirrors `c, d, e`, the mirrors will be used in the order `a, b, c, d, e`. If the orders of mirror entries conflict (e.g. `a, b` vs. `b, a`) the configuration is not rejected but the resulting order is unspecified.
| `repositoryDigestMirrors[]`
| `object`
@@ -94,24 +78,10 @@ mirrors will be used in the order `a, b, c, d, e`. If the orders of mirror entr
Description::
+
--
repositoryDigestMirrors allows images referenced by image digests in pods to be
pulled from alternative mirrored repository locations. The image pull specification
provided to the pod will be compared to the source locations described in RepositoryDigestMirrors
and the image may be pulled down from any of the mirrors in the list instead of the
specified repository allowing administrators to choose a potentially faster mirror.
To pull image from mirrors by tags, should set the "allowMirrorByTags".
Each “source” repository is treated independently; configurations for different “source”
repositories dont interact.
If the "mirrors" is not specified, the image will continue to be pulled from the specified
repository in the pull spec.
When multiple policies are defined for the same “source” repository, the sets of defined
mirrors will be merged together, preserving the relative order of the mirrors, if possible.
For example, if policy A has mirrors `a, b, c` and policy B has mirrors `c, d, e`, the
mirrors will be used in the order `a, b, c, d, e`. If the orders of mirror entries conflict
(e.g. `a, b` vs. `b, a`) the configuration is not rejected but the resulting order is unspecified.
repositoryDigestMirrors allows images referenced by image digests in pods to be pulled from alternative mirrored repository locations. The image pull specification provided to the pod will be compared to the source locations described in RepositoryDigestMirrors and the image may be pulled down from any of the mirrors in the list instead of the specified repository allowing administrators to choose a potentially faster mirror. To pull image from mirrors by tags, should set the "allowMirrorByTags".
Each “source” repository is treated independently; configurations for different “source” repositories dont interact.
If the "mirrors" is not specified, the image will continue to be pulled from the specified repository in the pull spec.
When multiple policies are defined for the same “source” repository, the sets of defined mirrors will be merged together, preserving the relative order of the mirrors, if possible. For example, if policy A has mirrors `a, b, c` and policy B has mirrors `c, d, e`, the mirrors will be used in the order `a, b, c, d, e`. If the orders of mirror entries conflict (e.g. `a, b` vs. `b, a`) the configuration is not rejected but the resulting order is unspecified.
--
Type::
@@ -141,20 +111,11 @@ Required::
| `allowMirrorByTags`
| `boolean`
| allowMirrorByTags if true, the mirrors can be used to pull the images that are referenced by their tags. Default is false, the mirrors only work when pulling the images that are referenced by their digests.
Pulling images by tag can potentially yield different images, depending on which endpoint
we pull from. Forcing digest-pulls for mirrors avoids that issue.
| allowMirrorByTags if true, the mirrors can be used to pull the images that are referenced by their tags. Default is false, the mirrors only work when pulling the images that are referenced by their digests. Pulling images by tag can potentially yield different images, depending on which endpoint we pull from. Forcing digest-pulls for mirrors avoids that issue.
| `mirrors`
| `array (string)`
| mirrors is zero or more repositories that may also contain the same images.
If the "mirrors" is not specified, the image will continue to be pulled from the specified
repository in the pull spec. No mirror will be configured.
The order of mirrors in this list is treated as the user's desired priority, while source
is by default considered lower priority than all mirrors. Other cluster configuration,
including (but not limited to) other repositoryDigestMirrors objects,
may impact the exact order mirrors are contacted in, or some mirrors may be contacted
in parallel, so this should be considered a preference rather than a guarantee of ordering.
| mirrors is zero or more repositories that may also contain the same images. If the "mirrors" is not specified, the image will continue to be pulled from the specified repository in the pull spec. No mirror will be configured. The order of mirrors in this list is treated as the user's desired priority, while source is by default considered lower priority than all mirrors. Other cluster configuration, including (but not limited to) other repositoryDigestMirrors objects, may impact the exact order mirrors are contacted in, or some mirrors may be contacted in parallel, so this should be considered a preference rather than a guarantee of ordering.
| `source`
| `string`

View File

@@ -11,10 +11,8 @@ toc::[]
Description::
+
--
ImageDigestMirrorSet holds cluster-wide information about how to handle registry mirror rules on using digest pull specification.
When multiple policies are defined, the outcome of the behavior is defined on each field.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
ImageDigestMirrorSet holds cluster-wide information about how to handle registry mirror rules on using digest pull specification. When multiple policies are defined, the outcome of the behavior is defined on each field.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -70,31 +68,10 @@ Type::
| `imageDigestMirrors`
| `array`
| imageDigestMirrors allows images referenced by image digests in pods to be
pulled from alternative mirrored repository locations. The image pull specification
provided to the pod will be compared to the source locations described in imageDigestMirrors
and the image may be pulled down from any of the mirrors in the list instead of the
specified repository allowing administrators to choose a potentially faster mirror.
To use mirrors to pull images using tag specification, users should configure
a list of mirrors using "ImageTagMirrorSet" CRD.
If the image pull specification matches the repository of "source" in multiple imagedigestmirrorset objects,
only the objects which define the most specific namespace match will be used.
For example, if there are objects using quay.io/libpod and quay.io/libpod/busybox as
the "source", only the objects using quay.io/libpod/busybox are going to apply
for pull specification quay.io/libpod/busybox.
Each “source” repository is treated independently; configurations for different “source”
repositories dont interact.
If the "mirrors" is not specified, the image will continue to be pulled from the specified
repository in the pull spec.
When multiple policies are defined for the same “source” repository, the sets of defined
mirrors will be merged together, preserving the relative order of the mirrors, if possible.
For example, if policy A has mirrors `a, b, c` and policy B has mirrors `c, d, e`, the
mirrors will be used in the order `a, b, c, d, e`. If the orders of mirror entries conflict
(e.g. `a, b` vs. `b, a`) the configuration is not rejected but the resulting order is unspecified.
Users who want to use a specific order of mirrors, should configure them into one list of mirrors using the expected order.
| imageDigestMirrors allows images referenced by image digests in pods to be pulled from alternative mirrored repository locations. The image pull specification provided to the pod will be compared to the source locations described in imageDigestMirrors and the image may be pulled down from any of the mirrors in the list instead of the specified repository allowing administrators to choose a potentially faster mirror. To use mirrors to pull images using tag specification, users should configure a list of mirrors using "ImageTagMirrorSet" CRD.
If the image pull specification matches the repository of "source" in multiple imagedigestmirrorset objects, only the objects which define the most specific namespace match will be used. For example, if there are objects using quay.io/libpod and quay.io/libpod/busybox as the "source", only the objects using quay.io/libpod/busybox are going to apply for pull specification quay.io/libpod/busybox. Each “source” repository is treated independently; configurations for different “source” repositories dont interact.
If the "mirrors" is not specified, the image will continue to be pulled from the specified repository in the pull spec.
When multiple policies are defined for the same “source” repository, the sets of defined mirrors will be merged together, preserving the relative order of the mirrors, if possible. For example, if policy A has mirrors `a, b, c` and policy B has mirrors `c, d, e`, the mirrors will be used in the order `a, b, c, d, e`. If the orders of mirror entries conflict (e.g. `a, b` vs. `b, a`) the configuration is not rejected but the resulting order is unspecified. Users who want to use a specific order of mirrors, should configure them into one list of mirrors using the expected order.
| `imageDigestMirrors[]`
| `object`
@@ -105,31 +82,10 @@ Users who want to use a specific order of mirrors, should configure them into on
Description::
+
--
imageDigestMirrors allows images referenced by image digests in pods to be
pulled from alternative mirrored repository locations. The image pull specification
provided to the pod will be compared to the source locations described in imageDigestMirrors
and the image may be pulled down from any of the mirrors in the list instead of the
specified repository allowing administrators to choose a potentially faster mirror.
To use mirrors to pull images using tag specification, users should configure
a list of mirrors using "ImageTagMirrorSet" CRD.
If the image pull specification matches the repository of "source" in multiple imagedigestmirrorset objects,
only the objects which define the most specific namespace match will be used.
For example, if there are objects using quay.io/libpod and quay.io/libpod/busybox as
the "source", only the objects using quay.io/libpod/busybox are going to apply
for pull specification quay.io/libpod/busybox.
Each “source” repository is treated independently; configurations for different “source”
repositories dont interact.
If the "mirrors" is not specified, the image will continue to be pulled from the specified
repository in the pull spec.
When multiple policies are defined for the same “source” repository, the sets of defined
mirrors will be merged together, preserving the relative order of the mirrors, if possible.
For example, if policy A has mirrors `a, b, c` and policy B has mirrors `c, d, e`, the
mirrors will be used in the order `a, b, c, d, e`. If the orders of mirror entries conflict
(e.g. `a, b` vs. `b, a`) the configuration is not rejected but the resulting order is unspecified.
Users who want to use a specific order of mirrors, should configure them into one list of mirrors using the expected order.
imageDigestMirrors allows images referenced by image digests in pods to be pulled from alternative mirrored repository locations. The image pull specification provided to the pod will be compared to the source locations described in imageDigestMirrors and the image may be pulled down from any of the mirrors in the list instead of the specified repository allowing administrators to choose a potentially faster mirror. To use mirrors to pull images using tag specification, users should configure a list of mirrors using "ImageTagMirrorSet" CRD.
If the image pull specification matches the repository of "source" in multiple imagedigestmirrorset objects, only the objects which define the most specific namespace match will be used. For example, if there are objects using quay.io/libpod and quay.io/libpod/busybox as the "source", only the objects using quay.io/libpod/busybox are going to apply for pull specification quay.io/libpod/busybox. Each “source” repository is treated independently; configurations for different “source” repositories dont interact.
If the "mirrors" is not specified, the image will continue to be pulled from the specified repository in the pull spec.
When multiple policies are defined for the same “source” repository, the sets of defined mirrors will be merged together, preserving the relative order of the mirrors, if possible. For example, if policy A has mirrors `a, b, c` and policy B has mirrors `c, d, e`, the mirrors will be used in the order `a, b, c, d, e`. If the orders of mirror entries conflict (e.g. `a, b` vs. `b, a`) the configuration is not rejected but the resulting order is unspecified. Users who want to use a specific order of mirrors, should configure them into one list of mirrors using the expected order.
--
Type::
@@ -159,43 +115,15 @@ Required::
| `mirrorSourcePolicy`
| `string`
| mirrorSourcePolicy defines the fallback policy if fails to pull image from the mirrors.
If unset, the image will continue to be pulled from the the repository in the pull spec.
sourcePolicy is valid configuration only when one or more mirrors are in the mirror list.
| mirrorSourcePolicy defines the fallback policy if fails to pull image from the mirrors. If unset, the image will continue to be pulled from the the repository in the pull spec. sourcePolicy is valid configuration only when one or more mirrors are in the mirror list.
| `mirrors`
| `array (string)`
| mirrors is zero or more locations that may also contain the same images. No mirror will be configured if not specified.
Images can be pulled from these mirrors only if they are referenced by their digests.
The mirrored location is obtained by replacing the part of the input reference that
matches source by the mirrors entry, e.g. for registry.redhat.io/product/repo reference,
a (source, mirror) pair *.redhat.io, mirror.local/redhat causes a mirror.local/redhat/product/repo
repository to be used.
The order of mirrors in this list is treated as the user's desired priority, while source
is by default considered lower priority than all mirrors.
If no mirror is specified or all image pulls from the mirror list fail, the image will continue to be
pulled from the repository in the pull spec unless explicitly prohibited by "mirrorSourcePolicy"
Other cluster configuration, including (but not limited to) other imageDigestMirrors objects,
may impact the exact order mirrors are contacted in, or some mirrors may be contacted
in parallel, so this should be considered a preference rather than a guarantee of ordering.
"mirrors" uses one of the following formats:
host[:port]
host[:port]/namespace[/namespace…]
host[:port]/namespace[/namespace…]/repo
for more information about the format, see the document about the location field:
https://github.com/containers/image/blob/main/docs/containers-registries.conf.5.md#choosing-a-registry-toml-table
| mirrors is zero or more locations that may also contain the same images. No mirror will be configured if not specified. Images can be pulled from these mirrors only if they are referenced by their digests. The mirrored location is obtained by replacing the part of the input reference that matches source by the mirrors entry, e.g. for registry.redhat.io/product/repo reference, a (source, mirror) pair *.redhat.io, mirror.local/redhat causes a mirror.local/redhat/product/repo repository to be used. The order of mirrors in this list is treated as the user's desired priority, while source is by default considered lower priority than all mirrors. If no mirror is specified or all image pulls from the mirror list fail, the image will continue to be pulled from the repository in the pull spec unless explicitly prohibited by "mirrorSourcePolicy" Other cluster configuration, including (but not limited to) other imageDigestMirrors objects, may impact the exact order mirrors are contacted in, or some mirrors may be contacted in parallel, so this should be considered a preference rather than a guarantee of ordering. "mirrors" uses one of the following formats: host[:port] host[:port]/namespace[/namespace…] host[:port]/namespace[/namespace…]/repo for more information about the format, see the document about the location field: https://github.com/containers/image/blob/main/docs/containers-registries.conf.5.md#choosing-a-registry-toml-table
| `source`
| `string`
| source matches the repository that users refer to, e.g. in image pull specifications. Setting source to a registry hostname
e.g. docker.io. quay.io, or registry.redhat.io, will match the image pull specification of corressponding registry.
"source" uses one of the following formats:
host[:port]
host[:port]/namespace[/namespace…]
host[:port]/namespace[/namespace…]/repo
[*.]host
for more information about the format, see the document about the location field:
https://github.com/containers/image/blob/main/docs/containers-registries.conf.5.md#choosing-a-registry-toml-table
| source matches the repository that users refer to, e.g. in image pull specifications. Setting source to a registry hostname e.g. docker.io. quay.io, or registry.redhat.io, will match the image pull specification of corressponding registry. "source" uses one of the following formats: host[:port] host[:port]/namespace[/namespace…] host[:port]/namespace[/namespace…]/repo [*.]host for more information about the format, see the document about the location field: https://github.com/containers/image/blob/main/docs/containers-registries.conf.5.md#choosing-a-registry-toml-table
|===
=== .status

View File

@@ -11,10 +11,8 @@ toc::[]
Description::
+
--
ImageTagMirrorSet holds cluster-wide information about how to handle registry mirror rules on using tag pull specification.
When multiple policies are defined, the outcome of the behavior is defined on each field.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
ImageTagMirrorSet holds cluster-wide information about how to handle registry mirror rules on using tag pull specification. When multiple policies are defined, the outcome of the behavior is defined on each field.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -70,31 +68,10 @@ Type::
| `imageTagMirrors`
| `array`
| imageTagMirrors allows images referenced by image tags in pods to be
pulled from alternative mirrored repository locations. The image pull specification
provided to the pod will be compared to the source locations described in imageTagMirrors
and the image may be pulled down from any of the mirrors in the list instead of the
specified repository allowing administrators to choose a potentially faster mirror.
To use mirrors to pull images using digest specification only, users should configure
a list of mirrors using "ImageDigestMirrorSet" CRD.
If the image pull specification matches the repository of "source" in multiple imagetagmirrorset objects,
only the objects which define the most specific namespace match will be used.
For example, if there are objects using quay.io/libpod and quay.io/libpod/busybox as
the "source", only the objects using quay.io/libpod/busybox are going to apply
for pull specification quay.io/libpod/busybox.
Each “source” repository is treated independently; configurations for different “source”
repositories dont interact.
If the "mirrors" is not specified, the image will continue to be pulled from the specified
repository in the pull spec.
When multiple policies are defined for the same “source” repository, the sets of defined
mirrors will be merged together, preserving the relative order of the mirrors, if possible.
For example, if policy A has mirrors `a, b, c` and policy B has mirrors `c, d, e`, the
mirrors will be used in the order `a, b, c, d, e`. If the orders of mirror entries conflict
(e.g. `a, b` vs. `b, a`) the configuration is not rejected but the resulting order is unspecified.
Users who want to use a deterministic order of mirrors, should configure them into one list of mirrors using the expected order.
| imageTagMirrors allows images referenced by image tags in pods to be pulled from alternative mirrored repository locations. The image pull specification provided to the pod will be compared to the source locations described in imageTagMirrors and the image may be pulled down from any of the mirrors in the list instead of the specified repository allowing administrators to choose a potentially faster mirror. To use mirrors to pull images using digest specification only, users should configure a list of mirrors using "ImageDigestMirrorSet" CRD.
If the image pull specification matches the repository of "source" in multiple imagetagmirrorset objects, only the objects which define the most specific namespace match will be used. For example, if there are objects using quay.io/libpod and quay.io/libpod/busybox as the "source", only the objects using quay.io/libpod/busybox are going to apply for pull specification quay.io/libpod/busybox. Each “source” repository is treated independently; configurations for different “source” repositories dont interact.
If the "mirrors" is not specified, the image will continue to be pulled from the specified repository in the pull spec.
When multiple policies are defined for the same “source” repository, the sets of defined mirrors will be merged together, preserving the relative order of the mirrors, if possible. For example, if policy A has mirrors `a, b, c` and policy B has mirrors `c, d, e`, the mirrors will be used in the order `a, b, c, d, e`. If the orders of mirror entries conflict (e.g. `a, b` vs. `b, a`) the configuration is not rejected but the resulting order is unspecified. Users who want to use a deterministic order of mirrors, should configure them into one list of mirrors using the expected order.
| `imageTagMirrors[]`
| `object`
@@ -105,31 +82,10 @@ Users who want to use a deterministic order of mirrors, should configure them in
Description::
+
--
imageTagMirrors allows images referenced by image tags in pods to be
pulled from alternative mirrored repository locations. The image pull specification
provided to the pod will be compared to the source locations described in imageTagMirrors
and the image may be pulled down from any of the mirrors in the list instead of the
specified repository allowing administrators to choose a potentially faster mirror.
To use mirrors to pull images using digest specification only, users should configure
a list of mirrors using "ImageDigestMirrorSet" CRD.
If the image pull specification matches the repository of "source" in multiple imagetagmirrorset objects,
only the objects which define the most specific namespace match will be used.
For example, if there are objects using quay.io/libpod and quay.io/libpod/busybox as
the "source", only the objects using quay.io/libpod/busybox are going to apply
for pull specification quay.io/libpod/busybox.
Each “source” repository is treated independently; configurations for different “source”
repositories dont interact.
If the "mirrors" is not specified, the image will continue to be pulled from the specified
repository in the pull spec.
When multiple policies are defined for the same “source” repository, the sets of defined
mirrors will be merged together, preserving the relative order of the mirrors, if possible.
For example, if policy A has mirrors `a, b, c` and policy B has mirrors `c, d, e`, the
mirrors will be used in the order `a, b, c, d, e`. If the orders of mirror entries conflict
(e.g. `a, b` vs. `b, a`) the configuration is not rejected but the resulting order is unspecified.
Users who want to use a deterministic order of mirrors, should configure them into one list of mirrors using the expected order.
imageTagMirrors allows images referenced by image tags in pods to be pulled from alternative mirrored repository locations. The image pull specification provided to the pod will be compared to the source locations described in imageTagMirrors and the image may be pulled down from any of the mirrors in the list instead of the specified repository allowing administrators to choose a potentially faster mirror. To use mirrors to pull images using digest specification only, users should configure a list of mirrors using "ImageDigestMirrorSet" CRD.
If the image pull specification matches the repository of "source" in multiple imagetagmirrorset objects, only the objects which define the most specific namespace match will be used. For example, if there are objects using quay.io/libpod and quay.io/libpod/busybox as the "source", only the objects using quay.io/libpod/busybox are going to apply for pull specification quay.io/libpod/busybox. Each “source” repository is treated independently; configurations for different “source” repositories dont interact.
If the "mirrors" is not specified, the image will continue to be pulled from the specified repository in the pull spec.
When multiple policies are defined for the same “source” repository, the sets of defined mirrors will be merged together, preserving the relative order of the mirrors, if possible. For example, if policy A has mirrors `a, b, c` and policy B has mirrors `c, d, e`, the mirrors will be used in the order `a, b, c, d, e`. If the orders of mirror entries conflict (e.g. `a, b` vs. `b, a`) the configuration is not rejected but the resulting order is unspecified. Users who want to use a deterministic order of mirrors, should configure them into one list of mirrors using the expected order.
--
Type::
@@ -159,45 +115,15 @@ Required::
| `mirrorSourcePolicy`
| `string`
| mirrorSourcePolicy defines the fallback policy if fails to pull image from the mirrors.
If unset, the image will continue to be pulled from the repository in the pull spec.
sourcePolicy is valid configuration only when one or more mirrors are in the mirror list.
| mirrorSourcePolicy defines the fallback policy if fails to pull image from the mirrors. If unset, the image will continue to be pulled from the repository in the pull spec. sourcePolicy is valid configuration only when one or more mirrors are in the mirror list.
| `mirrors`
| `array (string)`
| mirrors is zero or more locations that may also contain the same images. No mirror will be configured if not specified.
Images can be pulled from these mirrors only if they are referenced by their tags.
The mirrored location is obtained by replacing the part of the input reference that
matches source by the mirrors entry, e.g. for registry.redhat.io/product/repo reference,
a (source, mirror) pair *.redhat.io, mirror.local/redhat causes a mirror.local/redhat/product/repo
repository to be used.
Pulling images by tag can potentially yield different images, depending on which endpoint we pull from.
Configuring a list of mirrors using "ImageDigestMirrorSet" CRD and forcing digest-pulls for mirrors avoids that issue.
The order of mirrors in this list is treated as the user's desired priority, while source
is by default considered lower priority than all mirrors.
If no mirror is specified or all image pulls from the mirror list fail, the image will continue to be
pulled from the repository in the pull spec unless explicitly prohibited by "mirrorSourcePolicy".
Other cluster configuration, including (but not limited to) other imageTagMirrors objects,
may impact the exact order mirrors are contacted in, or some mirrors may be contacted
in parallel, so this should be considered a preference rather than a guarantee of ordering.
"mirrors" uses one of the following formats:
host[:port]
host[:port]/namespace[/namespace…]
host[:port]/namespace[/namespace…]/repo
for more information about the format, see the document about the location field:
https://github.com/containers/image/blob/main/docs/containers-registries.conf.5.md#choosing-a-registry-toml-table
| mirrors is zero or more locations that may also contain the same images. No mirror will be configured if not specified. Images can be pulled from these mirrors only if they are referenced by their tags. The mirrored location is obtained by replacing the part of the input reference that matches source by the mirrors entry, e.g. for registry.redhat.io/product/repo reference, a (source, mirror) pair *.redhat.io, mirror.local/redhat causes a mirror.local/redhat/product/repo repository to be used. Pulling images by tag can potentially yield different images, depending on which endpoint we pull from. Configuring a list of mirrors using "ImageDigestMirrorSet" CRD and forcing digest-pulls for mirrors avoids that issue. The order of mirrors in this list is treated as the user's desired priority, while source is by default considered lower priority than all mirrors. If no mirror is specified or all image pulls from the mirror list fail, the image will continue to be pulled from the repository in the pull spec unless explicitly prohibited by "mirrorSourcePolicy". Other cluster configuration, including (but not limited to) other imageTagMirrors objects, may impact the exact order mirrors are contacted in, or some mirrors may be contacted in parallel, so this should be considered a preference rather than a guarantee of ordering. "mirrors" uses one of the following formats: host[:port] host[:port]/namespace[/namespace…] host[:port]/namespace[/namespace…]/repo for more information about the format, see the document about the location field: https://github.com/containers/image/blob/main/docs/containers-registries.conf.5.md#choosing-a-registry-toml-table
| `source`
| `string`
| source matches the repository that users refer to, e.g. in image pull specifications. Setting source to a registry hostname
e.g. docker.io. quay.io, or registry.redhat.io, will match the image pull specification of corressponding registry.
"source" uses one of the following formats:
host[:port]
host[:port]/namespace[/namespace…]
host[:port]/namespace[/namespace…]/repo
[*.]host
for more information about the format, see the document about the location field:
https://github.com/containers/image/blob/main/docs/containers-registries.conf.5.md#choosing-a-registry-toml-table
| source matches the repository that users refer to, e.g. in image pull specifications. Setting source to a registry hostname e.g. docker.io. quay.io, or registry.redhat.io, will match the image pull specification of corressponding registry. "source" uses one of the following formats: host[:port] host[:port]/namespace[/namespace…] host[:port]/namespace[/namespace…]/repo [*.]host for more information about the format, see the document about the location field: https://github.com/containers/image/blob/main/docs/containers-registries.conf.5.md#choosing-a-registry-toml-table
|===
=== .status

View File

@@ -11,10 +11,8 @@ toc::[]
Description::
+
--
Ingress holds cluster-wide information about ingress, including the default ingress domain
used for routes. The canonical name is `cluster`.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
Ingress holds cluster-wide information about ingress, including the default ingress domain used for routes. The canonical name is `cluster`.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -70,24 +68,12 @@ Type::
| `appsDomain`
| `string`
| appsDomain is an optional domain to use instead of the one specified
in the domain field when a Route is created without specifying an explicit
host. If appsDomain is nonempty, this value is used to generate default
host values for Route. Unlike domain, appsDomain may be modified after
installation.
This assumes a new ingresscontroller has been setup with a wildcard
certificate.
| appsDomain is an optional domain to use instead of the one specified in the domain field when a Route is created without specifying an explicit host. If appsDomain is nonempty, this value is used to generate default host values for Route. Unlike domain, appsDomain may be modified after installation. This assumes a new ingresscontroller has been setup with a wildcard certificate.
| `componentRoutes`
| `array`
| componentRoutes is an optional list of routes that are managed by OpenShift components
that a cluster-admin is able to configure the hostname and serving certificate for.
The namespace and name of each route in this list should match an existing entry in the
status.componentRoutes list.
To determine the set of configurable Routes, look at namespace and name of entries in the
.status.componentRoutes list, where participating operators write the status of
configurable routes.
| componentRoutes is an optional list of routes that are managed by OpenShift components that a cluster-admin is able to configure the hostname and serving certificate for. The namespace and name of each route in this list should match an existing entry in the status.componentRoutes list.
To determine the set of configurable Routes, look at namespace and name of entries in the .status.componentRoutes list, where participating operators write the status of configurable routes.
| `componentRoutes[]`
| `object`
@@ -95,44 +81,21 @@ configurable routes.
| `domain`
| `string`
| domain is used to generate a default host name for a route when the
route's host name is empty. The generated host name will follow this
pattern: "<route-name>.<route-namespace>.<domain>".
It is also used as the default wildcard domain suffix for ingress. The
default ingresscontroller domain will follow this pattern: "*.<domain>".
Once set, changing domain is not currently supported.
| domain is used to generate a default host name for a route when the route's host name is empty. The generated host name will follow this pattern: "<route-name>.<route-namespace>.<domain>".
It is also used as the default wildcard domain suffix for ingress. The default ingresscontroller domain will follow this pattern: "*.<domain>".
Once set, changing domain is not currently supported.
| `loadBalancer`
| `object`
| loadBalancer contains the load balancer details in general which are not only specific to the underlying infrastructure
provider of the current cluster and are required for Ingress Controller to work on OpenShift.
| loadBalancer contains the load balancer details in general which are not only specific to the underlying infrastructure provider of the current cluster and are required for Ingress Controller to work on OpenShift.
| `requiredHSTSPolicies`
| `array`
| requiredHSTSPolicies specifies HSTS policies that are required to be set on newly created or updated routes
matching the domainPattern/s and namespaceSelector/s that are specified in the policy.
Each requiredHSTSPolicy must have at least a domainPattern and a maxAge to validate a route HSTS Policy route
annotation, and affect route admission.
A candidate route is checked for HSTS Policies if it has the HSTS Policy route annotation:
"haproxy.router.openshift.io/hsts_header"
E.g. haproxy.router.openshift.io/hsts_header: max-age=31536000;preload;includeSubDomains
- For each candidate route, if it matches a requiredHSTSPolicy domainPattern and optional namespaceSelector,
then the maxAge, preloadPolicy, and includeSubdomainsPolicy must be valid to be admitted. Otherwise, the route
is rejected.
- The first match, by domainPattern and optional namespaceSelector, in the ordering of the RequiredHSTSPolicies
determines the route's admission status.
- If the candidate route doesn't match any requiredHSTSPolicy domainPattern and optional namespaceSelector,
then it may use any HSTS Policy annotation.
The HSTS policy configuration may be changed after routes have already been created. An update to a previously
admitted route may then fail if the updated route does not conform to the updated HSTS policy configuration.
However, changing the HSTS policy configuration will not cause a route that is already admitted to stop working.
Note that if there are no RequiredHSTSPolicies, any HSTS Policy annotation on the route is valid.
| requiredHSTSPolicies specifies HSTS policies that are required to be set on newly created or updated routes matching the domainPattern/s and namespaceSelector/s that are specified in the policy. Each requiredHSTSPolicy must have at least a domainPattern and a maxAge to validate a route HSTS Policy route annotation, and affect route admission.
A candidate route is checked for HSTS Policies if it has the HSTS Policy route annotation: "haproxy.router.openshift.io/hsts_header" E.g. haproxy.router.openshift.io/hsts_header: max-age=31536000;preload;includeSubDomains
- For each candidate route, if it matches a requiredHSTSPolicy domainPattern and optional namespaceSelector, then the maxAge, preloadPolicy, and includeSubdomainsPolicy must be valid to be admitted. Otherwise, the route is rejected. - The first match, by domainPattern and optional namespaceSelector, in the ordering of the RequiredHSTSPolicies determines the route's admission status. - If the candidate route doesn't match any requiredHSTSPolicy domainPattern and optional namespaceSelector, then it may use any HSTS Policy annotation.
The HSTS policy configuration may be changed after routes have already been created. An update to a previously admitted route may then fail if the updated route does not conform to the updated HSTS policy configuration. However, changing the HSTS policy configuration will not cause a route that is already admitted to stop working.
Note that if there are no RequiredHSTSPolicies, any HSTS Policy annotation on the route is valid.
| `requiredHSTSPolicies[]`
| `object`
@@ -143,14 +106,8 @@ Note that if there are no RequiredHSTSPolicies, any HSTS Policy annotation on th
Description::
+
--
componentRoutes is an optional list of routes that are managed by OpenShift components
that a cluster-admin is able to configure the hostname and serving certificate for.
The namespace and name of each route in this list should match an existing entry in the
status.componentRoutes list.
To determine the set of configurable Routes, look at namespace and name of entries in the
.status.componentRoutes list, where participating operators write the status of
configurable routes.
componentRoutes is an optional list of routes that are managed by OpenShift components that a cluster-admin is able to configure the hostname and serving certificate for. The namespace and name of each route in this list should match an existing entry in the status.componentRoutes list.
To determine the set of configurable Routes, look at namespace and name of entries in the .status.componentRoutes list, where participating operators write the status of configurable routes.
--
Type::
@@ -186,34 +143,24 @@ Required::
| `name`
| `string`
| name is the logical name of the route to customize.
The namespace and name of this componentRoute must match a corresponding
entry in the list of status.componentRoutes if the route is to be customized.
| name is the logical name of the route to customize.
The namespace and name of this componentRoute must match a corresponding entry in the list of status.componentRoutes if the route is to be customized.
| `namespace`
| `string`
| namespace is the namespace of the route to customize.
The namespace and name of this componentRoute must match a corresponding
entry in the list of status.componentRoutes if the route is to be customized.
| namespace is the namespace of the route to customize.
The namespace and name of this componentRoute must match a corresponding entry in the list of status.componentRoutes if the route is to be customized.
| `servingCertKeyPairSecret`
| `object`
| servingCertKeyPairSecret is a reference to a secret of type `kubernetes.io/tls` in the openshift-config namespace.
The serving cert/key pair must match and will be used by the operator to fulfill the intent of serving with this name.
If the custom hostname uses the default routing suffix of the cluster,
the Secret specification for a serving certificate will not be needed.
| servingCertKeyPairSecret is a reference to a secret of type `kubernetes.io/tls` in the openshift-config namespace. The serving cert/key pair must match and will be used by the operator to fulfill the intent of serving with this name. If the custom hostname uses the default routing suffix of the cluster, the Secret specification for a serving certificate will not be needed.
|===
=== .spec.componentRoutes[].servingCertKeyPairSecret
Description::
+
--
servingCertKeyPairSecret is a reference to a secret of type `kubernetes.io/tls` in the openshift-config namespace.
The serving cert/key pair must match and will be used by the operator to fulfill the intent of serving with this name.
If the custom hostname uses the default routing suffix of the cluster,
the Secret specification for a serving certificate will not be needed.
servingCertKeyPairSecret is a reference to a secret of type `kubernetes.io/tls` in the openshift-config namespace. The serving cert/key pair must match and will be used by the operator to fulfill the intent of serving with this name. If the custom hostname uses the default routing suffix of the cluster, the Secret specification for a serving certificate will not be needed.
--
Type::
@@ -237,8 +184,7 @@ Required::
Description::
+
--
loadBalancer contains the load balancer details in general which are not only specific to the underlying infrastructure
provider of the current cluster and are required for Ingress Controller to work on OpenShift.
loadBalancer contains the load balancer details in general which are not only specific to the underlying infrastructure provider of the current cluster and are required for Ingress Controller to work on OpenShift.
--
Type::
@@ -253,20 +199,14 @@ Type::
| `platform`
| `object`
| platform holds configuration specific to the underlying
infrastructure provider for the ingress load balancers.
When omitted, this means the user has no opinion and the platform is left
to choose reasonable defaults. These defaults are subject to change over time.
| platform holds configuration specific to the underlying infrastructure provider for the ingress load balancers. When omitted, this means the user has no opinion and the platform is left to choose reasonable defaults. These defaults are subject to change over time.
|===
=== .spec.loadBalancer.platform
Description::
+
--
platform holds configuration specific to the underlying
infrastructure provider for the ingress load balancers.
When omitted, this means the user has no opinion and the platform is left
to choose reasonable defaults. These defaults are subject to change over time.
platform holds configuration specific to the underlying infrastructure provider for the ingress load balancers. When omitted, this means the user has no opinion and the platform is left to choose reasonable defaults. These defaults are subject to change over time.
--
Type::
@@ -285,11 +225,7 @@ Type::
| `type`
| `string`
| type is the underlying infrastructure provider for the cluster.
Allowed values are "AWS", "Azure", "BareMetal", "GCP", "Libvirt",
"OpenStack", "VSphere", "oVirt", "KubeVirt", "EquinixMetal", "PowerVS",
"AlibabaCloud", "Nutanix" and "None". Individual components may not support all platforms,
and must handle unrecognized platforms as None if they do not support that platform.
| type is the underlying infrastructure provider for the cluster. Allowed values are "AWS", "Azure", "BareMetal", "GCP", "Libvirt", "OpenStack", "VSphere", "oVirt", "KubeVirt", "EquinixMetal", "PowerVS", "AlibabaCloud", "Nutanix" and "None". Individual components may not support all platforms, and must handle unrecognized platforms as None if they do not support that platform.
|===
=== .spec.loadBalancer.platform.aws
@@ -313,49 +249,22 @@ Required::
| `type`
| `string`
| type allows user to set a load balancer type.
When this field is set the default ingresscontroller will get created using the specified LBType.
If this field is not set then the default ingress controller of LBType Classic will be created.
Valid values are:
* "Classic": A Classic Load Balancer that makes routing decisions at either
the transport layer (TCP/SSL) or the application layer (HTTP/HTTPS). See
the following for additional details:
https://docs.aws.amazon.com/AmazonECS/latest/developerguide/load-balancer-types.html#clb
* "NLB": A Network Load Balancer that makes routing decisions at the
transport layer (TCP/SSL). See the following for additional details:
https://docs.aws.amazon.com/AmazonECS/latest/developerguide/load-balancer-types.html#nlb
| type allows user to set a load balancer type. When this field is set the default ingresscontroller will get created using the specified LBType. If this field is not set then the default ingress controller of LBType Classic will be created. Valid values are:
* "Classic": A Classic Load Balancer that makes routing decisions at either the transport layer (TCP/SSL) or the application layer (HTTP/HTTPS). See the following for additional details:
https://docs.aws.amazon.com/AmazonECS/latest/developerguide/load-balancer-types.html#clb
* "NLB": A Network Load Balancer that makes routing decisions at the transport layer (TCP/SSL). See the following for additional details:
https://docs.aws.amazon.com/AmazonECS/latest/developerguide/load-balancer-types.html#nlb
|===
=== .spec.requiredHSTSPolicies
Description::
+
--
requiredHSTSPolicies specifies HSTS policies that are required to be set on newly created or updated routes
matching the domainPattern/s and namespaceSelector/s that are specified in the policy.
Each requiredHSTSPolicy must have at least a domainPattern and a maxAge to validate a route HSTS Policy route
annotation, and affect route admission.
A candidate route is checked for HSTS Policies if it has the HSTS Policy route annotation:
"haproxy.router.openshift.io/hsts_header"
E.g. haproxy.router.openshift.io/hsts_header: max-age=31536000;preload;includeSubDomains
- For each candidate route, if it matches a requiredHSTSPolicy domainPattern and optional namespaceSelector,
then the maxAge, preloadPolicy, and includeSubdomainsPolicy must be valid to be admitted. Otherwise, the route
is rejected.
- The first match, by domainPattern and optional namespaceSelector, in the ordering of the RequiredHSTSPolicies
determines the route's admission status.
- If the candidate route doesn't match any requiredHSTSPolicy domainPattern and optional namespaceSelector,
then it may use any HSTS Policy annotation.
The HSTS policy configuration may be changed after routes have already been created. An update to a previously
admitted route may then fail if the updated route does not conform to the updated HSTS policy configuration.
However, changing the HSTS policy configuration will not cause a route that is already admitted to stop working.
Note that if there are no RequiredHSTSPolicies, any HSTS Policy annotation on the route is valid.
requiredHSTSPolicies specifies HSTS policies that are required to be set on newly created or updated routes matching the domainPattern/s and namespaceSelector/s that are specified in the policy. Each requiredHSTSPolicy must have at least a domainPattern and a maxAge to validate a route HSTS Policy route annotation, and affect route admission.
A candidate route is checked for HSTS Policies if it has the HSTS Policy route annotation: "haproxy.router.openshift.io/hsts_header" E.g. haproxy.router.openshift.io/hsts_header: max-age=31536000;preload;includeSubDomains
- For each candidate route, if it matches a requiredHSTSPolicy domainPattern and optional namespaceSelector, then the maxAge, preloadPolicy, and includeSubdomainsPolicy must be valid to be admitted. Otherwise, the route is rejected. - The first match, by domainPattern and optional namespaceSelector, in the ordering of the RequiredHSTSPolicies determines the route's admission status. - If the candidate route doesn't match any requiredHSTSPolicy domainPattern and optional namespaceSelector, then it may use any HSTS Policy annotation.
The HSTS policy configuration may be changed after routes have already been created. An update to a previously admitted route may then fail if the updated route does not conform to the updated HSTS policy configuration. However, changing the HSTS policy configuration will not cause a route that is already admitted to stop working.
Note that if there are no RequiredHSTSPolicies, any HSTS Policy annotation on the route is valid.
--
Type::
@@ -385,52 +294,31 @@ Required::
| `domainPatterns`
| `array (string)`
| domainPatterns is a list of domains for which the desired HSTS annotations are required.
If domainPatterns is specified and a route is created with a spec.host matching one of the domains,
the route must specify the HSTS Policy components described in the matching RequiredHSTSPolicy.
The use of wildcards is allowed like this: *.foo.com matches everything under foo.com.
foo.com only matches foo.com, so to cover foo.com and everything under it, you must specify *both*.
| domainPatterns is a list of domains for which the desired HSTS annotations are required. If domainPatterns is specified and a route is created with a spec.host matching one of the domains, the route must specify the HSTS Policy components described in the matching RequiredHSTSPolicy.
The use of wildcards is allowed like this: *.foo.com matches everything under foo.com. foo.com only matches foo.com, so to cover foo.com and everything under it, you must specify *both*.
| `includeSubDomainsPolicy`
| `string`
| includeSubDomainsPolicy means the HSTS Policy should apply to any subdomains of the host's
domain name. Thus, for the host bar.foo.com, if includeSubDomainsPolicy was set to RequireIncludeSubDomains:
- the host app.bar.foo.com would inherit the HSTS Policy of bar.foo.com
- the host bar.foo.com would inherit the HSTS Policy of bar.foo.com
- the host foo.com would NOT inherit the HSTS Policy of bar.foo.com
- the host def.foo.com would NOT inherit the HSTS Policy of bar.foo.com
| includeSubDomainsPolicy means the HSTS Policy should apply to any subdomains of the host's domain name. Thus, for the host bar.foo.com, if includeSubDomainsPolicy was set to RequireIncludeSubDomains: - the host app.bar.foo.com would inherit the HSTS Policy of bar.foo.com - the host bar.foo.com would inherit the HSTS Policy of bar.foo.com - the host foo.com would NOT inherit the HSTS Policy of bar.foo.com - the host def.foo.com would NOT inherit the HSTS Policy of bar.foo.com
| `maxAge`
| `object`
| maxAge is the delta time range in seconds during which hosts are regarded as HSTS hosts.
If set to 0, it negates the effect, and hosts are removed as HSTS hosts.
If set to 0 and includeSubdomains is specified, all subdomains of the host are also removed as HSTS hosts.
maxAge is a time-to-live value, and if this policy is not refreshed on a client, the HSTS
policy will eventually expire on that client.
| maxAge is the delta time range in seconds during which hosts are regarded as HSTS hosts. If set to 0, it negates the effect, and hosts are removed as HSTS hosts. If set to 0 and includeSubdomains is specified, all subdomains of the host are also removed as HSTS hosts. maxAge is a time-to-live value, and if this policy is not refreshed on a client, the HSTS policy will eventually expire on that client.
| `namespaceSelector`
| `object`
| namespaceSelector specifies a label selector such that the policy applies only to those routes that
are in namespaces with labels that match the selector, and are in one of the DomainPatterns.
Defaults to the empty LabelSelector, which matches everything.
| namespaceSelector specifies a label selector such that the policy applies only to those routes that are in namespaces with labels that match the selector, and are in one of the DomainPatterns. Defaults to the empty LabelSelector, which matches everything.
| `preloadPolicy`
| `string`
| preloadPolicy directs the client to include hosts in its host preload list so that
it never needs to do an initial load to get the HSTS header (note that this is not defined
in RFC 6797 and is therefore client implementation-dependent).
| preloadPolicy directs the client to include hosts in its host preload list so that it never needs to do an initial load to get the HSTS header (note that this is not defined in RFC 6797 and is therefore client implementation-dependent).
|===
=== .spec.requiredHSTSPolicies[].maxAge
Description::
+
--
maxAge is the delta time range in seconds during which hosts are regarded as HSTS hosts.
If set to 0, it negates the effect, and hosts are removed as HSTS hosts.
If set to 0 and includeSubdomains is specified, all subdomains of the host are also removed as HSTS hosts.
maxAge is a time-to-live value, and if this policy is not refreshed on a client, the HSTS
policy will eventually expire on that client.
maxAge is the delta time range in seconds during which hosts are regarded as HSTS hosts. If set to 0, it negates the effect, and hosts are removed as HSTS hosts. If set to 0 and includeSubdomains is specified, all subdomains of the host are also removed as HSTS hosts. maxAge is a time-to-live value, and if this policy is not refreshed on a client, the HSTS policy will eventually expire on that client.
--
Type::
@@ -445,24 +333,18 @@ Type::
| `largestMaxAge`
| `integer`
| The largest allowed value (in seconds) of the RequiredHSTSPolicy max-age
This value can be left unspecified, in which case no upper limit is enforced.
| The largest allowed value (in seconds) of the RequiredHSTSPolicy max-age This value can be left unspecified, in which case no upper limit is enforced.
| `smallestMaxAge`
| `integer`
| The smallest allowed value (in seconds) of the RequiredHSTSPolicy max-age
Setting max-age=0 allows the deletion of an existing HSTS header from a host. This is a necessary
tool for administrators to quickly correct mistakes.
This value can be left unspecified, in which case no lower limit is enforced.
| The smallest allowed value (in seconds) of the RequiredHSTSPolicy max-age Setting max-age=0 allows the deletion of an existing HSTS header from a host. This is a necessary tool for administrators to quickly correct mistakes. This value can be left unspecified, in which case no lower limit is enforced.
|===
=== .spec.requiredHSTSPolicies[].namespaceSelector
Description::
+
--
namespaceSelector specifies a label selector such that the policy applies only to those routes that
are in namespaces with labels that match the selector, and are in one of the DomainPatterns.
Defaults to the empty LabelSelector, which matches everything.
namespaceSelector specifies a label selector such that the policy applies only to those routes that are in namespaces with labels that match the selector, and are in one of the DomainPatterns. Defaults to the empty LabelSelector, which matches everything.
--
Type::
@@ -481,14 +363,11 @@ Type::
| `matchExpressions[]`
| `object`
| A label selector requirement is a selector that contains values, a key, and an operator that
relates the key and values.
| A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
| `matchLabels`
| `object (string)`
| matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
map is equivalent to an element of matchExpressions, whose key field is "key", the
operator is "In", and the values array contains only "value". The requirements are ANDed.
| matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
|===
=== .spec.requiredHSTSPolicies[].namespaceSelector.matchExpressions
@@ -508,8 +387,7 @@ Type::
Description::
+
--
A label selector requirement is a selector that contains values, a key, and an operator that
relates the key and values.
A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
--
Type::
@@ -531,15 +409,11 @@ Required::
| `operator`
| `string`
| operator represents a key's relationship to a set of values.
Valid operators are In, NotIn, Exists and DoesNotExist.
| operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
| `values`
| `array (string)`
| values is an array of string values. If the operator is In or NotIn,
the values array must be non-empty. If the operator is Exists or DoesNotExist,
the values array must be empty. This array is replaced during a strategic
merge patch.
| values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
|===
=== .status
@@ -561,8 +435,7 @@ Type::
| `componentRoutes`
| `array`
| componentRoutes is where participating operators place the current route status for routes whose
hostnames and serving certificates can be customized by the cluster-admin.
| componentRoutes is where participating operators place the current route status for routes whose hostnames and serving certificates can be customized by the cluster-admin.
| `componentRoutes[]`
| `object`
@@ -570,26 +443,17 @@ hostnames and serving certificates can be customized by the cluster-admin.
| `defaultPlacement`
| `string`
| defaultPlacement is set at installation time to control which
nodes will host the ingress router pods by default. The options are
control-plane nodes or worker nodes.
This field works by dictating how the Cluster Ingress Operator will
consider unset replicas and nodePlacement fields in IngressController
resources when creating the corresponding Deployments.
See the documentation for the IngressController replicas and nodePlacement
fields for more information.
When omitted, the default value is Workers
| defaultPlacement is set at installation time to control which nodes will host the ingress router pods by default. The options are control-plane nodes or worker nodes.
This field works by dictating how the Cluster Ingress Operator will consider unset replicas and nodePlacement fields in IngressController resources when creating the corresponding Deployments.
See the documentation for the IngressController replicas and nodePlacement fields for more information.
When omitted, the default value is Workers
|===
=== .status.componentRoutes
Description::
+
--
componentRoutes is where participating operators place the current route status for routes whose
hostnames and serving certificates can be customized by the cluster-admin.
componentRoutes is where participating operators place the current route status for routes whose hostnames and serving certificates can be customized by the cluster-admin.
--
Type::
@@ -622,22 +486,17 @@ Required::
| `conditions`
| `array`
| conditions are used to communicate the state of the componentRoutes entry.
Supported conditions include Available, Degraded and Progressing.
If available is true, the content served by the route can be accessed by users. This includes cases
where a default may continue to serve content while the customized route specified by the cluster-admin
is being configured.
If Degraded is true, that means something has gone wrong trying to handle the componentRoutes entry.
The currentHostnames field may or may not be in effect.
If Progressing is true, that means the component is taking some action related to the componentRoutes entry.
| conditions are used to communicate the state of the componentRoutes entry.
Supported conditions include Available, Degraded and Progressing.
If available is true, the content served by the route can be accessed by users. This includes cases where a default may continue to serve content while the customized route specified by the cluster-admin is being configured.
If Degraded is true, that means something has gone wrong trying to handle the componentRoutes entry. The currentHostnames field may or may not be in effect.
If Progressing is true, that means the component is taking some action related to the componentRoutes entry.
| `conditions[]`
| `object`
| Condition contains details for one aspect of the current state of this API Resource.
| Condition contains details for one aspect of the current state of this API Resource. --- This struct is intended for direct use as an array at the field path .status.conditions. For example,
type FooStatus struct{ // Represents the observations of a foo's current state. // Known .status.conditions.type are: "Available", "Progressing", and "Degraded" // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"`
// other fields }
| `consumingUsers`
| `array (string)`
@@ -645,8 +504,7 @@ If Progressing is true, that means the component is taking some action related t
| `currentHostnames`
| `array (string)`
| currentHostnames is the list of current names used by the route. Typically, this list should consist of a single
hostname, but if multiple hostnames are supported by the route the operator may write multiple entries to this list.
| currentHostnames is the list of current names used by the route. Typically, this list should consist of a single hostname, but if multiple hostnames are supported by the route the operator may write multiple entries to this list.
| `defaultHostname`
| `string`
@@ -654,19 +512,13 @@ hostname, but if multiple hostnames are supported by the route the operator may
| `name`
| `string`
| name is the logical name of the route to customize. It does not have to be the actual name of a route resource
but it cannot be renamed.
The namespace and name of this componentRoute must match a corresponding
entry in the list of spec.componentRoutes if the route is to be customized.
| name is the logical name of the route to customize. It does not have to be the actual name of a route resource but it cannot be renamed.
The namespace and name of this componentRoute must match a corresponding entry in the list of spec.componentRoutes if the route is to be customized.
| `namespace`
| `string`
| namespace is the namespace of the route to customize. It must be a real namespace. Using an actual namespace
ensures that no two components will conflict and the same component can be installed multiple times.
The namespace and name of this componentRoute must match a corresponding
entry in the list of spec.componentRoutes if the route is to be customized.
| namespace is the namespace of the route to customize. It must be a real namespace. Using an actual namespace ensures that no two components will conflict and the same component can be installed multiple times.
The namespace and name of this componentRoute must match a corresponding entry in the list of spec.componentRoutes if the route is to be customized.
| `relatedObjects`
| `array`
@@ -681,18 +533,11 @@ entry in the list of spec.componentRoutes if the route is to be customized.
Description::
+
--
conditions are used to communicate the state of the componentRoutes entry.
Supported conditions include Available, Degraded and Progressing.
If available is true, the content served by the route can be accessed by users. This includes cases
where a default may continue to serve content while the customized route specified by the cluster-admin
is being configured.
If Degraded is true, that means something has gone wrong trying to handle the componentRoutes entry.
The currentHostnames field may or may not be in effect.
If Progressing is true, that means the component is taking some action related to the componentRoutes entry.
conditions are used to communicate the state of the componentRoutes entry.
Supported conditions include Available, Degraded and Progressing.
If available is true, the content served by the route can be accessed by users. This includes cases where a default may continue to serve content while the customized route specified by the cluster-admin is being configured.
If Degraded is true, that means something has gone wrong trying to handle the componentRoutes entry. The currentHostnames field may or may not be in effect.
If Progressing is true, that means the component is taking some action related to the componentRoutes entry.
--
Type::
@@ -705,7 +550,9 @@ Type::
Description::
+
--
Condition contains details for one aspect of the current state of this API Resource.
Condition contains details for one aspect of the current state of this API Resource. --- This struct is intended for direct use as an array at the field path .status.conditions. For example,
type FooStatus struct{ // Represents the observations of a foo's current state. // Known .status.conditions.type are: "Available", "Progressing", and "Degraded" // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"`
// other fields }
--
Type::
@@ -726,27 +573,19 @@ Required::
| `lastTransitionTime`
| `string`
| lastTransitionTime is the last time the condition transitioned from one status to another.
This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
| lastTransitionTime is the last time the condition transitioned from one status to another. This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
| `message`
| `string`
| message is a human readable message indicating details about the transition.
This may be an empty string.
| message is a human readable message indicating details about the transition. This may be an empty string.
| `observedGeneration`
| `integer`
| observedGeneration represents the .metadata.generation that the condition was set based upon.
For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date
with respect to the current state of the instance.
| observedGeneration represents the .metadata.generation that the condition was set based upon. For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date with respect to the current state of the instance.
| `reason`
| `string`
| reason contains a programmatic identifier indicating the reason for the condition's last transition.
Producers of specific condition types may define expected values and meanings for this field,
and whether the values are considered a guaranteed API.
The value should be a CamelCase string.
This field may not be empty.
| reason contains a programmatic identifier indicating the reason for the condition's last transition. Producers of specific condition types may define expected values and meanings for this field, and whether the values are considered a guaranteed API. The value should be a CamelCase string. This field may not be empty.
| `status`
| `string`
@@ -754,7 +593,7 @@ This field may not be empty.
| `type`
| `string`
| type of condition in CamelCase or in foo.example.com/CamelCase.
| type of condition in CamelCase or in foo.example.com/CamelCase. --- Many .condition.type values are consistent across resources like Available, but because arbitrary conditions can be useful (see .node.status.conditions), the ability to deconflict is important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
|===
=== .status.componentRoutes[].relatedObjects

View File

@@ -11,10 +11,8 @@ toc::[]
Description::
+
--
Network holds cluster-wide information about Network. The canonical name is `cluster`. It is used to configure the desired network configuration, such as: IP address pools for services/pod IPs, network plugin, etc.
Please view network.spec for an explanation on what applies when configuring this resource.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
Network holds cluster-wide information about Network. The canonical name is `cluster`. It is used to configure the desired network configuration, such as: IP address pools for services/pod IPs, network plugin, etc. Please view network.spec for an explanation on what applies when configuring this resource.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -44,10 +42,7 @@ Required::
| `spec`
| `object`
| spec holds user settable values for configuration.
As a general rule, this SHOULD NOT be read directly. Instead, you should
consume the NetworkStatus, as it indicates the currently deployed configuration.
Currently, most spec fields are immutable after installation. Please view the individual ones for further details on each.
| spec holds user settable values for configuration. As a general rule, this SHOULD NOT be read directly. Instead, you should consume the NetworkStatus, as it indicates the currently deployed configuration. Currently, most spec fields are immutable after installation. Please view the individual ones for further details on each.
| `status`
| `object`
@@ -58,10 +53,7 @@ Currently, most spec fields are immutable after installation. Please view the in
Description::
+
--
spec holds user settable values for configuration.
As a general rule, this SHOULD NOT be read directly. Instead, you should
consume the NetworkStatus, as it indicates the currently deployed configuration.
Currently, most spec fields are immutable after installation. Please view the individual ones for further details on each.
spec holds user settable values for configuration. As a general rule, this SHOULD NOT be read directly. Instead, you should consume the NetworkStatus, as it indicates the currently deployed configuration. Currently, most spec fields are immutable after installation. Please view the individual ones for further details on each.
--
Type::
@@ -76,60 +68,39 @@ Type::
| `clusterNetwork`
| `array`
| IP address pool to use for pod IPs.
This field is immutable after installation.
| IP address pool to use for pod IPs. This field is immutable after installation.
| `clusterNetwork[]`
| `object`
| ClusterNetworkEntry is a contiguous block of IP addresses from which pod IPs
are allocated.
| ClusterNetworkEntry is a contiguous block of IP addresses from which pod IPs are allocated.
| `externalIP`
| `object`
| externalIP defines configuration for controllers that
affect Service.ExternalIP. If nil, then ExternalIP is
not allowed to be set.
| externalIP defines configuration for controllers that affect Service.ExternalIP. If nil, then ExternalIP is not allowed to be set.
| `networkDiagnostics`
| `object`
| networkDiagnostics defines network diagnostics configuration.
Takes precedence over spec.disableNetworkDiagnostics in network.operator.openshift.io.
If networkDiagnostics is not specified or is empty,
and the spec.disableNetworkDiagnostics flag in network.operator.openshift.io is set to true,
the network diagnostics feature will be disabled.
| networkDiagnostics defines network diagnostics configuration.
Takes precedence over spec.disableNetworkDiagnostics in network.operator.openshift.io. If networkDiagnostics is not specified or is empty, and the spec.disableNetworkDiagnostics flag in network.operator.openshift.io is set to true, the network diagnostics feature will be disabled.
| `networkType`
| `string`
| NetworkType is the plugin that is to be deployed (e.g. OVNKubernetes).
This should match a value that the cluster-network-operator understands,
or else no networking will be installed.
Currently supported values are:
- OVNKubernetes
This field is immutable after installation.
| NetworkType is the plugin that is to be deployed (e.g. OVNKubernetes). This should match a value that the cluster-network-operator understands, or else no networking will be installed. Currently supported values are: - OVNKubernetes This field is immutable after installation.
| `serviceNetwork`
| `array (string)`
| IP address pool for services.
Currently, we only support a single entry here.
This field is immutable after installation.
| IP address pool for services. Currently, we only support a single entry here. This field is immutable after installation.
| `serviceNodePortRange`
| `string`
| The port range allowed for Services of type NodePort.
If not specified, the default of 30000-32767 will be used.
Such Services without a NodePort specified will have one
automatically allocated from this range.
This parameter can be updated after the cluster is
installed.
| The port range allowed for Services of type NodePort. If not specified, the default of 30000-32767 will be used. Such Services without a NodePort specified will have one automatically allocated from this range. This parameter can be updated after the cluster is installed.
|===
=== .spec.clusterNetwork
Description::
+
--
IP address pool to use for pod IPs.
This field is immutable after installation.
IP address pool to use for pod IPs. This field is immutable after installation.
--
Type::
@@ -142,8 +113,7 @@ Type::
Description::
+
--
ClusterNetworkEntry is a contiguous block of IP addresses from which pod IPs
are allocated.
ClusterNetworkEntry is a contiguous block of IP addresses from which pod IPs are allocated.
--
Type::
@@ -162,17 +132,14 @@ Type::
| `hostPrefix`
| `integer`
| The size (prefix) of block to allocate to each node. If this
field is not used by the plugin, it can be left unset.
| The size (prefix) of block to allocate to each node. If this field is not used by the plugin, it can be left unset.
|===
=== .spec.externalIP
Description::
+
--
externalIP defines configuration for controllers that
affect Service.ExternalIP. If nil, then ExternalIP is
not allowed to be set.
externalIP defines configuration for controllers that affect Service.ExternalIP. If nil, then ExternalIP is not allowed to be set.
--
Type::
@@ -187,26 +154,18 @@ Type::
| `autoAssignCIDRs`
| `array (string)`
| autoAssignCIDRs is a list of CIDRs from which to automatically assign
Service.ExternalIP. These are assigned when the service is of type
LoadBalancer. In general, this is only useful for bare-metal clusters.
In Openshift 3.x, this was misleadingly called "IngressIPs".
Automatically assigned External IPs are not affected by any
ExternalIPPolicy rules.
Currently, only one entry may be provided.
| autoAssignCIDRs is a list of CIDRs from which to automatically assign Service.ExternalIP. These are assigned when the service is of type LoadBalancer. In general, this is only useful for bare-metal clusters. In Openshift 3.x, this was misleadingly called "IngressIPs". Automatically assigned External IPs are not affected by any ExternalIPPolicy rules. Currently, only one entry may be provided.
| `policy`
| `object`
| policy is a set of restrictions applied to the ExternalIP field.
If nil or empty, then ExternalIP is not allowed to be set.
| policy is a set of restrictions applied to the ExternalIP field. If nil or empty, then ExternalIP is not allowed to be set.
|===
=== .spec.externalIP.policy
Description::
+
--
policy is a set of restrictions applied to the ExternalIP field.
If nil or empty, then ExternalIP is not allowed to be set.
policy is a set of restrictions applied to the ExternalIP field. If nil or empty, then ExternalIP is not allowed to be set.
--
Type::
@@ -225,20 +184,15 @@ Type::
| `rejectedCIDRs`
| `array (string)`
| rejectedCIDRs is the list of disallowed CIDRs. These take precedence
over allowedCIDRs.
| rejectedCIDRs is the list of disallowed CIDRs. These take precedence over allowedCIDRs.
|===
=== .spec.networkDiagnostics
Description::
+
--
networkDiagnostics defines network diagnostics configuration.
Takes precedence over spec.disableNetworkDiagnostics in network.operator.openshift.io.
If networkDiagnostics is not specified or is empty,
and the spec.disableNetworkDiagnostics flag in network.operator.openshift.io is set to true,
the network diagnostics feature will be disabled.
networkDiagnostics defines network diagnostics configuration.
Takes precedence over spec.disableNetworkDiagnostics in network.operator.openshift.io. If networkDiagnostics is not specified or is empty, and the spec.disableNetworkDiagnostics flag in network.operator.openshift.io is set to true, the network diagnostics feature will be disabled.
--
Type::
@@ -253,32 +207,26 @@ Type::
| `mode`
| `string`
| mode controls the network diagnostics mode
When omitted, this means the user has no opinion and the platform is left
to choose reasonable defaults. These defaults are subject to change over time.
The current default is All.
| mode controls the network diagnostics mode
When omitted, this means the user has no opinion and the platform is left to choose reasonable defaults. These defaults are subject to change over time. The current default is All.
| `sourcePlacement`
| `object`
| sourcePlacement controls the scheduling of network diagnostics source deployment
See NetworkDiagnosticsSourcePlacement for more details about default values.
| sourcePlacement controls the scheduling of network diagnostics source deployment
See NetworkDiagnosticsSourcePlacement for more details about default values.
| `targetPlacement`
| `object`
| targetPlacement controls the scheduling of network diagnostics target daemonset
See NetworkDiagnosticsTargetPlacement for more details about default values.
| targetPlacement controls the scheduling of network diagnostics target daemonset
See NetworkDiagnosticsTargetPlacement for more details about default values.
|===
=== .spec.networkDiagnostics.sourcePlacement
Description::
+
--
sourcePlacement controls the scheduling of network diagnostics source deployment
See NetworkDiagnosticsSourcePlacement for more details about default values.
sourcePlacement controls the scheduling of network diagnostics source deployment
See NetworkDiagnosticsSourcePlacement for more details about default values.
--
Type::
@@ -293,35 +241,25 @@ Type::
| `nodeSelector`
| `object (string)`
| nodeSelector is the node selector applied to network diagnostics components
When omitted, this means the user has no opinion and the platform is left
to choose reasonable defaults. These defaults are subject to change over time.
The current default is `kubernetes.io/os: linux`.
| nodeSelector is the node selector applied to network diagnostics components
When omitted, this means the user has no opinion and the platform is left to choose reasonable defaults. These defaults are subject to change over time. The current default is `kubernetes.io/os: linux`.
| `tolerations`
| `array`
| tolerations is a list of tolerations applied to network diagnostics components
When omitted, this means the user has no opinion and the platform is left
to choose reasonable defaults. These defaults are subject to change over time.
The current default is an empty list.
| tolerations is a list of tolerations applied to network diagnostics components
When omitted, this means the user has no opinion and the platform is left to choose reasonable defaults. These defaults are subject to change over time. The current default is an empty list.
| `tolerations[]`
| `object`
| The pod this Toleration is attached to tolerates any taint that matches
the triple <key,value,effect> using the matching operator <operator>.
| The pod this Toleration is attached to tolerates any taint that matches the triple <key,value,effect> using the matching operator <operator>.
|===
=== .spec.networkDiagnostics.sourcePlacement.tolerations
Description::
+
--
tolerations is a list of tolerations applied to network diagnostics components
When omitted, this means the user has no opinion and the platform is left
to choose reasonable defaults. These defaults are subject to change over time.
The current default is an empty list.
tolerations is a list of tolerations applied to network diagnostics components
When omitted, this means the user has no opinion and the platform is left to choose reasonable defaults. These defaults are subject to change over time. The current default is an empty list.
--
Type::
@@ -334,8 +272,7 @@ Type::
Description::
+
--
The pod this Toleration is attached to tolerates any taint that matches
the triple <key,value,effect> using the matching operator <operator>.
The pod this Toleration is attached to tolerates any taint that matches the triple <key,value,effect> using the matching operator <operator>.
--
Type::
@@ -350,41 +287,31 @@ Type::
| `effect`
| `string`
| Effect indicates the taint effect to match. Empty means match all taint effects.
When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute.
| Effect indicates the taint effect to match. Empty means match all taint effects. When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute.
| `key`
| `string`
| Key is the taint key that the toleration applies to. Empty means match all taint keys.
If the key is empty, operator must be Exists; this combination means to match all values and all keys.
| Key is the taint key that the toleration applies to. Empty means match all taint keys. If the key is empty, operator must be Exists; this combination means to match all values and all keys.
| `operator`
| `string`
| Operator represents a key's relationship to the value.
Valid operators are Exists and Equal. Defaults to Equal.
Exists is equivalent to wildcard for value, so that a pod can
tolerate all taints of a particular category.
| Operator represents a key's relationship to the value. Valid operators are Exists and Equal. Defaults to Equal. Exists is equivalent to wildcard for value, so that a pod can tolerate all taints of a particular category.
| `tolerationSeconds`
| `integer`
| TolerationSeconds represents the period of time the toleration (which must be
of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default,
it is not set, which means tolerate the taint forever (do not evict). Zero and
negative values will be treated as 0 (evict immediately) by the system.
| TolerationSeconds represents the period of time the toleration (which must be of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default, it is not set, which means tolerate the taint forever (do not evict). Zero and negative values will be treated as 0 (evict immediately) by the system.
| `value`
| `string`
| Value is the taint value the toleration matches to.
If the operator is Exists, the value should be empty, otherwise just a regular string.
| Value is the taint value the toleration matches to. If the operator is Exists, the value should be empty, otherwise just a regular string.
|===
=== .spec.networkDiagnostics.targetPlacement
Description::
+
--
targetPlacement controls the scheduling of network diagnostics target daemonset
See NetworkDiagnosticsTargetPlacement for more details about default values.
targetPlacement controls the scheduling of network diagnostics target daemonset
See NetworkDiagnosticsTargetPlacement for more details about default values.
--
Type::
@@ -399,35 +326,25 @@ Type::
| `nodeSelector`
| `object (string)`
| nodeSelector is the node selector applied to network diagnostics components
When omitted, this means the user has no opinion and the platform is left
to choose reasonable defaults. These defaults are subject to change over time.
The current default is `kubernetes.io/os: linux`.
| nodeSelector is the node selector applied to network diagnostics components
When omitted, this means the user has no opinion and the platform is left to choose reasonable defaults. These defaults are subject to change over time. The current default is `kubernetes.io/os: linux`.
| `tolerations`
| `array`
| tolerations is a list of tolerations applied to network diagnostics components
When omitted, this means the user has no opinion and the platform is left
to choose reasonable defaults. These defaults are subject to change over time.
The current default is `- operator: "Exists"` which means that all taints are tolerated.
| tolerations is a list of tolerations applied to network diagnostics components
When omitted, this means the user has no opinion and the platform is left to choose reasonable defaults. These defaults are subject to change over time. The current default is `- operator: "Exists"` which means that all taints are tolerated.
| `tolerations[]`
| `object`
| The pod this Toleration is attached to tolerates any taint that matches
the triple <key,value,effect> using the matching operator <operator>.
| The pod this Toleration is attached to tolerates any taint that matches the triple <key,value,effect> using the matching operator <operator>.
|===
=== .spec.networkDiagnostics.targetPlacement.tolerations
Description::
+
--
tolerations is a list of tolerations applied to network diagnostics components
When omitted, this means the user has no opinion and the platform is left
to choose reasonable defaults. These defaults are subject to change over time.
The current default is `- operator: "Exists"` which means that all taints are tolerated.
tolerations is a list of tolerations applied to network diagnostics components
When omitted, this means the user has no opinion and the platform is left to choose reasonable defaults. These defaults are subject to change over time. The current default is `- operator: "Exists"` which means that all taints are tolerated.
--
Type::
@@ -440,8 +357,7 @@ Type::
Description::
+
--
The pod this Toleration is attached to tolerates any taint that matches
the triple <key,value,effect> using the matching operator <operator>.
The pod this Toleration is attached to tolerates any taint that matches the triple <key,value,effect> using the matching operator <operator>.
--
Type::
@@ -456,32 +372,23 @@ Type::
| `effect`
| `string`
| Effect indicates the taint effect to match. Empty means match all taint effects.
When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute.
| Effect indicates the taint effect to match. Empty means match all taint effects. When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute.
| `key`
| `string`
| Key is the taint key that the toleration applies to. Empty means match all taint keys.
If the key is empty, operator must be Exists; this combination means to match all values and all keys.
| Key is the taint key that the toleration applies to. Empty means match all taint keys. If the key is empty, operator must be Exists; this combination means to match all values and all keys.
| `operator`
| `string`
| Operator represents a key's relationship to the value.
Valid operators are Exists and Equal. Defaults to Equal.
Exists is equivalent to wildcard for value, so that a pod can
tolerate all taints of a particular category.
| Operator represents a key's relationship to the value. Valid operators are Exists and Equal. Defaults to Equal. Exists is equivalent to wildcard for value, so that a pod can tolerate all taints of a particular category.
| `tolerationSeconds`
| `integer`
| TolerationSeconds represents the period of time the toleration (which must be
of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default,
it is not set, which means tolerate the taint forever (do not evict). Zero and
negative values will be treated as 0 (evict immediately) by the system.
| TolerationSeconds represents the period of time the toleration (which must be of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default, it is not set, which means tolerate the taint forever (do not evict). Zero and negative values will be treated as 0 (evict immediately) by the system.
| `value`
| `string`
| Value is the taint value the toleration matches to.
If the operator is Exists, the value should be empty, otherwise just a regular string.
| Value is the taint value the toleration matches to. If the operator is Exists, the value should be empty, otherwise just a regular string.
|===
=== .status
@@ -507,8 +414,7 @@ Type::
| `clusterNetwork[]`
| `object`
| ClusterNetworkEntry is a contiguous block of IP addresses from which pod IPs
are allocated.
| ClusterNetworkEntry is a contiguous block of IP addresses from which pod IPs are allocated.
| `clusterNetworkMTU`
| `integer`
@@ -516,12 +422,13 @@ are allocated.
| `conditions`
| `array`
| conditions represents the observations of a network.config current state.
Known .status.conditions.type are: "NetworkDiagnosticsAvailable"
| conditions represents the observations of a network.config current state. Known .status.conditions.type are: "NetworkDiagnosticsAvailable"
| `conditions[]`
| `object`
| Condition contains details for one aspect of the current state of this API Resource.
| Condition contains details for one aspect of the current state of this API Resource. --- This struct is intended for direct use as an array at the field path .status.conditions. For example,
type FooStatus struct{ // Represents the observations of a foo's current state. // Known .status.conditions.type are: "Available", "Progressing", and "Degraded" // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"`
// other fields }
| `migration`
| `object`
@@ -533,8 +440,7 @@ Known .status.conditions.type are: "NetworkDiagnosticsAvailable"
| `serviceNetwork`
| `array (string)`
| IP address pool for services.
Currently, we only support a single entry here.
| IP address pool for services. Currently, we only support a single entry here.
|===
=== .status.clusterNetwork
@@ -554,8 +460,7 @@ Type::
Description::
+
--
ClusterNetworkEntry is a contiguous block of IP addresses from which pod IPs
are allocated.
ClusterNetworkEntry is a contiguous block of IP addresses from which pod IPs are allocated.
--
Type::
@@ -574,16 +479,14 @@ Type::
| `hostPrefix`
| `integer`
| The size (prefix) of block to allocate to each node. If this
field is not used by the plugin, it can be left unset.
| The size (prefix) of block to allocate to each node. If this field is not used by the plugin, it can be left unset.
|===
=== .status.conditions
Description::
+
--
conditions represents the observations of a network.config current state.
Known .status.conditions.type are: "NetworkDiagnosticsAvailable"
conditions represents the observations of a network.config current state. Known .status.conditions.type are: "NetworkDiagnosticsAvailable"
--
Type::
@@ -596,7 +499,9 @@ Type::
Description::
+
--
Condition contains details for one aspect of the current state of this API Resource.
Condition contains details for one aspect of the current state of this API Resource. --- This struct is intended for direct use as an array at the field path .status.conditions. For example,
type FooStatus struct{ // Represents the observations of a foo's current state. // Known .status.conditions.type are: "Available", "Progressing", and "Degraded" // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"`
// other fields }
--
Type::
@@ -617,27 +522,19 @@ Required::
| `lastTransitionTime`
| `string`
| lastTransitionTime is the last time the condition transitioned from one status to another.
This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
| lastTransitionTime is the last time the condition transitioned from one status to another. This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
| `message`
| `string`
| message is a human readable message indicating details about the transition.
This may be an empty string.
| message is a human readable message indicating details about the transition. This may be an empty string.
| `observedGeneration`
| `integer`
| observedGeneration represents the .metadata.generation that the condition was set based upon.
For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date
with respect to the current state of the instance.
| observedGeneration represents the .metadata.generation that the condition was set based upon. For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date with respect to the current state of the instance.
| `reason`
| `string`
| reason contains a programmatic identifier indicating the reason for the condition's last transition.
Producers of specific condition types may define expected values and meanings for this field,
and whether the values are considered a guaranteed API.
The value should be a CamelCase string.
This field may not be empty.
| reason contains a programmatic identifier indicating the reason for the condition's last transition. Producers of specific condition types may define expected values and meanings for this field, and whether the values are considered a guaranteed API. The value should be a CamelCase string. This field may not be empty.
| `status`
| `string`
@@ -645,7 +542,7 @@ This field may not be empty.
| `type`
| `string`
| type of condition in CamelCase or in foo.example.com/CamelCase.
| type of condition in CamelCase or in foo.example.com/CamelCase. --- Many .condition.type values are consistent across resources like Available, but because arbitrary conditions can be useful (see .node.status.conditions), the ability to deconflict is important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
|===
=== .status.migration
@@ -671,9 +568,7 @@ Type::
| `networkType`
| `string`
| NetworkType is the target plugin that is being deployed.
DEPRECATED: network type migration is no longer supported,
so this should always be unset.
| NetworkType is the target plugin that is being deployed. DEPRECATED: network type migration is no longer supported, so this should always be unset.
|===
=== .status.migration.mtu

View File

@@ -11,9 +11,8 @@ toc::[]
Description::
+
--
Node holds cluster-wide information about node specific features.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
Node holds cluster-wide information about node specific features.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -73,8 +72,7 @@ Type::
| `workerLatencyProfile`
| `string`
| WorkerLatencyProfile determins the how fast the kubelet is updating
the status and corresponding reaction of the cluster
| WorkerLatencyProfile determins the how fast the kubelet is updating the status and corresponding reaction of the cluster
|===
=== .status
@@ -90,88 +88,6 @@ Type::
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `conditions`
| `array`
| conditions contain the details and the current state of the nodes.config object
| `conditions[]`
| `object`
| Condition contains details for one aspect of the current state of this API Resource.
|===
=== .status.conditions
Description::
+
--
conditions contain the details and the current state of the nodes.config object
--
Type::
`array`
=== .status.conditions[]
Description::
+
--
Condition contains details for one aspect of the current state of this API Resource.
--
Type::
`object`
Required::
- `lastTransitionTime`
- `message`
- `reason`
- `status`
- `type`
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `lastTransitionTime`
| `string`
| lastTransitionTime is the last time the condition transitioned from one status to another.
This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
| `message`
| `string`
| message is a human readable message indicating details about the transition.
This may be an empty string.
| `observedGeneration`
| `integer`
| observedGeneration represents the .metadata.generation that the condition was set based upon.
For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date
with respect to the current state of the instance.
| `reason`
| `string`
| reason contains a programmatic identifier indicating the reason for the condition's last transition.
Producers of specific condition types may define expected values and meanings for this field,
and whether the values are considered a guaranteed API.
The value should be a CamelCase string.
This field may not be empty.
| `status`
| `string`
| status of the condition, one of True, False, Unknown.
| `type`
| `string`
| type of condition in CamelCase or in foo.example.com/CamelCase.
|===
== API endpoints

View File

@@ -11,11 +11,8 @@ toc::[]
Description::
+
--
OAuth holds cluster-wide information about OAuth. The canonical name is `cluster`.
It is used to configure the integrated OAuth server.
This configuration is only honored when the top level Authentication config has type set to IntegratedOAuth.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
OAuth holds cluster-wide information about OAuth. The canonical name is `cluster`. It is used to configure the integrated OAuth server. This configuration is only honored when the top level Authentication config has type set to IntegratedOAuth.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -71,8 +68,7 @@ Type::
| `identityProviders`
| `array`
| identityProviders is an ordered list of ways for a user to identify themselves.
When this list is empty, no identities are provisioned for users.
| identityProviders is an ordered list of ways for a user to identify themselves. When this list is empty, no identities are provisioned for users.
| `identityProviders[]`
| `object`
@@ -91,8 +87,7 @@ When this list is empty, no identities are provisioned for users.
Description::
+
--
identityProviders is an ordered list of ways for a user to identify themselves.
When this list is empty, no identities are provisioned for users.
identityProviders is an ordered list of ways for a user to identify themselves. When this list is empty, no identities are provisioned for users.
--
Type::
@@ -148,15 +143,11 @@ Type::
| `mappingMethod`
| `string`
| mappingMethod determines how identities from this provider are mapped to users
Defaults to "claim"
| mappingMethod determines how identities from this provider are mapped to users Defaults to "claim"
| `name`
| `string`
| name is used to qualify the identities returned by this provider.
- It MUST be unique and not shared by any other identity provider used
- It MUST be a valid path segment: name cannot equal "." or ".." or contain "/" or "%" or ":"
Ref: https://godoc.org/github.com/openshift/origin/pkg/user/apis/user/validation#ValidateIdentityProviderName
| name is used to qualify the identities returned by this provider. - It MUST be unique and not shared by any other identity provider used - It MUST be a valid path segment: name cannot equal "." or ".." or contain "/" or "%" or ":" Ref: https://godoc.org/github.com/openshift/origin/pkg/user/apis/user/validation#ValidateIdentityProviderName
| `openID`
| `object`
@@ -190,31 +181,15 @@ Type::
| `ca`
| `object`
| ca is an optional reference to a config map by name containing the PEM-encoded CA bundle.
It is used as a trust anchor to validate the TLS certificate presented by the remote server.
The key "ca.crt" is used to locate the data.
If specified and the config map or expected key is not found, the identity provider is not honored.
If the specified ca data is not valid, the identity provider is not honored.
If empty, the default system roots are used.
The namespace for this config map is openshift-config.
| ca is an optional reference to a config map by name containing the PEM-encoded CA bundle. It is used as a trust anchor to validate the TLS certificate presented by the remote server. The key "ca.crt" is used to locate the data. If specified and the config map or expected key is not found, the identity provider is not honored. If the specified ca data is not valid, the identity provider is not honored. If empty, the default system roots are used. The namespace for this config map is openshift-config.
| `tlsClientCert`
| `object`
| tlsClientCert is an optional reference to a secret by name that contains the
PEM-encoded TLS client certificate to present when connecting to the server.
The key "tls.crt" is used to locate the data.
If specified and the secret or expected key is not found, the identity provider is not honored.
If the specified certificate data is not valid, the identity provider is not honored.
The namespace for this secret is openshift-config.
| tlsClientCert is an optional reference to a secret by name that contains the PEM-encoded TLS client certificate to present when connecting to the server. The key "tls.crt" is used to locate the data. If specified and the secret or expected key is not found, the identity provider is not honored. If the specified certificate data is not valid, the identity provider is not honored. The namespace for this secret is openshift-config.
| `tlsClientKey`
| `object`
| tlsClientKey is an optional reference to a secret by name that contains the
PEM-encoded TLS private key for the client certificate referenced in tlsClientCert.
The key "tls.key" is used to locate the data.
If specified and the secret or expected key is not found, the identity provider is not honored.
If the specified certificate data is not valid, the identity provider is not honored.
The namespace for this secret is openshift-config.
| tlsClientKey is an optional reference to a secret by name that contains the PEM-encoded TLS private key for the client certificate referenced in tlsClientCert. The key "tls.key" is used to locate the data. If specified and the secret or expected key is not found, the identity provider is not honored. If the specified certificate data is not valid, the identity provider is not honored. The namespace for this secret is openshift-config.
| `url`
| `string`
@@ -225,13 +200,7 @@ The namespace for this secret is openshift-config.
Description::
+
--
ca is an optional reference to a config map by name containing the PEM-encoded CA bundle.
It is used as a trust anchor to validate the TLS certificate presented by the remote server.
The key "ca.crt" is used to locate the data.
If specified and the config map or expected key is not found, the identity provider is not honored.
If the specified ca data is not valid, the identity provider is not honored.
If empty, the default system roots are used.
The namespace for this config map is openshift-config.
ca is an optional reference to a config map by name containing the PEM-encoded CA bundle. It is used as a trust anchor to validate the TLS certificate presented by the remote server. The key "ca.crt" is used to locate the data. If specified and the config map or expected key is not found, the identity provider is not honored. If the specified ca data is not valid, the identity provider is not honored. If empty, the default system roots are used. The namespace for this config map is openshift-config.
--
Type::
@@ -255,12 +224,7 @@ Required::
Description::
+
--
tlsClientCert is an optional reference to a secret by name that contains the
PEM-encoded TLS client certificate to present when connecting to the server.
The key "tls.crt" is used to locate the data.
If specified and the secret or expected key is not found, the identity provider is not honored.
If the specified certificate data is not valid, the identity provider is not honored.
The namespace for this secret is openshift-config.
tlsClientCert is an optional reference to a secret by name that contains the PEM-encoded TLS client certificate to present when connecting to the server. The key "tls.crt" is used to locate the data. If specified and the secret or expected key is not found, the identity provider is not honored. If the specified certificate data is not valid, the identity provider is not honored. The namespace for this secret is openshift-config.
--
Type::
@@ -284,12 +248,7 @@ Required::
Description::
+
--
tlsClientKey is an optional reference to a secret by name that contains the
PEM-encoded TLS private key for the client certificate referenced in tlsClientCert.
The key "tls.key" is used to locate the data.
If specified and the secret or expected key is not found, the identity provider is not honored.
If the specified certificate data is not valid, the identity provider is not honored.
The namespace for this secret is openshift-config.
tlsClientKey is an optional reference to a secret by name that contains the PEM-encoded TLS private key for the client certificate referenced in tlsClientCert. The key "tls.key" is used to locate the data. If specified and the secret or expected key is not found, the identity provider is not honored. If the specified certificate data is not valid, the identity provider is not honored. The namespace for this secret is openshift-config.
--
Type::
@@ -328,14 +287,7 @@ Type::
| `ca`
| `object`
| ca is an optional reference to a config map by name containing the PEM-encoded CA bundle.
It is used as a trust anchor to validate the TLS certificate presented by the remote server.
The key "ca.crt" is used to locate the data.
If specified and the config map or expected key is not found, the identity provider is not honored.
If the specified ca data is not valid, the identity provider is not honored.
If empty, the default system roots are used.
This can only be configured when hostname is set to a non-empty value.
The namespace for this config map is openshift-config.
| ca is an optional reference to a config map by name containing the PEM-encoded CA bundle. It is used as a trust anchor to validate the TLS certificate presented by the remote server. The key "ca.crt" is used to locate the data. If specified and the config map or expected key is not found, the identity provider is not honored. If the specified ca data is not valid, the identity provider is not honored. If empty, the default system roots are used. This can only be configured when hostname is set to a non-empty value. The namespace for this config map is openshift-config.
| `clientID`
| `string`
@@ -343,16 +295,11 @@ The namespace for this config map is openshift-config.
| `clientSecret`
| `object`
| clientSecret is a required reference to the secret by name containing the oauth client secret.
The key "clientSecret" is used to locate the data.
If the secret or expected key is not found, the identity provider is not honored.
The namespace for this secret is openshift-config.
| clientSecret is a required reference to the secret by name containing the oauth client secret. The key "clientSecret" is used to locate the data. If the secret or expected key is not found, the identity provider is not honored. The namespace for this secret is openshift-config.
| `hostname`
| `string`
| hostname is the optional domain (e.g. "mycompany.com") for use with a hosted instance of
GitHub Enterprise.
It must match the GitHub Enterprise settings value configured at /setup/settings#hostname.
| hostname is the optional domain (e.g. "mycompany.com") for use with a hosted instance of GitHub Enterprise. It must match the GitHub Enterprise settings value configured at /setup/settings#hostname.
| `organizations`
| `array (string)`
@@ -367,14 +314,7 @@ It must match the GitHub Enterprise settings value configured at /setup/settings
Description::
+
--
ca is an optional reference to a config map by name containing the PEM-encoded CA bundle.
It is used as a trust anchor to validate the TLS certificate presented by the remote server.
The key "ca.crt" is used to locate the data.
If specified and the config map or expected key is not found, the identity provider is not honored.
If the specified ca data is not valid, the identity provider is not honored.
If empty, the default system roots are used.
This can only be configured when hostname is set to a non-empty value.
The namespace for this config map is openshift-config.
ca is an optional reference to a config map by name containing the PEM-encoded CA bundle. It is used as a trust anchor to validate the TLS certificate presented by the remote server. The key "ca.crt" is used to locate the data. If specified and the config map or expected key is not found, the identity provider is not honored. If the specified ca data is not valid, the identity provider is not honored. If empty, the default system roots are used. This can only be configured when hostname is set to a non-empty value. The namespace for this config map is openshift-config.
--
Type::
@@ -398,10 +338,7 @@ Required::
Description::
+
--
clientSecret is a required reference to the secret by name containing the oauth client secret.
The key "clientSecret" is used to locate the data.
If the secret or expected key is not found, the identity provider is not honored.
The namespace for this secret is openshift-config.
clientSecret is a required reference to the secret by name containing the oauth client secret. The key "clientSecret" is used to locate the data. If the secret or expected key is not found, the identity provider is not honored. The namespace for this secret is openshift-config.
--
Type::
@@ -440,13 +377,7 @@ Type::
| `ca`
| `object`
| ca is an optional reference to a config map by name containing the PEM-encoded CA bundle.
It is used as a trust anchor to validate the TLS certificate presented by the remote server.
The key "ca.crt" is used to locate the data.
If specified and the config map or expected key is not found, the identity provider is not honored.
If the specified ca data is not valid, the identity provider is not honored.
If empty, the default system roots are used.
The namespace for this config map is openshift-config.
| ca is an optional reference to a config map by name containing the PEM-encoded CA bundle. It is used as a trust anchor to validate the TLS certificate presented by the remote server. The key "ca.crt" is used to locate the data. If specified and the config map or expected key is not found, the identity provider is not honored. If the specified ca data is not valid, the identity provider is not honored. If empty, the default system roots are used. The namespace for this config map is openshift-config.
| `clientID`
| `string`
@@ -454,10 +385,7 @@ The namespace for this config map is openshift-config.
| `clientSecret`
| `object`
| clientSecret is a required reference to the secret by name containing the oauth client secret.
The key "clientSecret" is used to locate the data.
If the secret or expected key is not found, the identity provider is not honored.
The namespace for this secret is openshift-config.
| clientSecret is a required reference to the secret by name containing the oauth client secret. The key "clientSecret" is used to locate the data. If the secret or expected key is not found, the identity provider is not honored. The namespace for this secret is openshift-config.
| `url`
| `string`
@@ -468,13 +396,7 @@ The namespace for this secret is openshift-config.
Description::
+
--
ca is an optional reference to a config map by name containing the PEM-encoded CA bundle.
It is used as a trust anchor to validate the TLS certificate presented by the remote server.
The key "ca.crt" is used to locate the data.
If specified and the config map or expected key is not found, the identity provider is not honored.
If the specified ca data is not valid, the identity provider is not honored.
If empty, the default system roots are used.
The namespace for this config map is openshift-config.
ca is an optional reference to a config map by name containing the PEM-encoded CA bundle. It is used as a trust anchor to validate the TLS certificate presented by the remote server. The key "ca.crt" is used to locate the data. If specified and the config map or expected key is not found, the identity provider is not honored. If the specified ca data is not valid, the identity provider is not honored. If empty, the default system roots are used. The namespace for this config map is openshift-config.
--
Type::
@@ -498,10 +420,7 @@ Required::
Description::
+
--
clientSecret is a required reference to the secret by name containing the oauth client secret.
The key "clientSecret" is used to locate the data.
If the secret or expected key is not found, the identity provider is not honored.
The namespace for this secret is openshift-config.
clientSecret is a required reference to the secret by name containing the oauth client secret. The key "clientSecret" is used to locate the data. If the secret or expected key is not found, the identity provider is not honored. The namespace for this secret is openshift-config.
--
Type::
@@ -544,10 +463,7 @@ Type::
| `clientSecret`
| `object`
| clientSecret is a required reference to the secret by name containing the oauth client secret.
The key "clientSecret" is used to locate the data.
If the secret or expected key is not found, the identity provider is not honored.
The namespace for this secret is openshift-config.
| clientSecret is a required reference to the secret by name containing the oauth client secret. The key "clientSecret" is used to locate the data. If the secret or expected key is not found, the identity provider is not honored. The namespace for this secret is openshift-config.
| `hostedDomain`
| `string`
@@ -558,10 +474,7 @@ The namespace for this secret is openshift-config.
Description::
+
--
clientSecret is a required reference to the secret by name containing the oauth client secret.
The key "clientSecret" is used to locate the data.
If the secret or expected key is not found, the identity provider is not honored.
The namespace for this secret is openshift-config.
clientSecret is a required reference to the secret by name containing the oauth client secret. The key "clientSecret" is used to locate the data. If the secret or expected key is not found, the identity provider is not honored. The namespace for this secret is openshift-config.
--
Type::
@@ -600,22 +513,14 @@ Type::
| `fileData`
| `object`
| fileData is a required reference to a secret by name containing the data to use as the htpasswd file.
The key "htpasswd" is used to locate the data.
If the secret or expected key is not found, the identity provider is not honored.
If the specified htpasswd data is not valid, the identity provider is not honored.
The namespace for this secret is openshift-config.
| fileData is a required reference to a secret by name containing the data to use as the htpasswd file. The key "htpasswd" is used to locate the data. If the secret or expected key is not found, the identity provider is not honored. If the specified htpasswd data is not valid, the identity provider is not honored. The namespace for this secret is openshift-config.
|===
=== .spec.identityProviders[].htpasswd.fileData
Description::
+
--
fileData is a required reference to a secret by name containing the data to use as the htpasswd file.
The key "htpasswd" is used to locate the data.
If the secret or expected key is not found, the identity provider is not honored.
If the specified htpasswd data is not valid, the identity provider is not honored.
The namespace for this secret is openshift-config.
fileData is a required reference to a secret by name containing the data to use as the htpasswd file. The key "htpasswd" is used to locate the data. If the secret or expected key is not found, the identity provider is not honored. If the specified htpasswd data is not valid, the identity provider is not honored. The namespace for this secret is openshift-config.
--
Type::
@@ -654,13 +559,7 @@ Type::
| `ca`
| `object`
| ca is an optional reference to a config map by name containing the PEM-encoded CA bundle.
It is used as a trust anchor to validate the TLS certificate presented by the remote server.
The key "ca.crt" is used to locate the data.
If specified and the config map or expected key is not found, the identity provider is not honored.
If the specified ca data is not valid, the identity provider is not honored.
If empty, the default system roots are used.
The namespace for this config map is openshift-config.
| ca is an optional reference to a config map by name containing the PEM-encoded CA bundle. It is used as a trust anchor to validate the TLS certificate presented by the remote server. The key "ca.crt" is used to locate the data. If specified and the config map or expected key is not found, the identity provider is not honored. If the specified ca data is not valid, the identity provider is not honored. If empty, the default system roots are used. The namespace for this config map is openshift-config.
| `domainName`
| `string`
@@ -668,21 +567,11 @@ The namespace for this config map is openshift-config.
| `tlsClientCert`
| `object`
| tlsClientCert is an optional reference to a secret by name that contains the
PEM-encoded TLS client certificate to present when connecting to the server.
The key "tls.crt" is used to locate the data.
If specified and the secret or expected key is not found, the identity provider is not honored.
If the specified certificate data is not valid, the identity provider is not honored.
The namespace for this secret is openshift-config.
| tlsClientCert is an optional reference to a secret by name that contains the PEM-encoded TLS client certificate to present when connecting to the server. The key "tls.crt" is used to locate the data. If specified and the secret or expected key is not found, the identity provider is not honored. If the specified certificate data is not valid, the identity provider is not honored. The namespace for this secret is openshift-config.
| `tlsClientKey`
| `object`
| tlsClientKey is an optional reference to a secret by name that contains the
PEM-encoded TLS private key for the client certificate referenced in tlsClientCert.
The key "tls.key" is used to locate the data.
If specified and the secret or expected key is not found, the identity provider is not honored.
If the specified certificate data is not valid, the identity provider is not honored.
The namespace for this secret is openshift-config.
| tlsClientKey is an optional reference to a secret by name that contains the PEM-encoded TLS private key for the client certificate referenced in tlsClientCert. The key "tls.key" is used to locate the data. If specified and the secret or expected key is not found, the identity provider is not honored. If the specified certificate data is not valid, the identity provider is not honored. The namespace for this secret is openshift-config.
| `url`
| `string`
@@ -693,13 +582,7 @@ The namespace for this secret is openshift-config.
Description::
+
--
ca is an optional reference to a config map by name containing the PEM-encoded CA bundle.
It is used as a trust anchor to validate the TLS certificate presented by the remote server.
The key "ca.crt" is used to locate the data.
If specified and the config map or expected key is not found, the identity provider is not honored.
If the specified ca data is not valid, the identity provider is not honored.
If empty, the default system roots are used.
The namespace for this config map is openshift-config.
ca is an optional reference to a config map by name containing the PEM-encoded CA bundle. It is used as a trust anchor to validate the TLS certificate presented by the remote server. The key "ca.crt" is used to locate the data. If specified and the config map or expected key is not found, the identity provider is not honored. If the specified ca data is not valid, the identity provider is not honored. If empty, the default system roots are used. The namespace for this config map is openshift-config.
--
Type::
@@ -723,12 +606,7 @@ Required::
Description::
+
--
tlsClientCert is an optional reference to a secret by name that contains the
PEM-encoded TLS client certificate to present when connecting to the server.
The key "tls.crt" is used to locate the data.
If specified and the secret or expected key is not found, the identity provider is not honored.
If the specified certificate data is not valid, the identity provider is not honored.
The namespace for this secret is openshift-config.
tlsClientCert is an optional reference to a secret by name that contains the PEM-encoded TLS client certificate to present when connecting to the server. The key "tls.crt" is used to locate the data. If specified and the secret or expected key is not found, the identity provider is not honored. If the specified certificate data is not valid, the identity provider is not honored. The namespace for this secret is openshift-config.
--
Type::
@@ -752,12 +630,7 @@ Required::
Description::
+
--
tlsClientKey is an optional reference to a secret by name that contains the
PEM-encoded TLS private key for the client certificate referenced in tlsClientCert.
The key "tls.key" is used to locate the data.
If specified and the secret or expected key is not found, the identity provider is not honored.
If the specified certificate data is not valid, the identity provider is not honored.
The namespace for this secret is openshift-config.
tlsClientKey is an optional reference to a secret by name that contains the PEM-encoded TLS private key for the client certificate referenced in tlsClientCert. The key "tls.key" is used to locate the data. If specified and the secret or expected key is not found, the identity provider is not honored. If the specified certificate data is not valid, the identity provider is not honored. The namespace for this secret is openshift-config.
--
Type::
@@ -804,35 +677,19 @@ Type::
| `bindPassword`
| `object`
| bindPassword is an optional reference to a secret by name
containing a password to bind with during the search phase.
The key "bindPassword" is used to locate the data.
If specified and the secret or expected key is not found, the identity provider is not honored.
The namespace for this secret is openshift-config.
| bindPassword is an optional reference to a secret by name containing a password to bind with during the search phase. The key "bindPassword" is used to locate the data. If specified and the secret or expected key is not found, the identity provider is not honored. The namespace for this secret is openshift-config.
| `ca`
| `object`
| ca is an optional reference to a config map by name containing the PEM-encoded CA bundle.
It is used as a trust anchor to validate the TLS certificate presented by the remote server.
The key "ca.crt" is used to locate the data.
If specified and the config map or expected key is not found, the identity provider is not honored.
If the specified ca data is not valid, the identity provider is not honored.
If empty, the default system roots are used.
The namespace for this config map is openshift-config.
| ca is an optional reference to a config map by name containing the PEM-encoded CA bundle. It is used as a trust anchor to validate the TLS certificate presented by the remote server. The key "ca.crt" is used to locate the data. If specified and the config map or expected key is not found, the identity provider is not honored. If the specified ca data is not valid, the identity provider is not honored. If empty, the default system roots are used. The namespace for this config map is openshift-config.
| `insecure`
| `boolean`
| insecure, if true, indicates the connection should not use TLS
WARNING: Should not be set to `true` with the URL scheme "ldaps://" as "ldaps://" URLs always
attempt to connect using TLS, even when `insecure` is set to `true`
When `true`, "ldap://" URLS connect insecurely. When `false`, "ldap://" URLs are upgraded to
a TLS connection using StartTLS as specified in https://tools.ietf.org/html/rfc2830.
| insecure, if true, indicates the connection should not use TLS WARNING: Should not be set to `true` with the URL scheme "ldaps://" as "ldaps://" URLs always attempt to connect using TLS, even when `insecure` is set to `true` When `true`, "ldap://" URLS connect insecurely. When `false`, "ldap://" URLs are upgraded to a TLS connection using StartTLS as specified in https://tools.ietf.org/html/rfc2830.
| `url`
| `string`
| url is an RFC 2255 URL which specifies the LDAP search parameters to use.
The syntax of the URL is:
ldap://host:port/basedn?attribute?scope?filter
| url is an RFC 2255 URL which specifies the LDAP search parameters to use. The syntax of the URL is: ldap://host:port/basedn?attribute?scope?filter
|===
=== .spec.identityProviders[].ldap.attributes
@@ -854,37 +711,26 @@ Type::
| `email`
| `array (string)`
| email is the list of attributes whose values should be used as the email address. Optional.
If unspecified, no email is set for the identity
| email is the list of attributes whose values should be used as the email address. Optional. If unspecified, no email is set for the identity
| `id`
| `array (string)`
| id is the list of attributes whose values should be used as the user ID. Required.
First non-empty attribute is used. At least one attribute is required. If none of the listed
attribute have a value, authentication fails.
LDAP standard identity attribute is "dn"
| id is the list of attributes whose values should be used as the user ID. Required. First non-empty attribute is used. At least one attribute is required. If none of the listed attribute have a value, authentication fails. LDAP standard identity attribute is "dn"
| `name`
| `array (string)`
| name is the list of attributes whose values should be used as the display name. Optional.
If unspecified, no display name is set for the identity
LDAP standard display name attribute is "cn"
| name is the list of attributes whose values should be used as the display name. Optional. If unspecified, no display name is set for the identity LDAP standard display name attribute is "cn"
| `preferredUsername`
| `array (string)`
| preferredUsername is the list of attributes whose values should be used as the preferred username.
LDAP standard login attribute is "uid"
| preferredUsername is the list of attributes whose values should be used as the preferred username. LDAP standard login attribute is "uid"
|===
=== .spec.identityProviders[].ldap.bindPassword
Description::
+
--
bindPassword is an optional reference to a secret by name
containing a password to bind with during the search phase.
The key "bindPassword" is used to locate the data.
If specified and the secret or expected key is not found, the identity provider is not honored.
The namespace for this secret is openshift-config.
bindPassword is an optional reference to a secret by name containing a password to bind with during the search phase. The key "bindPassword" is used to locate the data. If specified and the secret or expected key is not found, the identity provider is not honored. The namespace for this secret is openshift-config.
--
Type::
@@ -908,13 +754,7 @@ Required::
Description::
+
--
ca is an optional reference to a config map by name containing the PEM-encoded CA bundle.
It is used as a trust anchor to validate the TLS certificate presented by the remote server.
The key "ca.crt" is used to locate the data.
If specified and the config map or expected key is not found, the identity provider is not honored.
If the specified ca data is not valid, the identity provider is not honored.
If empty, the default system roots are used.
The namespace for this config map is openshift-config.
ca is an optional reference to a config map by name containing the PEM-encoded CA bundle. It is used as a trust anchor to validate the TLS certificate presented by the remote server. The key "ca.crt" is used to locate the data. If specified and the config map or expected key is not found, the identity provider is not honored. If the specified ca data is not valid, the identity provider is not honored. If empty, the default system roots are used. The namespace for this config map is openshift-config.
--
Type::
@@ -953,13 +793,7 @@ Type::
| `ca`
| `object`
| ca is an optional reference to a config map by name containing the PEM-encoded CA bundle.
It is used as a trust anchor to validate the TLS certificate presented by the remote server.
The key "ca.crt" is used to locate the data.
If specified and the config map or expected key is not found, the identity provider is not honored.
If the specified ca data is not valid, the identity provider is not honored.
If empty, the default system roots are used.
The namespace for this config map is openshift-config.
| ca is an optional reference to a config map by name containing the PEM-encoded CA bundle. It is used as a trust anchor to validate the TLS certificate presented by the remote server. The key "ca.crt" is used to locate the data. If specified and the config map or expected key is not found, the identity provider is not honored. If the specified ca data is not valid, the identity provider is not honored. If empty, the default system roots are used. The namespace for this config map is openshift-config.
| `claims`
| `object`
@@ -971,10 +805,7 @@ The namespace for this config map is openshift-config.
| `clientSecret`
| `object`
| clientSecret is a required reference to the secret by name containing the oauth client secret.
The key "clientSecret" is used to locate the data.
If the secret or expected key is not found, the identity provider is not honored.
The namespace for this secret is openshift-config.
| clientSecret is a required reference to the secret by name containing the oauth client secret. The key "clientSecret" is used to locate the data. If the secret or expected key is not found, the identity provider is not honored. The namespace for this secret is openshift-config.
| `extraAuthorizeParameters`
| `object (string)`
@@ -986,21 +817,14 @@ The namespace for this secret is openshift-config.
| `issuer`
| `string`
| issuer is the URL that the OpenID Provider asserts as its Issuer Identifier.
It must use the https scheme with no query or fragment component.
| issuer is the URL that the OpenID Provider asserts as its Issuer Identifier. It must use the https scheme with no query or fragment component.
|===
=== .spec.identityProviders[].openID.ca
Description::
+
--
ca is an optional reference to a config map by name containing the PEM-encoded CA bundle.
It is used as a trust anchor to validate the TLS certificate presented by the remote server.
The key "ca.crt" is used to locate the data.
If specified and the config map or expected key is not found, the identity provider is not honored.
If the specified ca data is not valid, the identity provider is not honored.
If empty, the default system roots are used.
The namespace for this config map is openshift-config.
ca is an optional reference to a config map by name containing the PEM-encoded CA bundle. It is used as a trust anchor to validate the TLS certificate presented by the remote server. The key "ca.crt" is used to locate the data. If specified and the config map or expected key is not found, the identity provider is not honored. If the specified ca data is not valid, the identity provider is not honored. If empty, the default system roots are used. The namespace for this config map is openshift-config.
--
Type::
@@ -1039,34 +863,26 @@ Type::
| `email`
| `array (string)`
| email is the list of claims whose values should be used as the email address. Optional.
If unspecified, no email is set for the identity
| email is the list of claims whose values should be used as the email address. Optional. If unspecified, no email is set for the identity
| `groups`
| `array (string)`
| groups is the list of claims value of which should be used to synchronize groups
from the OIDC provider to OpenShift for the user.
If multiple claims are specified, the first one with a non-empty value is used.
| groups is the list of claims value of which should be used to synchronize groups from the OIDC provider to OpenShift for the user. If multiple claims are specified, the first one with a non-empty value is used.
| `name`
| `array (string)`
| name is the list of claims whose values should be used as the display name. Optional.
If unspecified, no display name is set for the identity
| name is the list of claims whose values should be used as the display name. Optional. If unspecified, no display name is set for the identity
| `preferredUsername`
| `array (string)`
| preferredUsername is the list of claims whose values should be used as the preferred username.
If unspecified, the preferred username is determined from the value of the sub claim
| preferredUsername is the list of claims whose values should be used as the preferred username. If unspecified, the preferred username is determined from the value of the sub claim
|===
=== .spec.identityProviders[].openID.clientSecret
Description::
+
--
clientSecret is a required reference to the secret by name containing the oauth client secret.
The key "clientSecret" is used to locate the data.
If the secret or expected key is not found, the identity provider is not honored.
The namespace for this secret is openshift-config.
clientSecret is a required reference to the secret by name containing the oauth client secret. The key "clientSecret" is used to locate the data. If the secret or expected key is not found, the identity provider is not honored. The namespace for this secret is openshift-config.
--
Type::
@@ -1105,29 +921,15 @@ Type::
| `ca`
| `object`
| ca is a required reference to a config map by name containing the PEM-encoded CA bundle.
It is used as a trust anchor to validate the TLS certificate presented by the remote server.
Specifically, it allows verification of incoming requests to prevent header spoofing.
The key "ca.crt" is used to locate the data.
If the config map or expected key is not found, the identity provider is not honored.
If the specified ca data is not valid, the identity provider is not honored.
The namespace for this config map is openshift-config.
| ca is a required reference to a config map by name containing the PEM-encoded CA bundle. It is used as a trust anchor to validate the TLS certificate presented by the remote server. Specifically, it allows verification of incoming requests to prevent header spoofing. The key "ca.crt" is used to locate the data. If the config map or expected key is not found, the identity provider is not honored. If the specified ca data is not valid, the identity provider is not honored. The namespace for this config map is openshift-config.
| `challengeURL`
| `string`
| challengeURL is a URL to redirect unauthenticated /authorize requests to
Unauthenticated requests from OAuth clients which expect WWW-Authenticate challenges will be
redirected here.
${url} is replaced with the current URL, escaped to be safe in a query parameter
https://www.example.com/sso-login?then=${url}
${query} is replaced with the current query string
https://www.example.com/auth-proxy/oauth/authorize?${query}
Required when challenge is set to true.
| challengeURL is a URL to redirect unauthenticated /authorize requests to Unauthenticated requests from OAuth clients which expect WWW-Authenticate challenges will be redirected here. ${url} is replaced with the current URL, escaped to be safe in a query parameter https://www.example.com/sso-login?then=${url} ${query} is replaced with the current query string https://www.example.com/auth-proxy/oauth/authorize?${query} Required when challenge is set to true.
| `clientCommonNames`
| `array (string)`
| clientCommonNames is an optional list of common names to require a match from. If empty, any
client certificate validated against the clientCA bundle is considered authoritative.
| clientCommonNames is an optional list of common names to require a match from. If empty, any client certificate validated against the clientCA bundle is considered authoritative.
| `emailHeaders`
| `array (string)`
@@ -1139,13 +941,7 @@ client certificate validated against the clientCA bundle is considered authorita
| `loginURL`
| `string`
| loginURL is a URL to redirect unauthenticated /authorize requests to
Unauthenticated requests from OAuth clients which expect interactive logins will be redirected here
${url} is replaced with the current URL, escaped to be safe in a query parameter
https://www.example.com/sso-login?then=${url}
${query} is replaced with the current query string
https://www.example.com/auth-proxy/oauth/authorize?${query}
Required when login is set to true.
| loginURL is a URL to redirect unauthenticated /authorize requests to Unauthenticated requests from OAuth clients which expect interactive logins will be redirected here ${url} is replaced with the current URL, escaped to be safe in a query parameter https://www.example.com/sso-login?then=${url} ${query} is replaced with the current query string https://www.example.com/auth-proxy/oauth/authorize?${query} Required when login is set to true.
| `nameHeaders`
| `array (string)`
@@ -1160,13 +956,7 @@ Required when login is set to true.
Description::
+
--
ca is a required reference to a config map by name containing the PEM-encoded CA bundle.
It is used as a trust anchor to validate the TLS certificate presented by the remote server.
Specifically, it allows verification of incoming requests to prevent header spoofing.
The key "ca.crt" is used to locate the data.
If the config map or expected key is not found, the identity provider is not honored.
If the specified ca data is not valid, the identity provider is not honored.
The namespace for this config map is openshift-config.
ca is a required reference to a config map by name containing the PEM-encoded CA bundle. It is used as a trust anchor to validate the TLS certificate presented by the remote server. Specifically, it allows verification of incoming requests to prevent header spoofing. The key "ca.crt" is used to locate the data. If the config map or expected key is not found, the identity provider is not honored. If the specified ca data is not valid, the identity provider is not honored. The namespace for this config map is openshift-config.
--
Type::
@@ -1205,45 +995,22 @@ Type::
| `error`
| `object`
| error is the name of a secret that specifies a go template to use to render error pages
during the authentication or grant flow.
The key "errors.html" is used to locate the template data.
If specified and the secret or expected key is not found, the default error page is used.
If the specified template is not valid, the default error page is used.
If unspecified, the default error page is used.
The namespace for this secret is openshift-config.
| error is the name of a secret that specifies a go template to use to render error pages during the authentication or grant flow. The key "errors.html" is used to locate the template data. If specified and the secret or expected key is not found, the default error page is used. If the specified template is not valid, the default error page is used. If unspecified, the default error page is used. The namespace for this secret is openshift-config.
| `login`
| `object`
| login is the name of a secret that specifies a go template to use to render the login page.
The key "login.html" is used to locate the template data.
If specified and the secret or expected key is not found, the default login page is used.
If the specified template is not valid, the default login page is used.
If unspecified, the default login page is used.
The namespace for this secret is openshift-config.
| login is the name of a secret that specifies a go template to use to render the login page. The key "login.html" is used to locate the template data. If specified and the secret or expected key is not found, the default login page is used. If the specified template is not valid, the default login page is used. If unspecified, the default login page is used. The namespace for this secret is openshift-config.
| `providerSelection`
| `object`
| providerSelection is the name of a secret that specifies a go template to use to render
the provider selection page.
The key "providers.html" is used to locate the template data.
If specified and the secret or expected key is not found, the default provider selection page is used.
If the specified template is not valid, the default provider selection page is used.
If unspecified, the default provider selection page is used.
The namespace for this secret is openshift-config.
| providerSelection is the name of a secret that specifies a go template to use to render the provider selection page. The key "providers.html" is used to locate the template data. If specified and the secret or expected key is not found, the default provider selection page is used. If the specified template is not valid, the default provider selection page is used. If unspecified, the default provider selection page is used. The namespace for this secret is openshift-config.
|===
=== .spec.templates.error
Description::
+
--
error is the name of a secret that specifies a go template to use to render error pages
during the authentication or grant flow.
The key "errors.html" is used to locate the template data.
If specified and the secret or expected key is not found, the default error page is used.
If the specified template is not valid, the default error page is used.
If unspecified, the default error page is used.
The namespace for this secret is openshift-config.
error is the name of a secret that specifies a go template to use to render error pages during the authentication or grant flow. The key "errors.html" is used to locate the template data. If specified and the secret or expected key is not found, the default error page is used. If the specified template is not valid, the default error page is used. If unspecified, the default error page is used. The namespace for this secret is openshift-config.
--
Type::
@@ -1267,12 +1034,7 @@ Required::
Description::
+
--
login is the name of a secret that specifies a go template to use to render the login page.
The key "login.html" is used to locate the template data.
If specified and the secret or expected key is not found, the default login page is used.
If the specified template is not valid, the default login page is used.
If unspecified, the default login page is used.
The namespace for this secret is openshift-config.
login is the name of a secret that specifies a go template to use to render the login page. The key "login.html" is used to locate the template data. If specified and the secret or expected key is not found, the default login page is used. If the specified template is not valid, the default login page is used. If unspecified, the default login page is used. The namespace for this secret is openshift-config.
--
Type::
@@ -1296,13 +1058,7 @@ Required::
Description::
+
--
providerSelection is the name of a secret that specifies a go template to use to render
the provider selection page.
The key "providers.html" is used to locate the template data.
If specified and the secret or expected key is not found, the default provider selection page is used.
If the specified template is not valid, the default provider selection page is used.
If unspecified, the default provider selection page is used.
The namespace for this secret is openshift-config.
providerSelection is the name of a secret that specifies a go template to use to render the provider selection page. The key "providers.html" is used to locate the template data. If specified and the secret or expected key is not found, the default provider selection page is used. If the specified template is not valid, the default provider selection page is used. If unspecified, the default provider selection page is used. The namespace for this secret is openshift-config.
--
Type::
@@ -1341,19 +1097,8 @@ Type::
| `accessTokenInactivityTimeout`
| `string`
| accessTokenInactivityTimeout defines the token inactivity timeout
for tokens granted by any client.
The value represents the maximum amount of time that can occur between
consecutive uses of the token. Tokens become invalid if they are not
used within this temporal window. The user will need to acquire a new
token to regain access once a token times out. Takes valid time
duration string such as "5m", "1.5h" or "2h45m". The minimum allowed
value for duration is 300s (5 minutes). If the timeout is configured
per client, then that value takes precedence. If the timeout value is
not specified and the client does not override the value, then tokens
are valid until their lifetime.
WARNING: existing tokens' timeout will not be affected (lowered) by changing this value
| accessTokenInactivityTimeout defines the token inactivity timeout for tokens granted by any client. The value represents the maximum amount of time that can occur between consecutive uses of the token. Tokens become invalid if they are not used within this temporal window. The user will need to acquire a new token to regain access once a token times out. Takes valid time duration string such as "5m", "1.5h" or "2h45m". The minimum allowed value for duration is 300s (5 minutes). If the timeout is configured per client, then that value takes precedence. If the timeout value is not specified and the client does not override the value, then tokens are valid until their lifetime.
WARNING: existing tokens' timeout will not be affected (lowered) by changing this value
| `accessTokenInactivityTimeoutSeconds`
| `integer`

View File

@@ -11,9 +11,8 @@ toc::[]
Description::
+
--
Project holds cluster-wide information about Project. The canonical name is `cluster`
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
Project holds cluster-wide information about Project. The canonical name is `cluster`
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -73,18 +72,14 @@ Type::
| `projectRequestTemplate`
| `object`
| projectRequestTemplate is the template to use for creating projects in response to projectrequest.
This must point to a template in 'openshift-config' namespace. It is optional.
If it is not specified, a default template is used.
| projectRequestTemplate is the template to use for creating projects in response to projectrequest. This must point to a template in 'openshift-config' namespace. It is optional. If it is not specified, a default template is used.
|===
=== .spec.projectRequestTemplate
Description::
+
--
projectRequestTemplate is the template to use for creating projects in response to projectrequest.
This must point to a template in 'openshift-config' namespace. It is optional.
If it is not specified, a default template is used.
projectRequestTemplate is the template to use for creating projects in response to projectrequest. This must point to a template in 'openshift-config' namespace. It is optional. If it is not specified, a default template is used.
--
Type::

View File

@@ -11,9 +11,8 @@ toc::[]
Description::
+
--
ProjectHelmChartRepository holds namespace-wide configuration for proxied Helm chart repository
Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
ProjectHelmChartRepository holds namespace-wide configuration for proxied Helm chart repository
Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
--
Type::
@@ -103,27 +102,15 @@ Type::
| `basicAuthConfig`
| `object`
| basicAuthConfig is an optional reference to a secret by name that contains
the basic authentication credentials to present when connecting to the server.
The key "username" is used locate the username.
The key "password" is used to locate the password.
The namespace for this secret must be same as the namespace where the project helm chart repository is getting instantiated.
| basicAuthConfig is an optional reference to a secret by name that contains the basic authentication credentials to present when connecting to the server. The key "username" is used locate the username. The key "password" is used to locate the password. The namespace for this secret must be same as the namespace where the project helm chart repository is getting instantiated.
| `ca`
| `object`
| ca is an optional reference to a config map by name containing the PEM-encoded CA bundle.
It is used as a trust anchor to validate the TLS certificate presented by the remote server.
The key "ca-bundle.crt" is used to locate the data.
If empty, the default system roots are used.
The namespace for this configmap must be same as the namespace where the project helm chart repository is getting instantiated.
| ca is an optional reference to a config map by name containing the PEM-encoded CA bundle. It is used as a trust anchor to validate the TLS certificate presented by the remote server. The key "ca-bundle.crt" is used to locate the data. If empty, the default system roots are used. The namespace for this configmap must be same as the namespace where the project helm chart repository is getting instantiated.
| `tlsClientConfig`
| `object`
| tlsClientConfig is an optional reference to a secret by name that contains the
PEM-encoded TLS client certificate and private key to present when connecting to the server.
The key "tls.crt" is used to locate the client certificate.
The key "tls.key" is used to locate the private key.
The namespace for this secret must be same as the namespace where the project helm chart repository is getting instantiated.
| tlsClientConfig is an optional reference to a secret by name that contains the PEM-encoded TLS client certificate and private key to present when connecting to the server. The key "tls.crt" is used to locate the client certificate. The key "tls.key" is used to locate the private key. The namespace for this secret must be same as the namespace where the project helm chart repository is getting instantiated.
| `url`
| `string`
@@ -134,11 +121,7 @@ The namespace for this secret must be same as the namespace where the project he
Description::
+
--
basicAuthConfig is an optional reference to a secret by name that contains
the basic authentication credentials to present when connecting to the server.
The key "username" is used locate the username.
The key "password" is used to locate the password.
The namespace for this secret must be same as the namespace where the project helm chart repository is getting instantiated.
basicAuthConfig is an optional reference to a secret by name that contains the basic authentication credentials to present when connecting to the server. The key "username" is used locate the username. The key "password" is used to locate the password. The namespace for this secret must be same as the namespace where the project helm chart repository is getting instantiated.
--
Type::
@@ -162,11 +145,7 @@ Required::
Description::
+
--
ca is an optional reference to a config map by name containing the PEM-encoded CA bundle.
It is used as a trust anchor to validate the TLS certificate presented by the remote server.
The key "ca-bundle.crt" is used to locate the data.
If empty, the default system roots are used.
The namespace for this configmap must be same as the namespace where the project helm chart repository is getting instantiated.
ca is an optional reference to a config map by name containing the PEM-encoded CA bundle. It is used as a trust anchor to validate the TLS certificate presented by the remote server. The key "ca-bundle.crt" is used to locate the data. If empty, the default system roots are used. The namespace for this configmap must be same as the namespace where the project helm chart repository is getting instantiated.
--
Type::
@@ -190,11 +169,7 @@ Required::
Description::
+
--
tlsClientConfig is an optional reference to a secret by name that contains the
PEM-encoded TLS client certificate and private key to present when connecting to the server.
The key "tls.crt" is used to locate the client certificate.
The key "tls.key" is used to locate the private key.
The namespace for this secret must be same as the namespace where the project helm chart repository is getting instantiated.
tlsClientConfig is an optional reference to a secret by name that contains the PEM-encoded TLS client certificate and private key to present when connecting to the server. The key "tls.crt" is used to locate the client certificate. The key "tls.key" is used to locate the private key. The namespace for this secret must be same as the namespace where the project helm chart repository is getting instantiated.
--
Type::
@@ -237,7 +212,9 @@ Type::
| `conditions[]`
| `object`
| Condition contains details for one aspect of the current state of this API Resource.
| Condition contains details for one aspect of the current state of this API Resource. --- This struct is intended for direct use as an array at the field path .status.conditions. For example,
type FooStatus struct{ // Represents the observations of a foo's current state. // Known .status.conditions.type are: "Available", "Progressing", and "Degraded" // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"`
// other fields }
|===
=== .status.conditions
@@ -257,7 +234,9 @@ Type::
Description::
+
--
Condition contains details for one aspect of the current state of this API Resource.
Condition contains details for one aspect of the current state of this API Resource. --- This struct is intended for direct use as an array at the field path .status.conditions. For example,
type FooStatus struct{ // Represents the observations of a foo's current state. // Known .status.conditions.type are: "Available", "Progressing", and "Degraded" // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"`
// other fields }
--
Type::
@@ -278,27 +257,19 @@ Required::
| `lastTransitionTime`
| `string`
| lastTransitionTime is the last time the condition transitioned from one status to another.
This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
| lastTransitionTime is the last time the condition transitioned from one status to another. This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
| `message`
| `string`
| message is a human readable message indicating details about the transition.
This may be an empty string.
| message is a human readable message indicating details about the transition. This may be an empty string.
| `observedGeneration`
| `integer`
| observedGeneration represents the .metadata.generation that the condition was set based upon.
For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date
with respect to the current state of the instance.
| observedGeneration represents the .metadata.generation that the condition was set based upon. For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date with respect to the current state of the instance.
| `reason`
| `string`
| reason contains a programmatic identifier indicating the reason for the condition's last transition.
Producers of specific condition types may define expected values and meanings for this field,
and whether the values are considered a guaranteed API.
The value should be a CamelCase string.
This field may not be empty.
| reason contains a programmatic identifier indicating the reason for the condition's last transition. Producers of specific condition types may define expected values and meanings for this field, and whether the values are considered a guaranteed API. The value should be a CamelCase string. This field may not be empty.
| `status`
| `string`
@@ -306,7 +277,7 @@ This field may not be empty.
| `type`
| `string`
| type of condition in CamelCase or in foo.example.com/CamelCase.
| type of condition in CamelCase or in foo.example.com/CamelCase. --- Many .condition.type values are consistent across resources like Available, but because arbitrary conditions can be useful (see .node.status.conditions), the ability to deconflict is important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
|===

View File

@@ -11,9 +11,8 @@ toc::[]
Description::
+
--
Proxy holds cluster-wide information on how to configure default proxies for the cluster. The canonical name is `cluster`
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
Proxy holds cluster-wide information on how to configure default proxies for the cluster. The canonical name is `cluster`
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -77,8 +76,7 @@ Type::
| `noProxy`
| `string`
| noProxy is a comma-separated list of hostnames and/or CIDRs and/or IPs for which the proxy should not be used.
Empty means unset and will not result in an env var.
| noProxy is a comma-separated list of hostnames and/or CIDRs and/or IPs for which the proxy should not be used. Empty means unset and will not result in an env var.
| `readinessEndpoints`
| `array (string)`
@@ -86,58 +84,18 @@ Empty means unset and will not result in an env var.
| `trustedCA`
| `object`
| trustedCA is a reference to a ConfigMap containing a CA certificate bundle.
The trustedCA field should only be consumed by a proxy validator. The
validator is responsible for reading the certificate bundle from the required
key "ca-bundle.crt", merging it with the system default trust bundle,
and writing the merged trust bundle to a ConfigMap named "trusted-ca-bundle"
in the "openshift-config-managed" namespace. Clients that expect to make
proxy connections must use the trusted-ca-bundle for all HTTPS requests to
the proxy, and may use the trusted-ca-bundle for non-proxy HTTPS requests as
well.
The namespace for the ConfigMap referenced by trustedCA is
"openshift-config". Here is an example ConfigMap (in yaml):
apiVersion: v1
kind: ConfigMap
metadata:
name: user-ca-bundle
namespace: openshift-config
data:
ca-bundle.crt: \|
-----BEGIN CERTIFICATE-----
Custom CA certificate bundle.
-----END CERTIFICATE-----
| trustedCA is a reference to a ConfigMap containing a CA certificate bundle. The trustedCA field should only be consumed by a proxy validator. The validator is responsible for reading the certificate bundle from the required key "ca-bundle.crt", merging it with the system default trust bundle, and writing the merged trust bundle to a ConfigMap named "trusted-ca-bundle" in the "openshift-config-managed" namespace. Clients that expect to make proxy connections must use the trusted-ca-bundle for all HTTPS requests to the proxy, and may use the trusted-ca-bundle for non-proxy HTTPS requests as well.
The namespace for the ConfigMap referenced by trustedCA is "openshift-config". Here is an example ConfigMap (in yaml):
apiVersion: v1 kind: ConfigMap metadata: name: user-ca-bundle namespace: openshift-config data: ca-bundle.crt: \| -----BEGIN CERTIFICATE----- Custom CA certificate bundle. -----END CERTIFICATE-----
|===
=== .spec.trustedCA
Description::
+
--
trustedCA is a reference to a ConfigMap containing a CA certificate bundle.
The trustedCA field should only be consumed by a proxy validator. The
validator is responsible for reading the certificate bundle from the required
key "ca-bundle.crt", merging it with the system default trust bundle,
and writing the merged trust bundle to a ConfigMap named "trusted-ca-bundle"
in the "openshift-config-managed" namespace. Clients that expect to make
proxy connections must use the trusted-ca-bundle for all HTTPS requests to
the proxy, and may use the trusted-ca-bundle for non-proxy HTTPS requests as
well.
The namespace for the ConfigMap referenced by trustedCA is
"openshift-config". Here is an example ConfigMap (in yaml):
apiVersion: v1
kind: ConfigMap
metadata:
name: user-ca-bundle
namespace: openshift-config
data:
ca-bundle.crt: \|
-----BEGIN CERTIFICATE-----
Custom CA certificate bundle.
-----END CERTIFICATE-----
trustedCA is a reference to a ConfigMap containing a CA certificate bundle. The trustedCA field should only be consumed by a proxy validator. The validator is responsible for reading the certificate bundle from the required key "ca-bundle.crt", merging it with the system default trust bundle, and writing the merged trust bundle to a ConfigMap named "trusted-ca-bundle" in the "openshift-config-managed" namespace. Clients that expect to make proxy connections must use the trusted-ca-bundle for all HTTPS requests to the proxy, and may use the trusted-ca-bundle for non-proxy HTTPS requests as well.
The namespace for the ConfigMap referenced by trustedCA is "openshift-config". Here is an example ConfigMap (in yaml):
apiVersion: v1 kind: ConfigMap metadata: name: user-ca-bundle namespace: openshift-config data: ca-bundle.crt: \| -----BEGIN CERTIFICATE----- Custom CA certificate bundle. -----END CERTIFICATE-----
--
Type::

View File

@@ -11,10 +11,8 @@ toc::[]
Description::
+
--
Scheduler holds cluster-wide config information to run the Kubernetes Scheduler
and influence its placement decisions. The canonical name for this config is `cluster`.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
Scheduler holds cluster-wide config information to run the Kubernetes Scheduler and influence its placement decisions. The canonical name for this config is `cluster`.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -70,64 +68,27 @@ Type::
| `defaultNodeSelector`
| `string`
| defaultNodeSelector helps set the cluster-wide default node selector to
restrict pod placement to specific nodes. This is applied to the pods
created in all namespaces and creates an intersection with any existing
nodeSelectors already set on a pod, additionally constraining that pod's selector.
For example,
defaultNodeSelector: "type=user-node,region=east" would set nodeSelector
field in pod spec to "type=user-node,region=east" to all pods created
in all namespaces. Namespaces having project-wide node selectors won't be
impacted even if this field is set. This adds an annotation section to
the namespace.
For example, if a new namespace is created with
node-selector='type=user-node,region=east',
the annotation openshift.io/node-selector: type=user-node,region=east
gets added to the project. When the openshift.io/node-selector annotation
is set on the project the value is used in preference to the value we are setting
for defaultNodeSelector field.
For instance,
openshift.io/node-selector: "type=user-node,region=west" means
that the default of "type=user-node,region=east" set in defaultNodeSelector
would not be applied.
| defaultNodeSelector helps set the cluster-wide default node selector to restrict pod placement to specific nodes. This is applied to the pods created in all namespaces and creates an intersection with any existing nodeSelectors already set on a pod, additionally constraining that pod's selector. For example, defaultNodeSelector: "type=user-node,region=east" would set nodeSelector field in pod spec to "type=user-node,region=east" to all pods created in all namespaces. Namespaces having project-wide node selectors won't be impacted even if this field is set. This adds an annotation section to the namespace. For example, if a new namespace is created with node-selector='type=user-node,region=east', the annotation openshift.io/node-selector: type=user-node,region=east gets added to the project. When the openshift.io/node-selector annotation is set on the project the value is used in preference to the value we are setting for defaultNodeSelector field. For instance, openshift.io/node-selector: "type=user-node,region=west" means that the default of "type=user-node,region=east" set in defaultNodeSelector would not be applied.
| `mastersSchedulable`
| `boolean`
| MastersSchedulable allows masters nodes to be schedulable. When this flag is
turned on, all the master nodes in the cluster will be made schedulable,
so that workload pods can run on them. The default value for this field is false,
meaning none of the master nodes are schedulable.
Important Note: Once the workload pods start running on the master nodes,
extreme care must be taken to ensure that cluster-critical control plane components
are not impacted.
Please turn on this field after doing due diligence.
| MastersSchedulable allows masters nodes to be schedulable. When this flag is turned on, all the master nodes in the cluster will be made schedulable, so that workload pods can run on them. The default value for this field is false, meaning none of the master nodes are schedulable. Important Note: Once the workload pods start running on the master nodes, extreme care must be taken to ensure that cluster-critical control plane components are not impacted. Please turn on this field after doing due diligence.
| `policy`
| `object`
| DEPRECATED: the scheduler Policy API has been deprecated and will be removed in a future release.
policy is a reference to a ConfigMap containing scheduler policy which has
user specified predicates and priorities. If this ConfigMap is not available
scheduler will default to use DefaultAlgorithmProvider.
The namespace for this configmap is openshift-config.
| DEPRECATED: the scheduler Policy API has been deprecated and will be removed in a future release. policy is a reference to a ConfigMap containing scheduler policy which has user specified predicates and priorities. If this ConfigMap is not available scheduler will default to use DefaultAlgorithmProvider. The namespace for this configmap is openshift-config.
| `profile`
| `string`
| profile sets which scheduling profile should be set in order to configure scheduling
decisions for new pods.
Valid values are "LowNodeUtilization", "HighNodeUtilization", "NoScoring"
Defaults to "LowNodeUtilization"
| profile sets which scheduling profile should be set in order to configure scheduling decisions for new pods.
Valid values are "LowNodeUtilization", "HighNodeUtilization", "NoScoring" Defaults to "LowNodeUtilization"
|===
=== .spec.policy
Description::
+
--
DEPRECATED: the scheduler Policy API has been deprecated and will be removed in a future release.
policy is a reference to a ConfigMap containing scheduler policy which has
user specified predicates and priorities. If this ConfigMap is not available
scheduler will default to use DefaultAlgorithmProvider.
The namespace for this configmap is openshift-config.
DEPRECATED: the scheduler Policy API has been deprecated and will be removed in a future release. policy is a reference to a ConfigMap containing scheduler policy which has user specified predicates and priorities. If this ConfigMap is not available scheduler will default to use DefaultAlgorithmProvider. The namespace for this configmap is openshift-config.
--
Type::

View File

@@ -12,9 +12,8 @@ toc::[]
Description::
+
--
ConsoleCLIDownload is an extension for configuring openshift web console command line interface (CLI) downloads.
Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
ConsoleCLIDownload is an extension for configuring openshift web console command line interface (CLI) downloads.
Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
--
Type::
@@ -25,9 +24,8 @@ Type::
Description::
+
--
ConsoleExternalLogLink is an extension for customizing OpenShift web console log links.
Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
ConsoleExternalLogLink is an extension for customizing OpenShift web console log links.
Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
--
Type::
@@ -38,9 +36,8 @@ Type::
Description::
+
--
ConsoleLink is an extension for customizing OpenShift web console links.
Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
ConsoleLink is an extension for customizing OpenShift web console links.
Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
--
Type::
@@ -51,9 +48,8 @@ Type::
Description::
+
--
ConsoleNotification is the extension for configuring openshift web console notifications.
Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
ConsoleNotification is the extension for configuring openshift web console notifications.
Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
--
Type::
@@ -64,10 +60,8 @@ Type::
Description::
+
--
ConsolePlugin is an extension for customizing OpenShift web console by
dynamically loading code from another service running on the cluster.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
ConsolePlugin is an extension for customizing OpenShift web console by dynamically loading code from another service running on the cluster.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -78,10 +72,8 @@ Type::
Description::
+
--
ConsoleQuickStart is an extension for guiding user through various
workflows in the OpenShift web console.
Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
ConsoleQuickStart is an extension for guiding user through various workflows in the OpenShift web console.
Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
--
Type::
@@ -92,9 +84,8 @@ Type::
Description::
+
--
ConsoleSample is an extension to customizing OpenShift web console by adding samples.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
ConsoleSample is an extension to customizing OpenShift web console by adding samples.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -105,9 +96,8 @@ Type::
Description::
+
--
ConsoleYAMLSample is an extension for customizing OpenShift web console YAML samples.
Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
ConsoleYAMLSample is an extension for customizing OpenShift web console YAML samples.
Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
--
Type::

View File

@@ -11,9 +11,8 @@ toc::[]
Description::
+
--
ConsoleCLIDownload is an extension for configuring openshift web console command line interface (CLI) downloads.
Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
ConsoleCLIDownload is an extension for configuring openshift web console command line interface (CLI) downloads.
Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
--
Type::

View File

@@ -11,9 +11,8 @@ toc::[]
Description::
+
--
ConsoleExternalLogLink is an extension for customizing OpenShift web console log links.
Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
ConsoleExternalLogLink is an extension for customizing OpenShift web console log links.
Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
--
Type::
@@ -43,16 +42,14 @@ Required::
| `spec`
| `object`
| ConsoleExternalLogLinkSpec is the desired log link configuration.
The log link will appear on the logs tab of the pod details page.
| ConsoleExternalLogLinkSpec is the desired log link configuration. The log link will appear on the logs tab of the pod details page.
|===
=== .spec
Description::
+
--
ConsoleExternalLogLinkSpec is the desired log link configuration.
The log link will appear on the logs tab of the pod details page.
ConsoleExternalLogLinkSpec is the desired log link configuration. The log link will appear on the logs tab of the pod details page.
--
Type::
@@ -70,28 +67,12 @@ Required::
| `hrefTemplate`
| `string`
| hrefTemplate is an absolute secure URL (must use https) for the log link including
variables to be replaced. Variables are specified in the URL with the format ${variableName},
for instance, ${containerName} and will be replaced with the corresponding values
from the resource. Resource is a pod.
Supported variables are:
- ${resourceName} - name of the resource which containes the logs
- ${resourceUID} - UID of the resource which contains the logs
- e.g. `11111111-2222-3333-4444-555555555555`
- ${containerName} - name of the resource's container that contains the logs
- ${resourceNamespace} - namespace of the resource that contains the logs
- ${resourceNamespaceUID} - namespace UID of the resource that contains the logs
- ${podLabels} - JSON representation of labels matching the pod with the logs
- e.g. `{"key1":"value1","key2":"value2"}`
e.g., https://example.com/logs?resourceName=${resourceName}&containerName=${containerName}&resourceNamespace=${resourceNamespace}&podLabels=${podLabels}
| hrefTemplate is an absolute secure URL (must use https) for the log link including variables to be replaced. Variables are specified in the URL with the format ${variableName}, for instance, ${containerName} and will be replaced with the corresponding values from the resource. Resource is a pod. Supported variables are: - ${resourceName} - name of the resource which containes the logs - ${resourceUID} - UID of the resource which contains the logs - e.g. `11111111-2222-3333-4444-555555555555` - ${containerName} - name of the resource's container that contains the logs - ${resourceNamespace} - namespace of the resource that contains the logs - ${resourceNamespaceUID} - namespace UID of the resource that contains the logs - ${podLabels} - JSON representation of labels matching the pod with the logs - e.g. `{"key1":"value1","key2":"value2"}`
e.g., https://example.com/logs?resourceName=${resourceName}&containerName=${containerName}&resourceNamespace=${resourceNamespace}&podLabels=${podLabels}
| `namespaceFilter`
| `string`
| namespaceFilter is a regular expression used to restrict a log link to a
matching set of namespaces (e.g., `^openshift-`). The string is converted
into a regular expression using the JavaScript RegExp constructor.
If not specified, links will be displayed for all the namespaces.
| namespaceFilter is a regular expression used to restrict a log link to a matching set of namespaces (e.g., `^openshift-`). The string is converted into a regular expression using the JavaScript RegExp constructor. If not specified, links will be displayed for all the namespaces.
| `text`
| `string`

View File

@@ -11,9 +11,8 @@ toc::[]
Description::
+
--
ConsoleLink is an extension for customizing OpenShift web console links.
Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
ConsoleLink is an extension for customizing OpenShift web console links.
Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
--
Type::
@@ -69,8 +68,7 @@ Required::
| `applicationMenu`
| `object`
| applicationMenu holds information about section and icon used for the link in the
application menu, and it is applicable only when location is set to ApplicationMenu.
| applicationMenu holds information about section and icon used for the link in the application menu, and it is applicable only when location is set to ApplicationMenu.
| `href`
| `string`
@@ -82,9 +80,7 @@ application menu, and it is applicable only when location is set to ApplicationM
| `namespaceDashboard`
| `object`
| namespaceDashboard holds information about namespaces in which the dashboard link should
appear, and it is applicable only when location is set to NamespaceDashboard.
If not specified, the link will appear in all namespaces.
| namespaceDashboard holds information about namespaces in which the dashboard link should appear, and it is applicable only when location is set to NamespaceDashboard. If not specified, the link will appear in all namespaces.
| `text`
| `string`
@@ -95,8 +91,7 @@ If not specified, the link will appear in all namespaces.
Description::
+
--
applicationMenu holds information about section and icon used for the link in the
application menu, and it is applicable only when location is set to ApplicationMenu.
applicationMenu holds information about section and icon used for the link in the application menu, and it is applicable only when location is set to ApplicationMenu.
--
Type::
@@ -113,23 +108,18 @@ Required::
| `imageURL`
| `string`
| imageUrl is the URL for the icon used in front of the link in the application menu.
The URL must be an HTTPS URL or a Data URI. The image should be square and will be shown at 24x24 pixels.
| imageUrl is the URL for the icon used in front of the link in the application menu. The URL must be an HTTPS URL or a Data URI. The image should be square and will be shown at 24x24 pixels.
| `section`
| `string`
| section is the section of the application menu in which the link should appear.
This can be any text that will appear as a subheading in the application menu dropdown.
A new section will be created if the text does not match text of an existing section.
| section is the section of the application menu in which the link should appear. This can be any text that will appear as a subheading in the application menu dropdown. A new section will be created if the text does not match text of an existing section.
|===
=== .spec.namespaceDashboard
Description::
+
--
namespaceDashboard holds information about namespaces in which the dashboard link should
appear, and it is applicable only when location is set to NamespaceDashboard.
If not specified, the link will appear in all namespaces.
namespaceDashboard holds information about namespaces in which the dashboard link should appear, and it is applicable only when location is set to NamespaceDashboard. If not specified, the link will appear in all namespaces.
--
Type::
@@ -144,8 +134,7 @@ Type::
| `namespaceSelector`
| `object`
| namespaceSelector is used to select the Namespaces that should contain dashboard link by label.
If the namespace labels match, dashboard link will be shown for the namespaces.
| namespaceSelector is used to select the Namespaces that should contain dashboard link by label. If the namespace labels match, dashboard link will be shown for the namespaces.
| `namespaces`
| `array (string)`
@@ -156,8 +145,7 @@ If the namespace labels match, dashboard link will be shown for the namespaces.
Description::
+
--
namespaceSelector is used to select the Namespaces that should contain dashboard link by label.
If the namespace labels match, dashboard link will be shown for the namespaces.
namespaceSelector is used to select the Namespaces that should contain dashboard link by label. If the namespace labels match, dashboard link will be shown for the namespaces.
--
Type::
@@ -176,14 +164,11 @@ Type::
| `matchExpressions[]`
| `object`
| A label selector requirement is a selector that contains values, a key, and an operator that
relates the key and values.
| A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
| `matchLabels`
| `object (string)`
| matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
map is equivalent to an element of matchExpressions, whose key field is "key", the
operator is "In", and the values array contains only "value". The requirements are ANDed.
| matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
|===
=== .spec.namespaceDashboard.namespaceSelector.matchExpressions
@@ -203,8 +188,7 @@ Type::
Description::
+
--
A label selector requirement is a selector that contains values, a key, and an operator that
relates the key and values.
A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
--
Type::
@@ -226,15 +210,11 @@ Required::
| `operator`
| `string`
| operator represents a key's relationship to a set of values.
Valid operators are In, NotIn, Exists and DoesNotExist.
| operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
| `values`
| `array (string)`
| values is an array of string values. If the operator is In or NotIn,
the values array must be non-empty. If the operator is Exists or DoesNotExist,
the values array must be empty. This array is replaced during a strategic
merge patch.
| values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
|===

View File

@@ -11,9 +11,8 @@ toc::[]
Description::
+
--
ConsoleNotification is the extension for configuring openshift web console notifications.
Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
ConsoleNotification is the extension for configuring openshift web console notifications.
Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
--
Type::
@@ -79,8 +78,7 @@ Required::
| `location`
| `string`
| location is the location of the notification in the console.
Valid values are: "BannerTop", "BannerBottom", "BannerTopBottom".
| location is the location of the notification in the console. Valid values are: "BannerTop", "BannerBottom", "BannerTopBottom".
| `text`
| `string`

View File

@@ -11,10 +11,8 @@ toc::[]
Description::
+
--
ConsolePlugin is an extension for customizing OpenShift web console by
dynamically loading code from another service running on the cluster.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
ConsolePlugin is an extension for customizing OpenShift web console by dynamically loading code from another service running on the cluster.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -74,8 +72,7 @@ Required::
| `displayName`
| `string`
| displayName is the display name of the plugin.
The dispalyName should be between 1 and 128 characters.
| displayName is the display name of the plugin. The dispalyName should be between 1 and 128 characters.
| `i18n`
| `object`
@@ -83,13 +80,11 @@ The dispalyName should be between 1 and 128 characters.
| `proxy`
| `array`
| proxy is a list of proxies that describe various service type
to which the plugin needs to connect to.
| proxy is a list of proxies that describe various service type to which the plugin needs to connect to.
| `proxy[]`
| `object`
| ConsolePluginProxy holds information on various service types
to which console's backend will proxy the plugin's requests.
| ConsolePluginProxy holds information on various service types to which console's backend will proxy the plugin's requests.
|===
=== .spec.backend
@@ -113,25 +108,19 @@ Required::
| `service`
| `object`
| service is a Kubernetes Service that exposes the plugin using a
deployment with an HTTP server. The Service must use HTTPS and
Service serving certificate. The console backend will proxy the
plugins assets from the Service using the service CA bundle.
| service is a Kubernetes Service that exposes the plugin using a deployment with an HTTP server. The Service must use HTTPS and Service serving certificate. The console backend will proxy the plugins assets from the Service using the service CA bundle.
| `type`
| `string`
| type is the backend type which servers the console's plugin. Currently only "Service" is supported.
| type is the backend type which servers the console's plugin. Currently only "Service" is supported.
---
|===
=== .spec.backend.service
Description::
+
--
service is a Kubernetes Service that exposes the plugin using a
deployment with an HTTP server. The Service must use HTTPS and
Service serving certificate. The console backend will proxy the
plugins assets from the Service using the service CA bundle.
service is a Kubernetes Service that exposes the plugin using a deployment with an HTTP server. The Service must use HTTPS and Service serving certificate. The console backend will proxy the plugins assets from the Service using the service CA bundle.
--
Type::
@@ -150,9 +139,7 @@ Required::
| `basePath`
| `string`
| basePath is the path to the plugin's assets. The primary asset it the
manifest file called `plugin-manifest.json`, which is a JSON document
that contains metadata about the plugin and the extensions.
| basePath is the path to the plugin's assets. The primary asset it the manifest file called `plugin-manifest.json`, which is a JSON document that contains metadata about the plugin and the extensions.
| `name`
| `string`
@@ -188,19 +175,14 @@ Required::
| `loadType`
| `string`
| loadType indicates how the plugin's localization resource should be loaded.
Valid values are Preload, Lazy and the empty string.
When set to Preload, all localization resources are fetched when the plugin is loaded.
When set to Lazy, localization resources are lazily loaded as and when they are required by the console.
When omitted or set to the empty string, the behaviour is equivalent to Lazy type.
| loadType indicates how the plugin's localization resource should be loaded. Valid values are Preload, Lazy and the empty string. When set to Preload, all localization resources are fetched when the plugin is loaded. When set to Lazy, localization resources are lazily loaded as and when they are required by the console. When omitted or set to the empty string, the behaviour is equivalent to Lazy type.
|===
=== .spec.proxy
Description::
+
--
proxy is a list of proxies that describe various service type
to which the plugin needs to connect to.
proxy is a list of proxies that describe various service type to which the plugin needs to connect to.
--
Type::
@@ -213,8 +195,7 @@ Type::
Description::
+
--
ConsolePluginProxy holds information on various service types
to which console's backend will proxy the plugin's requests.
ConsolePluginProxy holds information on various service types to which console's backend will proxy the plugin's requests.
--
Type::
@@ -232,26 +213,18 @@ Required::
| `alias`
| `string`
| alias is a proxy name that identifies the plugin's proxy. An alias name
should be unique per plugin. The console backend exposes following
proxy endpoint:
/api/proxy/plugin/<plugin-name>/<proxy-alias>/<request-path>?<optional-query-parameters>
Request example path:
/api/proxy/plugin/acm/search/pods?namespace=openshift-apiserver
| alias is a proxy name that identifies the plugin's proxy. An alias name should be unique per plugin. The console backend exposes following proxy endpoint:
/api/proxy/plugin/<plugin-name>/<proxy-alias>/<request-path>?<optional-query-parameters>
Request example path:
/api/proxy/plugin/acm/search/pods?namespace=openshift-apiserver
| `authorization`
| `string`
| authorization provides information about authorization type,
which the proxied request should contain
| authorization provides information about authorization type, which the proxied request should contain
| `caCertificate`
| `string`
| caCertificate provides the cert authority certificate contents,
in case the proxied Service is using custom service CA.
By default, the service CA bundle provided by the service-ca operator is used.
| caCertificate provides the cert authority certificate contents, in case the proxied Service is using custom service CA. By default, the service CA bundle provided by the service-ca operator is used.
| `endpoint`
| `object`
@@ -279,27 +252,19 @@ Required::
| `service`
| `object`
| service is an in-cluster Service that the plugin will connect to.
The Service must use HTTPS. The console backend exposes an endpoint
in order to proxy communication between the plugin and the Service.
Note: service field is required for now, since currently only "Service"
type is supported.
| service is an in-cluster Service that the plugin will connect to. The Service must use HTTPS. The console backend exposes an endpoint in order to proxy communication between the plugin and the Service. Note: service field is required for now, since currently only "Service" type is supported.
| `type`
| `string`
| type is the type of the console plugin's proxy. Currently only "Service" is supported.
| type is the type of the console plugin's proxy. Currently only "Service" is supported.
---
|===
=== .spec.proxy[].endpoint.service
Description::
+
--
service is an in-cluster Service that the plugin will connect to.
The Service must use HTTPS. The console backend exposes an endpoint
in order to proxy communication between the plugin and the Service.
Note: service field is required for now, since currently only "Service"
type is supported.
service is an in-cluster Service that the plugin will connect to. The Service must use HTTPS. The console backend exposes an endpoint in order to proxy communication between the plugin and the Service. Note: service field is required for now, since currently only "Service" type is supported.
--
Type::
@@ -326,8 +291,7 @@ Required::
| `port`
| `integer`
| port on which the Service that the plugin needs to connect to
is listening on.
| port on which the Service that the plugin needs to connect to is listening on.
|===

View File

@@ -11,10 +11,8 @@ toc::[]
Description::
+
--
ConsoleQuickStart is an extension for guiding user through various
workflows in the OpenShift web console.
Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
ConsoleQuickStart is an extension for guiding user through various workflows in the OpenShift web console.
Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
--
Type::
@@ -72,9 +70,7 @@ Required::
| `accessReviewResources`
| `array`
| accessReviewResources contains a list of resources that the user's access
will be reviewed against in order for the user to complete the Quick Start.
The Quick Start will be hidden if any of the access reviews fail.
| accessReviewResources contains a list of resources that the user's access will be reviewed against in order for the user to complete the Quick Start. The Quick Start will be hidden if any of the access reviews fail.
| `accessReviewResources[]`
| `object`
@@ -98,8 +94,7 @@ The Quick Start will be hidden if any of the access reviews fail.
| `icon`
| `string`
| icon is a base64 encoded image that will be displayed beside the Quick Start display name.
The icon should be an vector image for easy scaling. The size of the icon should be 40x40.
| icon is a base64 encoded image that will be displayed beside the Quick Start display name. The icon should be an vector image for easy scaling. The size of the icon should be 40x40.
| `introduction`
| `string`
@@ -130,9 +125,7 @@ The icon should be an vector image for easy scaling. The size of the icon should
Description::
+
--
accessReviewResources contains a list of resources that the user's access
will be reviewed against in order for the user to complete the Quick Start.
The Quick Start will be hidden if any of the access reviews fail.
accessReviewResources contains a list of resources that the user's access will be reviewed against in order for the user to complete the Quick Start. The Quick Start will be hidden if any of the access reviews fail.
--
Type::
@@ -158,34 +151,17 @@ Type::
|===
| Property | Type | Description
| `fieldSelector`
| `object`
| fieldSelector describes the limitation on access based on field. It can only limit access, not broaden it.
This field is alpha-level. To use this field, you must enable the
`AuthorizeWithSelectors` feature gate (disabled by default).
| `group`
| `string`
| Group is the API Group of the Resource. "*" means all.
| `labelSelector`
| `object`
| labelSelector describes the limitation on access based on labels. It can only limit access, not broaden it.
This field is alpha-level. To use this field, you must enable the
`AuthorizeWithSelectors` feature gate (disabled by default).
| `name`
| `string`
| Name is the name of the resource being requested for a "get" or deleted for a "delete". "" (empty) means all.
| `namespace`
| `string`
| Namespace is the namespace of the action being requested. Currently, there is no distinction between no namespace and all namespaces
"" (empty) is defaulted for LocalSubjectAccessReviews
"" (empty) is empty for cluster-scoped resources
"" (empty) means "all" for namespace scoped resources from a SubjectAccessReview or SelfSubjectAccessReview
| Namespace is the namespace of the action being requested. Currently, there is no distinction between no namespace and all namespaces "" (empty) is defaulted for LocalSubjectAccessReviews "" (empty) is empty for cluster-scoped resources "" (empty) means "all" for namespace scoped resources from a SubjectAccessReview or SelfSubjectAccessReview
| `resource`
| `string`
@@ -203,196 +179,6 @@ This field is alpha-level. To use this field, you must enable the
| `string`
| Version is the API Version of the Resource. "*" means all.
|===
=== .spec.accessReviewResources[].fieldSelector
Description::
+
--
fieldSelector describes the limitation on access based on field. It can only limit access, not broaden it.
This field is alpha-level. To use this field, you must enable the
`AuthorizeWithSelectors` feature gate (disabled by default).
--
Type::
`object`
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `rawSelector`
| `string`
| rawSelector is the serialization of a field selector that would be included in a query parameter.
Webhook implementations are encouraged to ignore rawSelector.
The kube-apiserver's *SubjectAccessReview will parse the rawSelector as long as the requirements are not present.
| `requirements`
| `array`
| requirements is the parsed interpretation of a field selector.
All requirements must be met for a resource instance to match the selector.
Webhook implementations should handle requirements, but how to handle them is up to the webhook.
Since requirements can only limit the request, it is safe to authorize as unlimited request if the requirements
are not understood.
| `requirements[]`
| `object`
| FieldSelectorRequirement is a selector that contains values, a key, and an operator that
relates the key and values.
|===
=== .spec.accessReviewResources[].fieldSelector.requirements
Description::
+
--
requirements is the parsed interpretation of a field selector.
All requirements must be met for a resource instance to match the selector.
Webhook implementations should handle requirements, but how to handle them is up to the webhook.
Since requirements can only limit the request, it is safe to authorize as unlimited request if the requirements
are not understood.
--
Type::
`array`
=== .spec.accessReviewResources[].fieldSelector.requirements[]
Description::
+
--
FieldSelectorRequirement is a selector that contains values, a key, and an operator that
relates the key and values.
--
Type::
`object`
Required::
- `key`
- `operator`
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `key`
| `string`
| key is the field selector key that the requirement applies to.
| `operator`
| `string`
| operator represents a key's relationship to a set of values.
Valid operators are In, NotIn, Exists, DoesNotExist.
The list of operators may grow in the future.
| `values`
| `array (string)`
| values is an array of string values.
If the operator is In or NotIn, the values array must be non-empty.
If the operator is Exists or DoesNotExist, the values array must be empty.
|===
=== .spec.accessReviewResources[].labelSelector
Description::
+
--
labelSelector describes the limitation on access based on labels. It can only limit access, not broaden it.
This field is alpha-level. To use this field, you must enable the
`AuthorizeWithSelectors` feature gate (disabled by default).
--
Type::
`object`
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `rawSelector`
| `string`
| rawSelector is the serialization of a field selector that would be included in a query parameter.
Webhook implementations are encouraged to ignore rawSelector.
The kube-apiserver's *SubjectAccessReview will parse the rawSelector as long as the requirements are not present.
| `requirements`
| `array`
| requirements is the parsed interpretation of a label selector.
All requirements must be met for a resource instance to match the selector.
Webhook implementations should handle requirements, but how to handle them is up to the webhook.
Since requirements can only limit the request, it is safe to authorize as unlimited request if the requirements
are not understood.
| `requirements[]`
| `object`
| A label selector requirement is a selector that contains values, a key, and an operator that
relates the key and values.
|===
=== .spec.accessReviewResources[].labelSelector.requirements
Description::
+
--
requirements is the parsed interpretation of a label selector.
All requirements must be met for a resource instance to match the selector.
Webhook implementations should handle requirements, but how to handle them is up to the webhook.
Since requirements can only limit the request, it is safe to authorize as unlimited request if the requirements
are not understood.
--
Type::
`array`
=== .spec.accessReviewResources[].labelSelector.requirements[]
Description::
+
--
A label selector requirement is a selector that contains values, a key, and an operator that
relates the key and values.
--
Type::
`object`
Required::
- `key`
- `operator`
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `key`
| `string`
| key is the label key that the selector applies to.
| `operator`
| `string`
| operator represents a key's relationship to a set of values.
Valid operators are In, NotIn, Exists and DoesNotExist.
| `values`
| `array (string)`
| values is an array of string values. If the operator is In or NotIn,
the values array must be non-empty. If the operator is Exists or DoesNotExist,
the values array must be empty. This array is replaced during a strategic
merge patch.
|===
=== .spec.tasks
Description::
@@ -433,8 +219,7 @@ Required::
| `review`
| `object`
| review contains instructions to validate the task is complete. The user will select 'Yes' or 'No'.
using a radio button, which indicates whether the step was completed successfully.
| review contains instructions to validate the task is complete. The user will select 'Yes' or 'No'. using a radio button, which indicates whether the step was completed successfully.
| `summary`
| `object`
@@ -449,8 +234,7 @@ using a radio button, which indicates whether the step was completed successfull
Description::
+
--
review contains instructions to validate the task is complete. The user will select 'Yes' or 'No'.
using a radio button, which indicates whether the step was completed successfully.
review contains instructions to validate the task is complete. The user will select 'Yes' or 'No'. using a radio button, which indicates whether the step was completed successfully.
--
Type::
@@ -472,8 +256,7 @@ Required::
| `instructions`
| `string`
| instructions contains steps that user needs to take in order
to validate his work after going through a task. (includes markdown)
| instructions contains steps that user needs to take in order to validate his work after going through a task. (includes markdown)
|===
=== .spec.tasks[].summary

View File

@@ -11,9 +11,8 @@ toc::[]
Description::
+
--
ConsoleSample is an extension to customizing OpenShift web console by adding samples.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
ConsoleSample is an extension to customizing OpenShift web console by adding samples.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -71,91 +70,63 @@ Required::
| `abstract`
| `string`
| abstract is a short introduction to the sample.
It is required and must be no more than 100 characters in length.
The abstract is shown on the sample card tile below the title and provider
and is limited to three lines of content.
| abstract is a short introduction to the sample.
It is required and must be no more than 100 characters in length.
The abstract is shown on the sample card tile below the title and provider and is limited to three lines of content.
| `description`
| `string`
| description is a long form explanation of the sample.
It is required and can have a maximum length of **4096** characters.
It is a README.md-like content for additional information, links, pre-conditions, and other instructions.
It will be rendered as Markdown so that it can contain line breaks, links, and other simple formatting.
| description is a long form explanation of the sample.
It is required and can have a maximum length of **4096** characters.
It is a README.md-like content for additional information, links, pre-conditions, and other instructions. It will be rendered as Markdown so that it can contain line breaks, links, and other simple formatting.
| `icon`
| `string`
| icon is an optional base64 encoded image and shown beside the sample title.
The format must follow the data: URL format and can have a maximum size of **10 KB**.
data:[<mediatype>][;base64],<base64 encoded image>
For example:
data:image;base64, plus the base64 encoded image.
Vector images can also be used. SVG icons must start with:
data:image/svg+xml;base64, plus the base64 encoded SVG image.
All sample catalog icons will be shown on a white background (also when the dark theme is used).
The web console ensures that different aspect ratios work correctly.
Currently, the surface of the icon is at most 40x100px.
For more information on the data URL format, please visit
https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/Data_URLs.
| icon is an optional base64 encoded image and shown beside the sample title.
The format must follow the data: URL format and can have a maximum size of **10 KB**.
data:[<mediatype>][;base64],<base64 encoded image>
For example:
data:image;base64, plus the base64 encoded image.
Vector images can also be used. SVG icons must start with:
data:image/svg+xml;base64, plus the base64 encoded SVG image.
All sample catalog icons will be shown on a white background (also when the dark theme is used). The web console ensures that different aspect ratios work correctly. Currently, the surface of the icon is at most 40x100px.
For more information on the data URL format, please visit https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/Data_URLs.
| `provider`
| `string`
| provider is an optional label to honor who provides the sample.
It is optional and must be no more than 50 characters in length.
A provider can be a company like "Red Hat" or an organization like "CNCF" or "Knative".
Currently, the provider is only shown on the sample card tile below the title with the prefix "Provided by "
| provider is an optional label to honor who provides the sample.
It is optional and must be no more than 50 characters in length.
A provider can be a company like "Red Hat" or an organization like "CNCF" or "Knative".
Currently, the provider is only shown on the sample card tile below the title with the prefix "Provided by "
| `source`
| `object`
| source defines where to deploy the sample service from.
The sample may be sourced from an external git repository or container image.
| source defines where to deploy the sample service from. The sample may be sourced from an external git repository or container image.
| `tags`
| `array (string)`
| tags are optional string values that can be used to find samples in the samples catalog.
Examples of common tags may be "Java", "Quarkus", etc.
They will be displayed on the samples details page.
| tags are optional string values that can be used to find samples in the samples catalog.
Examples of common tags may be "Java", "Quarkus", etc.
They will be displayed on the samples details page.
| `title`
| `string`
| title is the display name of the sample.
It is required and must be no more than 50 characters in length.
| title is the display name of the sample.
It is required and must be no more than 50 characters in length.
| `type`
| `string`
| type is an optional label to group multiple samples.
It is optional and must be no more than 20 characters in length.
Recommendation is a singular term like "Builder Image", "Devfile" or "Serverless Function".
Currently, the type is shown a badge on the sample card tile in the top right corner.
| type is an optional label to group multiple samples.
It is optional and must be no more than 20 characters in length.
Recommendation is a singular term like "Builder Image", "Devfile" or "Serverless Function".
Currently, the type is shown a badge on the sample card tile in the top right corner.
|===
=== .spec.source
Description::
+
--
source defines where to deploy the sample service from.
The sample may be sourced from an external git repository or container image.
source defines where to deploy the sample service from. The sample may be sourced from an external git repository or container image.
--
Type::
@@ -204,16 +175,8 @@ Required::
| `image`
| `string`
| reference to a container image that provides a HTTP service.
The service must be exposed on the default port (8080) unless
otherwise configured with the port field.
Supported formats:
- <repository-name>/<image-name>
- docker.io/<repository-name>/<image-name>
- quay.io/<repository-name>/<image-name>
- quay.io/<repository-name>/<image-name>@sha256:<image hash>
- quay.io/<repository-name>/<image-name>:<tag>
| reference to a container image that provides a HTTP service. The service must be exposed on the default port (8080) unless otherwise configured with the port field.
Supported formats: - <repository-name>/<image-name> - docker.io/<repository-name>/<image-name> - quay.io/<repository-name>/<image-name> - quay.io/<repository-name>/<image-name>@sha256:<image hash> - quay.io/<repository-name>/<image-name>:<tag>
| `service`
| `object`
@@ -239,10 +202,7 @@ Type::
| `targetPort`
| `integer`
| targetPort is the port that the service listens on for HTTP requests.
This port will be used for Service and Route created for this sample.
Port must be in the range 1 to 65535.
Default port is 8080.
| targetPort is the port that the service listens on for HTTP requests. This port will be used for Service and Route created for this sample. Port must be in the range 1 to 65535. Default port is 8080.
|===
=== .spec.source.gitImport
@@ -294,31 +254,18 @@ Required::
| `contextDir`
| `string`
| contextDir is used to specify a directory within the repository to build the
component.
Must start with `/` and have a maximum length of 256 characters.
When omitted, the default value is to build from the root of the repository.
| contextDir is used to specify a directory within the repository to build the component. Must start with `/` and have a maximum length of 256 characters. When omitted, the default value is to build from the root of the repository.
| `revision`
| `string`
| revision is the git revision at which to clone the git repository
Can be used to clone a specific branch, tag or commit SHA.
Must be at most 256 characters in length.
When omitted the repository's default branch is used.
| revision is the git revision at which to clone the git repository Can be used to clone a specific branch, tag or commit SHA. Must be at most 256 characters in length. When omitted the repository's default branch is used.
| `url`
| `string`
| url of the Git repository that contains a HTTP service.
The HTTP service must be exposed on the default port (8080) unless
otherwise configured with the port field.
Only public repositories on GitHub, GitLab and Bitbucket are currently supported:
- https://github.com/<org>/<repository>
- https://gitlab.com/<org>/<repository>
- https://bitbucket.org/<org>/<repository>
The url must have a maximum length of 256 characters.
| url of the Git repository that contains a HTTP service. The HTTP service must be exposed on the default port (8080) unless otherwise configured with the port field.
Only public repositories on GitHub, GitLab and Bitbucket are currently supported:
- https://github.com/<org>/<repository> - https://gitlab.com/<org>/<repository> - https://bitbucket.org/<org>/<repository>
The url must have a maximum length of 256 characters.
|===
=== .spec.source.gitImport.service
@@ -340,10 +287,7 @@ Type::
| `targetPort`
| `integer`
| targetPort is the port that the service listens on for HTTP requests.
This port will be used for Service created for this sample.
Port must be in the range 1 to 65535.
Default port is 8080.
| targetPort is the port that the service listens on for HTTP requests. This port will be used for Service created for this sample. Port must be in the range 1 to 65535. Default port is 8080.
|===

View File

@@ -11,9 +11,8 @@ toc::[]
Description::
+
--
ConsoleYAMLSample is an extension for customizing OpenShift web console YAML samples.
Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
ConsoleYAMLSample is an extension for customizing OpenShift web console YAML samples.
Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
--
Type::
@@ -44,18 +43,14 @@ Required::
| `spec`
| `object`
| ConsoleYAMLSampleSpec is the desired YAML sample configuration.
Samples will appear with their descriptions in a samples sidebar
when creating a resources in the web console.
| ConsoleYAMLSampleSpec is the desired YAML sample configuration. Samples will appear with their descriptions in a samples sidebar when creating a resources in the web console.
|===
=== .spec
Description::
+
--
ConsoleYAMLSampleSpec is the desired YAML sample configuration.
Samples will appear with their descriptions in a samples sidebar
when creating a resources in the web console.
ConsoleYAMLSampleSpec is the desired YAML sample configuration. Samples will appear with their descriptions in a samples sidebar when creating a resources in the web console.
--
Type::
@@ -79,14 +74,11 @@ Required::
| `snippet`
| `boolean`
| snippet indicates that the YAML sample is not the full YAML resource
definition, but a fragment that can be inserted into the existing
YAML document at the user's cursor.
| snippet indicates that the YAML sample is not the full YAML resource definition, but a fragment that can be inserted into the existing YAML document at the user's cursor.
| `targetResource`
| `object`
| targetResource contains apiVersion and kind of the resource
YAML sample is representating.
| targetResource contains apiVersion and kind of the resource YAML sample is representating.
| `title`
| `string`
@@ -101,8 +93,7 @@ YAML sample is representating.
Description::
+
--
targetResource contains apiVersion and kind of the resource
YAML sample is representating.
targetResource contains apiVersion and kind of the resource YAML sample is representating.
--
Type::
@@ -117,18 +108,11 @@ Type::
| `apiVersion`
| `string`
| APIVersion defines the versioned schema of this representation of an object.
Servers should convert recognized schemas to the latest internal value, and
may reject unrecognized values.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
| APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
| `kind`
| `string`
| Kind is a string value representing the REST resource this object represents.
Servers may infer this from the endpoint the client submits requests to.
Cannot be updated.
In CamelCase.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
| Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
|===

View File

@@ -11,9 +11,8 @@ toc::[]
Description::
+
--
ContainerRuntimeConfig describes a customized Container Runtime configuration.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
ContainerRuntimeConfig describes a customized Container Runtime configuration.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -75,8 +74,7 @@ Required::
| `machineConfigPoolSelector`
| `object`
| MachineConfigPoolSelector selects which pools the ContainerRuntimeConfig shoud apply to.
A nil selector will result in no pools being selected.
| MachineConfigPoolSelector selects which pools the ContainerRuntimeConfig shoud apply to. A nil selector will result in no pools being selected.
|===
=== .spec.containerRuntimeConfig
@@ -102,19 +100,15 @@ Type::
| `logLevel`
| `string`
| logLevel specifies the verbosity of the logs based on the level it is set to.
Options are fatal, panic, error, warn, info, and debug.
| logLevel specifies the verbosity of the logs based on the level it is set to. Options are fatal, panic, error, warn, info, and debug.
| `logSizeMax`
| `integer-or-string`
| logSizeMax specifies the Maximum size allowed for the container log file.
Negative numbers indicate that no size limit is imposed.
If it is positive, it must be >= 8192 to match/exceed conmon's read buffer.
| logSizeMax specifies the Maximum size allowed for the container log file. Negative numbers indicate that no size limit is imposed. If it is positive, it must be >= 8192 to match/exceed conmon's read buffer.
| `overlaySize`
| `integer-or-string`
| overlaySize specifies the maximum size of a container image.
This flag can be used to set quota on the size of container images. (default: 10GB)
| overlaySize specifies the maximum size of a container image. This flag can be used to set quota on the size of container images. (default: 10GB)
| `pidsLimit`
| `integer`
@@ -125,8 +119,7 @@ This flag can be used to set quota on the size of container images. (default: 10
Description::
+
--
MachineConfigPoolSelector selects which pools the ContainerRuntimeConfig shoud apply to.
A nil selector will result in no pools being selected.
MachineConfigPoolSelector selects which pools the ContainerRuntimeConfig shoud apply to. A nil selector will result in no pools being selected.
--
Type::
@@ -145,14 +138,11 @@ Type::
| `matchExpressions[]`
| `object`
| A label selector requirement is a selector that contains values, a key, and an operator that
relates the key and values.
| A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
| `matchLabels`
| `object (string)`
| matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
map is equivalent to an element of matchExpressions, whose key field is "key", the
operator is "In", and the values array contains only "value". The requirements are ANDed.
| matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
|===
=== .spec.machineConfigPoolSelector.matchExpressions
@@ -172,8 +162,7 @@ Type::
Description::
+
--
A label selector requirement is a selector that contains values, a key, and an operator that
relates the key and values.
A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
--
Type::
@@ -195,15 +184,11 @@ Required::
| `operator`
| `string`
| operator represents a key's relationship to a set of values.
Valid operators are In, NotIn, Exists and DoesNotExist.
| operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
| `values`
| `array (string)`
| values is an array of string values. If the operator is In or NotIn,
the values array must be non-empty. If the operator is Exists or DoesNotExist,
the values array must be empty. This array is replaced during a strategic
merge patch.
| values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
|===
=== .status
@@ -272,8 +257,7 @@ Type::
| `message`
| `string`
| message provides additional information about the current condition.
This is only to be consumed by humans.
| message provides additional information about the current condition. This is only to be consumed by humans.
| `reason`
| `string`

View File

@@ -11,10 +11,8 @@ toc::[]
Description::
+
--
ControllerConfig describes configuration for MachineConfigController.
This is currently only used to drive the MachineConfig objects generated by the TemplateController.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
ControllerConfig describes configuration for MachineConfigController. This is currently only used to drive the MachineConfig objects generated by the TemplateController.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -79,8 +77,7 @@ Required::
| `additionalTrustBundle`
| ``
| additionalTrustBundle is a certificate bundle that will be added to the nodes
trusted certificate store.
| additionalTrustBundle is a certificate bundle that will be added to the nodes trusted certificate store.
| `baseOSContainerImage`
| `string`
@@ -136,8 +133,7 @@ trusted certificate store.
| `internalRegistryPullSecret`
| ``
| internalRegistryPullSecret is the pull secret for the internal registry, used by
rpm-ostree to pull images from the internal registry if present
| internalRegistryPullSecret is the pull secret for the internal registry, used by rpm-ostree to pull images from the internal registry if present
| `ipFamilies`
| `string`
@@ -153,11 +149,7 @@ rpm-ostree to pull images from the internal registry if present
| `networkType`
| `string`
| networkType holds the type of network the cluster is using
XXX: this is temporary and will be dropped as soon as possible in favor of a better support
to start network related services the proper way.
Nobody is also changing this once the cluster is up and running the first time, so, disallow
regeneration if this changes.
| networkType holds the type of network the cluster is using XXX: this is temporary and will be dropped as soon as possible in favor of a better support to start network related services the proper way. Nobody is also changing this once the cluster is up and running the first time, so, disallow regeneration if this changes.
| `osImageURL`
| `string`
@@ -173,8 +165,7 @@ regeneration if this changes.
| `pullSecret`
| `object`
| pullSecret is the default pull secret that needs to be installed
on all machines.
| pullSecret is the default pull secret that needs to be installed on all machines.
| `releaseImage`
| `string`
@@ -341,8 +332,7 @@ Required::
Description::
+
--
pullSecret is the default pull secret that needs to be installed
on all machines.
pullSecret is the default pull secret that needs to be installed on all machines.
--
Type::
@@ -361,38 +351,27 @@ Type::
| `fieldPath`
| `string`
| If referring to a piece of an object instead of an entire object, this string
should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2].
For example, if the object reference is to a container within a pod, this would take on a value like:
"spec.containers{name}" (where "name" refers to the name of the container that triggered
the event) or if no container name is specified "spec.containers[2]" (container with
index 2 in this pod). This syntax is chosen only to have some well-defined way of
referencing a part of an object.
| If referring to a piece of an object instead of an entire object, this string should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2]. For example, if the object reference is to a container within a pod, this would take on a value like: "spec.containers{name}" (where "name" refers to the name of the container that triggered the event) or if no container name is specified "spec.containers[2]" (container with index 2 in this pod). This syntax is chosen only to have some well-defined way of referencing a part of an object. TODO: this design is not final and this field is subject to change in the future.
| `kind`
| `string`
| Kind of the referent.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
| Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
| `name`
| `string`
| Name of the referent.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
| Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
| `namespace`
| `string`
| Namespace of the referent.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/
| Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/
| `resourceVersion`
| `string`
| Specific resourceVersion to which this reference is made, if any.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency
| Specific resourceVersion to which this reference is made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency
| `uid`
| `string`
| UID of the referent.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids
| UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids
|===
=== .status
@@ -472,8 +451,7 @@ Required::
| `message`
| `string`
| message provides additional information about the current condition.
This is only to be consumed by humans.
| message provides additional information about the current condition. This is only to be consumed by humans.
| `reason`
| `string`

View File

@@ -11,8 +11,7 @@ toc::[]
Description::
+
--
ControlPlaneMachineSet ensures that a specified number of control plane machine replicas are running at any given time.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
ControlPlaneMachineSet ensures that a specified number of control plane machine replicas are running at any given time. Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -70,49 +69,30 @@ Required::
| `replicas`
| `integer`
| Replicas defines how many Control Plane Machines should be
created by this ControlPlaneMachineSet.
This field is immutable and cannot be changed after cluster
installation.
The ControlPlaneMachineSet only operates with 3 or 5 node control planes,
3 and 5 are the only valid values for this field.
| Replicas defines how many Control Plane Machines should be created by this ControlPlaneMachineSet. This field is immutable and cannot be changed after cluster installation. The ControlPlaneMachineSet only operates with 3 or 5 node control planes, 3 and 5 are the only valid values for this field.
| `selector`
| `object`
| Label selector for Machines. Existing Machines selected by this
selector will be the ones affected by this ControlPlaneMachineSet.
It must match the template's labels.
This field is considered immutable after creation of the resource.
| Label selector for Machines. Existing Machines selected by this selector will be the ones affected by this ControlPlaneMachineSet. It must match the template's labels. This field is considered immutable after creation of the resource.
| `state`
| `string`
| State defines whether the ControlPlaneMachineSet is Active or Inactive.
When Inactive, the ControlPlaneMachineSet will not take any action on the
state of the Machines within the cluster.
When Active, the ControlPlaneMachineSet will reconcile the Machines and
will update the Machines as necessary.
Once Active, a ControlPlaneMachineSet cannot be made Inactive. To prevent
further action please remove the ControlPlaneMachineSet.
| State defines whether the ControlPlaneMachineSet is Active or Inactive. When Inactive, the ControlPlaneMachineSet will not take any action on the state of the Machines within the cluster. When Active, the ControlPlaneMachineSet will reconcile the Machines and will update the Machines as necessary. Once Active, a ControlPlaneMachineSet cannot be made Inactive. To prevent further action please remove the ControlPlaneMachineSet.
| `strategy`
| `object`
| Strategy defines how the ControlPlaneMachineSet will update
Machines when it detects a change to the ProviderSpec.
| Strategy defines how the ControlPlaneMachineSet will update Machines when it detects a change to the ProviderSpec.
| `template`
| `object`
| Template describes the Control Plane Machines that will be created
by this ControlPlaneMachineSet.
| Template describes the Control Plane Machines that will be created by this ControlPlaneMachineSet.
|===
=== .spec.selector
Description::
+
--
Label selector for Machines. Existing Machines selected by this
selector will be the ones affected by this ControlPlaneMachineSet.
It must match the template's labels.
This field is considered immutable after creation of the resource.
Label selector for Machines. Existing Machines selected by this selector will be the ones affected by this ControlPlaneMachineSet. It must match the template's labels. This field is considered immutable after creation of the resource.
--
Type::
@@ -131,14 +111,11 @@ Type::
| `matchExpressions[]`
| `object`
| A label selector requirement is a selector that contains values, a key, and an operator that
relates the key and values.
| A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
| `matchLabels`
| `object (string)`
| matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
map is equivalent to an element of matchExpressions, whose key field is "key", the
operator is "In", and the values array contains only "value". The requirements are ANDed.
| matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
|===
=== .spec.selector.matchExpressions
@@ -158,8 +135,7 @@ Type::
Description::
+
--
A label selector requirement is a selector that contains values, a key, and an operator that
relates the key and values.
A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
--
Type::
@@ -181,23 +157,18 @@ Required::
| `operator`
| `string`
| operator represents a key's relationship to a set of values.
Valid operators are In, NotIn, Exists and DoesNotExist.
| operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
| `values`
| `array (string)`
| values is an array of string values. If the operator is In or NotIn,
the values array must be non-empty. If the operator is Exists or DoesNotExist,
the values array must be empty. This array is replaced during a strategic
merge patch.
| values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
|===
=== .spec.strategy
Description::
+
--
Strategy defines how the ControlPlaneMachineSet will update
Machines when it detects a change to the ProviderSpec.
Strategy defines how the ControlPlaneMachineSet will update Machines when it detects a change to the ProviderSpec.
--
Type::
@@ -212,18 +183,14 @@ Type::
| `type`
| `string`
| Type defines the type of update strategy that should be
used when updating Machines owned by the ControlPlaneMachineSet.
Valid values are "RollingUpdate" and "OnDelete".
The current default value is "RollingUpdate".
| Type defines the type of update strategy that should be used when updating Machines owned by the ControlPlaneMachineSet. Valid values are "RollingUpdate" and "OnDelete". The current default value is "RollingUpdate".
|===
=== .spec.template
Description::
+
--
Template describes the Control Plane Machines that will be created
by this ControlPlaneMachineSet.
Template describes the Control Plane Machines that will be created by this ControlPlaneMachineSet.
--
Type::
@@ -240,21 +207,18 @@ Required::
| `machineType`
| `string`
| MachineType determines the type of Machines that should be managed by the ControlPlaneMachineSet.
Currently, the only valid value is machines_v1beta1_machine_openshift_io.
| MachineType determines the type of Machines that should be managed by the ControlPlaneMachineSet. Currently, the only valid value is machines_v1beta1_machine_openshift_io.
| `machines_v1beta1_machine_openshift_io`
| `object`
| OpenShiftMachineV1Beta1Machine defines the template for creating Machines
from the v1beta1.machine.openshift.io API group.
| OpenShiftMachineV1Beta1Machine defines the template for creating Machines from the v1beta1.machine.openshift.io API group.
|===
=== .spec.template.machines_v1beta1_machine_openshift_io
Description::
+
--
OpenShiftMachineV1Beta1Machine defines the template for creating Machines
from the v1beta1.machine.openshift.io API group.
OpenShiftMachineV1Beta1Machine defines the template for creating Machines from the v1beta1.machine.openshift.io API group.
--
Type::
@@ -272,37 +236,22 @@ Required::
| `failureDomains`
| `object`
| FailureDomains is the list of failure domains (sometimes called
availability zones) in which the ControlPlaneMachineSet should balance
the Control Plane Machines.
This will be merged into the ProviderSpec given in the template.
This field is optional on platforms that do not require placement information.
| FailureDomains is the list of failure domains (sometimes called availability zones) in which the ControlPlaneMachineSet should balance the Control Plane Machines. This will be merged into the ProviderSpec given in the template. This field is optional on platforms that do not require placement information.
| `metadata`
| `object`
| ObjectMeta is the standard object metadata
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
Labels are required to match the ControlPlaneMachineSet selector.
| ObjectMeta is the standard object metadata More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata Labels are required to match the ControlPlaneMachineSet selector.
| `spec`
| `object`
| Spec contains the desired configuration of the Control Plane Machines.
The ProviderSpec within contains platform specific details
for creating the Control Plane Machines.
The ProviderSe should be complete apart from the platform specific
failure domain field. This will be overriden when the Machines
are created based on the FailureDomains field.
| Spec contains the desired configuration of the Control Plane Machines. The ProviderSpec within contains platform specific details for creating the Control Plane Machines. The ProviderSe should be complete apart from the platform specific failure domain field. This will be overriden when the Machines are created based on the FailureDomains field.
|===
=== .spec.template.machines_v1beta1_machine_openshift_io.failureDomains
Description::
+
--
FailureDomains is the list of failure domains (sometimes called
availability zones) in which the ControlPlaneMachineSet should balance
the Control Plane Machines.
This will be merged into the ProviderSpec given in the template.
This field is optional on platforms that do not require placement information.
FailureDomains is the list of failure domains (sometimes called availability zones) in which the ControlPlaneMachineSet should balance the Control Plane Machines. This will be merged into the ProviderSpec given in the template. This field is optional on platforms that do not require placement information.
--
Type::
@@ -359,8 +308,7 @@ Required::
| `platform`
| `string`
| Platform identifies the platform for which the FailureDomain represents.
Currently supported values are AWS, Azure, GCP, OpenStack, VSphere and Nutanix.
| Platform identifies the platform for which the FailureDomain represents. Currently supported values are AWS, Azure, GCP, OpenStack, VSphere and Nutanix.
| `vsphere`
| `array`
@@ -549,13 +497,11 @@ Required::
| `subnet`
| `string`
| subnet is the name of the network subnet in which the VM will be created.
When omitted, the subnet value from the machine providerSpec template will be used.
| subnet is the name of the network subnet in which the VM will be created. When omitted, the subnet value from the machine providerSpec template will be used.
| `zone`
| `string`
| Availability Zone for the virtual machine.
If nil, the virtual machine should be deployed to no zone.
| Availability Zone for the virtual machine. If nil, the virtual machine should be deployed to no zone.
|===
=== .spec.template.machines_v1beta1_machine_openshift_io.failureDomains.gcp
@@ -629,8 +575,7 @@ Required::
| `name`
| `string`
| name of the failure domain in which the nutanix machine provider will create the VM.
Failure domains are defined in a cluster's config.openshift.io/Infrastructure resource.
| name of the failure domain in which the nutanix machine provider will create the VM. Failure domains are defined in a cluster's config.openshift.io/Infrastructure resource.
|===
=== .spec.template.machines_v1beta1_machine_openshift_io.failureDomains.openstack
@@ -665,25 +610,18 @@ Type::
| `availabilityZone`
| `string`
| availabilityZone is the nova availability zone in which the OpenStack machine provider will create the VM.
If not specified, the VM will be created in the default availability zone specified in the nova configuration.
Availability zone names must NOT contain : since it is used by admin users to specify hosts where instances
are launched in server creation. Also, it must not contain spaces otherwise it will lead to node that belongs
to this availability zone register failure, see kubernetes/cloud-provider-openstack#1379 for further information.
The maximum length of availability zone name is 63 as per labels limits.
| availabilityZone is the nova availability zone in which the OpenStack machine provider will create the VM. If not specified, the VM will be created in the default availability zone specified in the nova configuration. Availability zone names must NOT contain : since it is used by admin users to specify hosts where instances are launched in server creation. Also, it must not contain spaces otherwise it will lead to node that belongs to this availability zone register failure, see kubernetes/cloud-provider-openstack#1379 for further information. The maximum length of availability zone name is 63 as per labels limits.
| `rootVolume`
| `object`
| rootVolume contains settings that will be used by the OpenStack machine provider to create the root volume attached to the VM.
If not specified, no root volume will be created.
| rootVolume contains settings that will be used by the OpenStack machine provider to create the root volume attached to the VM. If not specified, no root volume will be created.
|===
=== .spec.template.machines_v1beta1_machine_openshift_io.failureDomains.openstack[].rootVolume
Description::
+
--
rootVolume contains settings that will be used by the OpenStack machine provider to create the root volume attached to the VM.
If not specified, no root volume will be created.
rootVolume contains settings that will be used by the OpenStack machine provider to create the root volume attached to the VM. If not specified, no root volume will be created.
--
Type::
@@ -700,20 +638,11 @@ Required::
| `availabilityZone`
| `string`
| availabilityZone specifies the Cinder availability zone where the root volume will be created.
If not specifified, the root volume will be created in the availability zone specified by the volume type in the cinder configuration.
If the volume type (configured in the OpenStack cluster) does not specify an availability zone, the root volume will be created in the default availability
zone specified in the cinder configuration. See https://docs.openstack.org/cinder/latest/admin/availability-zone-type.html for more details.
If the OpenStack cluster is deployed with the cross_az_attach configuration option set to false, the root volume will have to be in the same
availability zone as the VM (defined by OpenStackFailureDomain.AvailabilityZone).
Availability zone names must NOT contain spaces otherwise it will lead to volume that belongs to this availability zone register failure,
see kubernetes/cloud-provider-openstack#1379 for further information.
The maximum length of availability zone name is 63 as per labels limits.
| availabilityZone specifies the Cinder availability zone where the root volume will be created. If not specifified, the root volume will be created in the availability zone specified by the volume type in the cinder configuration. If the volume type (configured in the OpenStack cluster) does not specify an availability zone, the root volume will be created in the default availability zone specified in the cinder configuration. See https://docs.openstack.org/cinder/latest/admin/availability-zone-type.html for more details. If the OpenStack cluster is deployed with the cross_az_attach configuration option set to false, the root volume will have to be in the same availability zone as the VM (defined by OpenStackFailureDomain.AvailabilityZone). Availability zone names must NOT contain spaces otherwise it will lead to volume that belongs to this availability zone register failure, see kubernetes/cloud-provider-openstack#1379 for further information. The maximum length of availability zone name is 63 as per labels limits.
| `volumeType`
| `string`
| volumeType specifies the type of the root volume that will be provisioned.
The maximum length of a volume type name is 255 characters, as per the OpenStack limit.
| volumeType specifies the type of the root volume that will be provisioned. The maximum length of a volume type name is 255 characters, as per the OpenStack limit.
|===
=== .spec.template.machines_v1beta1_machine_openshift_io.failureDomains.vsphere
@@ -750,19 +679,14 @@ Required::
| `name`
| `string`
| name of the failure domain in which the vSphere machine provider will create the VM.
Failure domains are defined in a cluster's config.openshift.io/Infrastructure resource.
When balancing machines across failure domains, the control plane machine set will inject configuration from the
Infrastructure resource into the machine providerSpec to allocate the machine to a failure domain.
| name of the failure domain in which the vSphere machine provider will create the VM. Failure domains are defined in a cluster's config.openshift.io/Infrastructure resource. When balancing machines across failure domains, the control plane machine set will inject configuration from the Infrastructure resource into the machine providerSpec to allocate the machine to a failure domain.
|===
=== .spec.template.machines_v1beta1_machine_openshift_io.metadata
Description::
+
--
ObjectMeta is the standard object metadata
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
Labels are required to match the ControlPlaneMachineSet selector.
ObjectMeta is the standard object metadata More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata Labels are required to match the ControlPlaneMachineSet selector.
--
Type::
@@ -779,31 +703,18 @@ Required::
| `annotations`
| `object (string)`
| Annotations is an unstructured key value map stored with a resource that may be
set by external tools to store and retrieve arbitrary metadata. They are not
queryable and should be preserved when modifying objects.
More info: http://kubernetes.io/docs/user-guide/annotations
| Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations
| `labels`
| `object (string)`
| Map of string keys and values that can be used to organize and categorize
(scope and select) objects. May match selectors of replication controllers
and services.
More info: http://kubernetes.io/docs/user-guide/labels.
This field must contain both the 'machine.openshift.io/cluster-api-machine-role' and 'machine.openshift.io/cluster-api-machine-type' labels, both with a value of 'master'.
It must also contain a label with the key 'machine.openshift.io/cluster-api-cluster'.
| Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and services. More info: http://kubernetes.io/docs/user-guide/labels. This field must contain both the 'machine.openshift.io/cluster-api-machine-role' and 'machine.openshift.io/cluster-api-machine-type' labels, both with a value of 'master'. It must also contain a label with the key 'machine.openshift.io/cluster-api-cluster'.
|===
=== .spec.template.machines_v1beta1_machine_openshift_io.spec
Description::
+
--
Spec contains the desired configuration of the Control Plane Machines.
The ProviderSpec within contains platform specific details
for creating the Control Plane Machines.
The ProviderSe should be complete apart from the platform specific
failure domain field. This will be overriden when the Machines
are created based on the FailureDomains field.
Spec contains the desired configuration of the Control Plane Machines. The ProviderSpec within contains platform specific details for creating the Control Plane Machines. The ProviderSe should be complete apart from the platform specific failure domain field. This will be overriden when the Machines are created based on the FailureDomains field.
--
Type::
@@ -818,27 +729,15 @@ Type::
| `lifecycleHooks`
| `object`
| LifecycleHooks allow users to pause operations on the machine at
certain predefined points within the machine lifecycle.
| LifecycleHooks allow users to pause operations on the machine at certain predefined points within the machine lifecycle.
| `metadata`
| `object`
| ObjectMeta will autopopulate the Node created. Use this to
indicate what labels, annotations, name prefix, etc., should be used
when creating the Node.
| ObjectMeta will autopopulate the Node created. Use this to indicate what labels, annotations, name prefix, etc., should be used when creating the Node.
| `providerID`
| `string`
| ProviderID is the identification ID of the machine provided by the provider.
This field must match the provider ID as seen on the node object corresponding to this machine.
This field is required by higher level consumers of cluster-api. Example use case is cluster autoscaler
with cluster-api as provider. Clean-up logic in the autoscaler compares machines to nodes to find out
machines at provider which could not get registered as Kubernetes nodes. With cluster-api as a
generic out-of-tree provider for autoscaler, this field is required by autoscaler to be
able to have a provider view of the list of machines. Another list of nodes is queried from the k8s apiserver
and then a comparison is done to find out unregistered machines and are marked for delete.
This field will be set by the actuators and consumed by higher level entities like autoscaler that will
be interfacing with cluster-api as generic provider.
| ProviderID is the identification ID of the machine provided by the provider. This field must match the provider ID as seen on the node object corresponding to this machine. This field is required by higher level consumers of cluster-api. Example use case is cluster autoscaler with cluster-api as provider. Clean-up logic in the autoscaler compares machines to nodes to find out machines at provider which could not get registered as Kubernetes nodes. With cluster-api as a generic out-of-tree provider for autoscaler, this field is required by autoscaler to be able to have a provider view of the list of machines. Another list of nodes is queried from the k8s apiserver and then a comparison is done to find out unregistered machines and are marked for delete. This field will be set by the actuators and consumed by higher level entities like autoscaler that will be interfacing with cluster-api as generic provider.
| `providerSpec`
| `object`
@@ -846,25 +745,18 @@ be interfacing with cluster-api as generic provider.
| `taints`
| `array`
| The list of the taints to be applied to the corresponding Node in additive
manner. This list will not overwrite any other taints added to the Node on
an ongoing basis by other entities. These taints should be actively reconciled
e.g. if you ask the machine controller to apply a taint and then manually remove
the taint the machine controller will put it back) but not have the machine controller
remove any taints
| The list of the taints to be applied to the corresponding Node in additive manner. This list will not overwrite any other taints added to the Node on an ongoing basis by other entities. These taints should be actively reconciled e.g. if you ask the machine controller to apply a taint and then manually remove the taint the machine controller will put it back) but not have the machine controller remove any taints
| `taints[]`
| `object`
| The node this Taint is attached to has the "effect" on
any pod that does not tolerate the Taint.
| The node this Taint is attached to has the "effect" on any pod that does not tolerate the Taint.
|===
=== .spec.template.machines_v1beta1_machine_openshift_io.spec.lifecycleHooks
Description::
+
--
LifecycleHooks allow users to pause operations on the machine at
certain predefined points within the machine lifecycle.
LifecycleHooks allow users to pause operations on the machine at certain predefined points within the machine lifecycle.
--
Type::
@@ -879,8 +771,7 @@ Type::
| `preDrain`
| `array`
| PreDrain hooks prevent the machine from being drained.
This also blocks further lifecycle events, such as termination.
| PreDrain hooks prevent the machine from being drained. This also blocks further lifecycle events, such as termination.
| `preDrain[]`
| `object`
@@ -888,8 +779,7 @@ This also blocks further lifecycle events, such as termination.
| `preTerminate`
| `array`
| PreTerminate hooks prevent the machine from being terminated.
PreTerminate hooks be actioned after the Machine has been drained.
| PreTerminate hooks prevent the machine from being terminated. PreTerminate hooks be actioned after the Machine has been drained.
| `preTerminate[]`
| `object`
@@ -900,8 +790,7 @@ PreTerminate hooks be actioned after the Machine has been drained.
Description::
+
--
PreDrain hooks prevent the machine from being drained.
This also blocks further lifecycle events, such as termination.
PreDrain hooks prevent the machine from being drained. This also blocks further lifecycle events, such as termination.
--
Type::
@@ -932,26 +821,18 @@ Required::
| `name`
| `string`
| Name defines a unique name for the lifcycle hook.
The name should be unique and descriptive, ideally 1-3 words, in CamelCase or
it may be namespaced, eg. foo.example.com/CamelCase.
Names must be unique and should only be managed by a single entity.
| Name defines a unique name for the lifcycle hook. The name should be unique and descriptive, ideally 1-3 words, in CamelCase or it may be namespaced, eg. foo.example.com/CamelCase. Names must be unique and should only be managed by a single entity.
| `owner`
| `string`
| Owner defines the owner of the lifecycle hook.
This should be descriptive enough so that users can identify
who/what is responsible for blocking the lifecycle.
This could be the name of a controller (e.g. clusteroperator/etcd)
or an administrator managing the hook.
| Owner defines the owner of the lifecycle hook. This should be descriptive enough so that users can identify who/what is responsible for blocking the lifecycle. This could be the name of a controller (e.g. clusteroperator/etcd) or an administrator managing the hook.
|===
=== .spec.template.machines_v1beta1_machine_openshift_io.spec.lifecycleHooks.preTerminate
Description::
+
--
PreTerminate hooks prevent the machine from being terminated.
PreTerminate hooks be actioned after the Machine has been drained.
PreTerminate hooks prevent the machine from being terminated. PreTerminate hooks be actioned after the Machine has been drained.
--
Type::
@@ -982,27 +863,18 @@ Required::
| `name`
| `string`
| Name defines a unique name for the lifcycle hook.
The name should be unique and descriptive, ideally 1-3 words, in CamelCase or
it may be namespaced, eg. foo.example.com/CamelCase.
Names must be unique and should only be managed by a single entity.
| Name defines a unique name for the lifcycle hook. The name should be unique and descriptive, ideally 1-3 words, in CamelCase or it may be namespaced, eg. foo.example.com/CamelCase. Names must be unique and should only be managed by a single entity.
| `owner`
| `string`
| Owner defines the owner of the lifecycle hook.
This should be descriptive enough so that users can identify
who/what is responsible for blocking the lifecycle.
This could be the name of a controller (e.g. clusteroperator/etcd)
or an administrator managing the hook.
| Owner defines the owner of the lifecycle hook. This should be descriptive enough so that users can identify who/what is responsible for blocking the lifecycle. This could be the name of a controller (e.g. clusteroperator/etcd) or an administrator managing the hook.
|===
=== .spec.template.machines_v1beta1_machine_openshift_io.spec.metadata
Description::
+
--
ObjectMeta will autopopulate the Node created. Use this to
indicate what labels, annotations, name prefix, etc., should be used
when creating the Node.
ObjectMeta will autopopulate the Node created. Use this to indicate what labels, annotations, name prefix, etc., should be used when creating the Node.
--
Type::
@@ -1017,78 +889,41 @@ Type::
| `annotations`
| `object (string)`
| Annotations is an unstructured key value map stored with a resource that may be
set by external tools to store and retrieve arbitrary metadata. They are not
queryable and should be preserved when modifying objects.
More info: http://kubernetes.io/docs/user-guide/annotations
| Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations
| `generateName`
| `string`
| GenerateName is an optional prefix, used by the server, to generate a unique
name ONLY IF the Name field has not been provided.
If this field is used, the name returned to the client will be different
than the name passed. This value will also be combined with a unique suffix.
The provided value has the same validation rules as the Name field,
and may be truncated by the length of the suffix required to make the value
unique on the server.
If this field is specified and the generated name exists, the server will
NOT return a 409 - instead, it will either return 201 Created or 500 with Reason
ServerTimeout indicating a unique name could not be found in the time allotted, and the client
should retry (optionally after the time indicated in the Retry-After header).
Applied only if Name is not specified.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#idempotency
| GenerateName is an optional prefix, used by the server, to generate a unique name ONLY IF the Name field has not been provided. If this field is used, the name returned to the client will be different than the name passed. This value will also be combined with a unique suffix. The provided value has the same validation rules as the Name field, and may be truncated by the length of the suffix required to make the value unique on the server.
If this field is specified and the generated name exists, the server will NOT return a 409 - instead, it will either return 201 Created or 500 with Reason ServerTimeout indicating a unique name could not be found in the time allotted, and the client should retry (optionally after the time indicated in the Retry-After header).
Applied only if Name is not specified. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#idempotency
| `labels`
| `object (string)`
| Map of string keys and values that can be used to organize and categorize
(scope and select) objects. May match selectors of replication controllers
and services.
More info: http://kubernetes.io/docs/user-guide/labels
| Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and services. More info: http://kubernetes.io/docs/user-guide/labels
| `name`
| `string`
| Name must be unique within a namespace. Is required when creating resources, although
some resources may allow a client to request the generation of an appropriate name
automatically. Name is primarily intended for creation idempotence and configuration
definition.
Cannot be updated.
More info: http://kubernetes.io/docs/user-guide/identifiers#names
| Name must be unique within a namespace. Is required when creating resources, although some resources may allow a client to request the generation of an appropriate name automatically. Name is primarily intended for creation idempotence and configuration definition. Cannot be updated. More info: http://kubernetes.io/docs/user-guide/identifiers#names
| `namespace`
| `string`
| Namespace defines the space within each name must be unique. An empty namespace is
equivalent to the "default" namespace, but "default" is the canonical representation.
Not all objects are required to be scoped to a namespace - the value of this field for
those objects will be empty.
Must be a DNS_LABEL.
Cannot be updated.
More info: http://kubernetes.io/docs/user-guide/namespaces
| Namespace defines the space within each name must be unique. An empty namespace is equivalent to the "default" namespace, but "default" is the canonical representation. Not all objects are required to be scoped to a namespace - the value of this field for those objects will be empty.
Must be a DNS_LABEL. Cannot be updated. More info: http://kubernetes.io/docs/user-guide/namespaces
| `ownerReferences`
| `array`
| List of objects depended by this object. If ALL objects in the list have
been deleted, this object will be garbage collected. If this object is managed by a controller,
then an entry in this list will point to this controller, with the controller field set to true.
There cannot be more than one managing controller.
| List of objects depended by this object. If ALL objects in the list have been deleted, this object will be garbage collected. If this object is managed by a controller, then an entry in this list will point to this controller, with the controller field set to true. There cannot be more than one managing controller.
| `ownerReferences[]`
| `object`
| OwnerReference contains enough information to let you identify an owning
object. An owning object must be in the same namespace as the dependent, or
be cluster-scoped, so there is no namespace field.
| OwnerReference contains enough information to let you identify an owning object. An owning object must be in the same namespace as the dependent, or be cluster-scoped, so there is no namespace field.
|===
=== .spec.template.machines_v1beta1_machine_openshift_io.spec.metadata.ownerReferences
Description::
+
--
List of objects depended by this object. If ALL objects in the list have
been deleted, this object will be garbage collected. If this object is managed by a controller,
then an entry in this list will point to this controller, with the controller field set to true.
There cannot be more than one managing controller.
List of objects depended by this object. If ALL objects in the list have been deleted, this object will be garbage collected. If this object is managed by a controller, then an entry in this list will point to this controller, with the controller field set to true. There cannot be more than one managing controller.
--
Type::
@@ -1101,9 +936,7 @@ Type::
Description::
+
--
OwnerReference contains enough information to let you identify an owning
object. An owning object must be in the same namespace as the dependent, or
be cluster-scoped, so there is no namespace field.
OwnerReference contains enough information to let you identify an owning object. An owning object must be in the same namespace as the dependent, or be cluster-scoped, so there is no namespace field.
--
Type::
@@ -1127,14 +960,7 @@ Required::
| `blockOwnerDeletion`
| `boolean`
| If true, AND if the owner has the "foregroundDeletion" finalizer, then
the owner cannot be deleted from the key-value store until this
reference is removed.
See https://kubernetes.io/docs/concepts/architecture/garbage-collection/#foreground-deletion
for how the garbage collector interacts with this field and enforces the foreground deletion.
Defaults to false.
To set this field, a user needs "delete" permission of the owner,
otherwise 422 (Unprocessable Entity) will be returned.
| If true, AND if the owner has the "foregroundDeletion" finalizer, then the owner cannot be deleted from the key-value store until this reference is removed. See https://kubernetes.io/docs/concepts/architecture/garbage-collection/#foreground-deletion for how the garbage collector interacts with this field and enforces the foreground deletion. Defaults to false. To set this field, a user needs "delete" permission of the owner, otherwise 422 (Unprocessable Entity) will be returned.
| `controller`
| `boolean`
@@ -1142,18 +968,15 @@ otherwise 422 (Unprocessable Entity) will be returned.
| `kind`
| `string`
| Kind of the referent.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
| Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
| `name`
| `string`
| Name of the referent.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names#names
| Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names#names
| `uid`
| `string`
| UID of the referent.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names#uids
| UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names#uids
|===
=== .spec.template.machines_v1beta1_machine_openshift_io.spec.providerSpec
@@ -1175,22 +998,14 @@ Type::
| `value`
| ``
| Value is an inlined, serialized representation of the resource
configuration. It is recommended that providers maintain their own
versioned API types that should be serialized/deserialized from this
field, akin to component config.
| Value is an inlined, serialized representation of the resource configuration. It is recommended that providers maintain their own versioned API types that should be serialized/deserialized from this field, akin to component config.
|===
=== .spec.template.machines_v1beta1_machine_openshift_io.spec.taints
Description::
+
--
The list of the taints to be applied to the corresponding Node in additive
manner. This list will not overwrite any other taints added to the Node on
an ongoing basis by other entities. These taints should be actively reconciled
e.g. if you ask the machine controller to apply a taint and then manually remove
the taint the machine controller will put it back) but not have the machine controller
remove any taints
The list of the taints to be applied to the corresponding Node in additive manner. This list will not overwrite any other taints added to the Node on an ongoing basis by other entities. These taints should be actively reconciled e.g. if you ask the machine controller to apply a taint and then manually remove the taint the machine controller will put it back) but not have the machine controller remove any taints
--
Type::
@@ -1203,8 +1018,7 @@ Type::
Description::
+
--
The node this Taint is attached to has the "effect" on
any pod that does not tolerate the Taint.
The node this Taint is attached to has the "effect" on any pod that does not tolerate the Taint.
--
Type::
@@ -1222,9 +1036,7 @@ Required::
| `effect`
| `string`
| Required. The effect of the taint on pods
that do not tolerate the taint.
Valid effects are NoSchedule, PreferNoSchedule and NoExecute.
| Required. The effect of the taint on pods that do not tolerate the taint. Valid effects are NoSchedule, PreferNoSchedule and NoExecute.
| `key`
| `string`
@@ -1232,8 +1044,7 @@ Valid effects are NoSchedule, PreferNoSchedule and NoExecute.
| `timeAdded`
| `string`
| TimeAdded represents the time at which the taint was added.
It is only written for NoExecute taints.
| TimeAdded represents the time at which the taint was added. It is only written for NoExecute taints.
| `value`
| `string`
@@ -1259,58 +1070,40 @@ Type::
| `conditions`
| `array`
| Conditions represents the observations of the ControlPlaneMachineSet's current state.
Known .status.conditions.type are: Available, Degraded and Progressing.
| Conditions represents the observations of the ControlPlaneMachineSet's current state. Known .status.conditions.type are: Available, Degraded and Progressing.
| `conditions[]`
| `object`
| Condition contains details for one aspect of the current state of this API Resource.
| Condition contains details for one aspect of the current state of this API Resource. --- This struct is intended for direct use as an array at the field path .status.conditions. For example,
type FooStatus struct{ // Represents the observations of a foo's current state. // Known .status.conditions.type are: "Available", "Progressing", and "Degraded" // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"`
// other fields }
| `observedGeneration`
| `integer`
| ObservedGeneration is the most recent generation observed for this
ControlPlaneMachineSet. It corresponds to the ControlPlaneMachineSets's generation,
which is updated on mutation by the API Server.
| ObservedGeneration is the most recent generation observed for this ControlPlaneMachineSet. It corresponds to the ControlPlaneMachineSets's generation, which is updated on mutation by the API Server.
| `readyReplicas`
| `integer`
| ReadyReplicas is the number of Control Plane Machines created by the
ControlPlaneMachineSet controller which are ready.
Note that this value may be higher than the desired number of replicas
while rolling updates are in-progress.
| ReadyReplicas is the number of Control Plane Machines created by the ControlPlaneMachineSet controller which are ready. Note that this value may be higher than the desired number of replicas while rolling updates are in-progress.
| `replicas`
| `integer`
| Replicas is the number of Control Plane Machines created by the
ControlPlaneMachineSet controller.
Note that during update operations this value may differ from the
desired replica count.
| Replicas is the number of Control Plane Machines created by the ControlPlaneMachineSet controller. Note that during update operations this value may differ from the desired replica count.
| `unavailableReplicas`
| `integer`
| UnavailableReplicas is the number of Control Plane Machines that are
still required before the ControlPlaneMachineSet reaches the desired
available capacity. When this value is non-zero, the number of
ReadyReplicas is less than the desired Replicas.
| UnavailableReplicas is the number of Control Plane Machines that are still required before the ControlPlaneMachineSet reaches the desired available capacity. When this value is non-zero, the number of ReadyReplicas is less than the desired Replicas.
| `updatedReplicas`
| `integer`
| UpdatedReplicas is the number of non-terminated Control Plane Machines
created by the ControlPlaneMachineSet controller that have the desired
provider spec and are ready.
This value is set to 0 when a change is detected to the desired spec.
When the update strategy is RollingUpdate, this will also coincide
with starting the process of updating the Machines.
When the update strategy is OnDelete, this value will remain at 0 until
a user deletes an existing replica and its replacement has become ready.
| UpdatedReplicas is the number of non-terminated Control Plane Machines created by the ControlPlaneMachineSet controller that have the desired provider spec and are ready. This value is set to 0 when a change is detected to the desired spec. When the update strategy is RollingUpdate, this will also coincide with starting the process of updating the Machines. When the update strategy is OnDelete, this value will remain at 0 until a user deletes an existing replica and its replacement has become ready.
|===
=== .status.conditions
Description::
+
--
Conditions represents the observations of the ControlPlaneMachineSet's current state.
Known .status.conditions.type are: Available, Degraded and Progressing.
Conditions represents the observations of the ControlPlaneMachineSet's current state. Known .status.conditions.type are: Available, Degraded and Progressing.
--
Type::
@@ -1323,7 +1116,9 @@ Type::
Description::
+
--
Condition contains details for one aspect of the current state of this API Resource.
Condition contains details for one aspect of the current state of this API Resource. --- This struct is intended for direct use as an array at the field path .status.conditions. For example,
type FooStatus struct{ // Represents the observations of a foo's current state. // Known .status.conditions.type are: "Available", "Progressing", and "Degraded" // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"`
// other fields }
--
Type::
@@ -1344,27 +1139,19 @@ Required::
| `lastTransitionTime`
| `string`
| lastTransitionTime is the last time the condition transitioned from one status to another.
This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
| lastTransitionTime is the last time the condition transitioned from one status to another. This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
| `message`
| `string`
| message is a human readable message indicating details about the transition.
This may be an empty string.
| message is a human readable message indicating details about the transition. This may be an empty string.
| `observedGeneration`
| `integer`
| observedGeneration represents the .metadata.generation that the condition was set based upon.
For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date
with respect to the current state of the instance.
| observedGeneration represents the .metadata.generation that the condition was set based upon. For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date with respect to the current state of the instance.
| `reason`
| `string`
| reason contains a programmatic identifier indicating the reason for the condition's last transition.
Producers of specific condition types may define expected values and meanings for this field,
and whether the values are considered a guaranteed API.
The value should be a CamelCase string.
This field may not be empty.
| reason contains a programmatic identifier indicating the reason for the condition's last transition. Producers of specific condition types may define expected values and meanings for this field, and whether the values are considered a guaranteed API. The value should be a CamelCase string. This field may not be empty.
| `status`
| `string`
@@ -1372,7 +1159,7 @@ This field may not be empty.
| `type`
| `string`
| type of condition in CamelCase or in foo.example.com/CamelCase.
| type of condition in CamelCase or in foo.example.com/CamelCase. --- Many .condition.type values are consistent across resources like Available, but because arbitrary conditions can be useful (see .node.status.conditions), the ability to deconflict is important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
|===

View File

@@ -11,9 +11,8 @@ toc::[]
Description::
+
--
KubeletConfig describes a customized Kubelet configuration.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
KubeletConfig describes a customized Kubelet configuration.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -73,10 +72,7 @@ Type::
| `kubeletConfig`
| ``
| kubeletConfig fields are defined in kubernetes upstream. Please refer to the types defined in the version/commit used by
OpenShift of the upstream kubernetes. It's important to note that, since the fields of the kubelet configuration are directly fetched from
upstream the validation of those values is handled directly by the kubelet. Please refer to the upstream version of the relevant kubernetes
for the valid values of these fields. Invalid values of the kubelet configuration fields may render cluster nodes unusable.
| kubeletConfig fields are defined in kubernetes upstream. Please refer to the types defined in the version/commit used by OpenShift of the upstream kubernetes. It's important to note that, since the fields of the kubelet configuration are directly fetched from upstream the validation of those values is handled directly by the kubelet. Please refer to the upstream version of the relevant kubernetes for the valid values of these fields. Invalid values of the kubelet configuration fields may render cluster nodes unusable.
| `logLevel`
| `integer`
@@ -84,22 +80,18 @@ for the valid values of these fields. Invalid values of the kubelet configuratio
| `machineConfigPoolSelector`
| `object`
| MachineConfigPoolSelector selects which pools the KubeletConfig shoud apply to.
A nil selector will result in no pools being selected.
| MachineConfigPoolSelector selects which pools the KubeletConfig shoud apply to. A nil selector will result in no pools being selected.
| `tlsSecurityProfile`
| `object`
| If unset, the default is based on the apiservers.config.openshift.io/cluster resource.
Note that only Old and Intermediate profiles are currently supported, and
the maximum available minTLSVersion is VersionTLS12.
| If unset, the default is based on the apiservers.config.openshift.io/cluster resource. Note that only Old and Intermediate profiles are currently supported, and the maximum available minTLSVersion is VersionTLS12.
|===
=== .spec.machineConfigPoolSelector
Description::
+
--
MachineConfigPoolSelector selects which pools the KubeletConfig shoud apply to.
A nil selector will result in no pools being selected.
MachineConfigPoolSelector selects which pools the KubeletConfig shoud apply to. A nil selector will result in no pools being selected.
--
Type::
@@ -118,14 +110,11 @@ Type::
| `matchExpressions[]`
| `object`
| A label selector requirement is a selector that contains values, a key, and an operator that
relates the key and values.
| A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
| `matchLabels`
| `object (string)`
| matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
map is equivalent to an element of matchExpressions, whose key field is "key", the
operator is "In", and the values array contains only "value". The requirements are ANDed.
| matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
|===
=== .spec.machineConfigPoolSelector.matchExpressions
@@ -145,8 +134,7 @@ Type::
Description::
+
--
A label selector requirement is a selector that contains values, a key, and an operator that
relates the key and values.
A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
--
Type::
@@ -168,24 +156,18 @@ Required::
| `operator`
| `string`
| operator represents a key's relationship to a set of values.
Valid operators are In, NotIn, Exists and DoesNotExist.
| operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
| `values`
| `array (string)`
| values is an array of string values. If the operator is In or NotIn,
the values array must be non-empty. If the operator is Exists or DoesNotExist,
the values array must be empty. This array is replaced during a strategic
merge patch.
| values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
|===
=== .spec.tlsSecurityProfile
Description::
+
--
If unset, the default is based on the apiservers.config.openshift.io/cluster resource.
Note that only Old and Intermediate profiles are currently supported, and
the maximum available minTLSVersion is VersionTLS12.
If unset, the default is based on the apiservers.config.openshift.io/cluster resource. Note that only Old and Intermediate profiles are currently supported, and the maximum available minTLSVersion is VersionTLS12.
--
Type::
@@ -200,158 +182,87 @@ Type::
| `custom`
| ``
| custom is a user-defined TLS security profile. Be extremely careful using a custom
profile as invalid configurations can be catastrophic. An example custom profile
looks like this:
ciphers:
- ECDHE-ECDSA-CHACHA20-POLY1305
- ECDHE-RSA-CHACHA20-POLY1305
- ECDHE-RSA-AES128-GCM-SHA256
- ECDHE-ECDSA-AES128-GCM-SHA256
minTLSVersion: VersionTLS11
| custom is a user-defined TLS security profile. Be extremely careful using a custom profile as invalid configurations can be catastrophic. An example custom profile looks like this:
ciphers:
- ECDHE-ECDSA-CHACHA20-POLY1305
- ECDHE-RSA-CHACHA20-POLY1305
- ECDHE-RSA-AES128-GCM-SHA256
- ECDHE-ECDSA-AES128-GCM-SHA256
minTLSVersion: VersionTLS11
| `intermediate`
| ``
| intermediate is a TLS security profile based on:
https://wiki.mozilla.org/Security/Server_Side_TLS#Intermediate_compatibility_.28recommended.29
and looks like this (yaml):
ciphers:
- TLS_AES_128_GCM_SHA256
- TLS_AES_256_GCM_SHA384
- TLS_CHACHA20_POLY1305_SHA256
- ECDHE-ECDSA-AES128-GCM-SHA256
- ECDHE-RSA-AES128-GCM-SHA256
- ECDHE-ECDSA-AES256-GCM-SHA384
- ECDHE-RSA-AES256-GCM-SHA384
- ECDHE-ECDSA-CHACHA20-POLY1305
- ECDHE-RSA-CHACHA20-POLY1305
- DHE-RSA-AES128-GCM-SHA256
- DHE-RSA-AES256-GCM-SHA384
minTLSVersion: VersionTLS12
| intermediate is a TLS security profile based on:
https://wiki.mozilla.org/Security/Server_Side_TLS#Intermediate_compatibility_.28recommended.29
and looks like this (yaml):
ciphers:
- TLS_AES_128_GCM_SHA256
- TLS_AES_256_GCM_SHA384
- TLS_CHACHA20_POLY1305_SHA256
- ECDHE-ECDSA-AES128-GCM-SHA256
- ECDHE-RSA-AES128-GCM-SHA256
- ECDHE-ECDSA-AES256-GCM-SHA384
- ECDHE-RSA-AES256-GCM-SHA384
- ECDHE-ECDSA-CHACHA20-POLY1305
- ECDHE-RSA-CHACHA20-POLY1305
- DHE-RSA-AES128-GCM-SHA256
- DHE-RSA-AES256-GCM-SHA384
minTLSVersion: VersionTLS12
| `modern`
| ``
| modern is a TLS security profile based on:
https://wiki.mozilla.org/Security/Server_Side_TLS#Modern_compatibility
and looks like this (yaml):
ciphers:
- TLS_AES_128_GCM_SHA256
- TLS_AES_256_GCM_SHA384
- TLS_CHACHA20_POLY1305_SHA256
minTLSVersion: VersionTLS13
| modern is a TLS security profile based on:
https://wiki.mozilla.org/Security/Server_Side_TLS#Modern_compatibility
and looks like this (yaml):
ciphers:
- TLS_AES_128_GCM_SHA256
- TLS_AES_256_GCM_SHA384
- TLS_CHACHA20_POLY1305_SHA256
minTLSVersion: VersionTLS13
| `old`
| ``
| old is a TLS security profile based on:
https://wiki.mozilla.org/Security/Server_Side_TLS#Old_backward_compatibility
and looks like this (yaml):
ciphers:
- TLS_AES_128_GCM_SHA256
- TLS_AES_256_GCM_SHA384
- TLS_CHACHA20_POLY1305_SHA256
- ECDHE-ECDSA-AES128-GCM-SHA256
- ECDHE-RSA-AES128-GCM-SHA256
- ECDHE-ECDSA-AES256-GCM-SHA384
- ECDHE-RSA-AES256-GCM-SHA384
- ECDHE-ECDSA-CHACHA20-POLY1305
- ECDHE-RSA-CHACHA20-POLY1305
- DHE-RSA-AES128-GCM-SHA256
- DHE-RSA-AES256-GCM-SHA384
- DHE-RSA-CHACHA20-POLY1305
- ECDHE-ECDSA-AES128-SHA256
- ECDHE-RSA-AES128-SHA256
- ECDHE-ECDSA-AES128-SHA
- ECDHE-RSA-AES128-SHA
- ECDHE-ECDSA-AES256-SHA384
- ECDHE-RSA-AES256-SHA384
- ECDHE-ECDSA-AES256-SHA
- ECDHE-RSA-AES256-SHA
- DHE-RSA-AES128-SHA256
- DHE-RSA-AES256-SHA256
- AES128-GCM-SHA256
- AES256-GCM-SHA384
- AES128-SHA256
- AES256-SHA256
- AES128-SHA
- AES256-SHA
- DES-CBC3-SHA
minTLSVersion: VersionTLS10
| old is a TLS security profile based on:
https://wiki.mozilla.org/Security/Server_Side_TLS#Old_backward_compatibility
and looks like this (yaml):
ciphers:
- TLS_AES_128_GCM_SHA256
- TLS_AES_256_GCM_SHA384
- TLS_CHACHA20_POLY1305_SHA256
- ECDHE-ECDSA-AES128-GCM-SHA256
- ECDHE-RSA-AES128-GCM-SHA256
- ECDHE-ECDSA-AES256-GCM-SHA384
- ECDHE-RSA-AES256-GCM-SHA384
- ECDHE-ECDSA-CHACHA20-POLY1305
- ECDHE-RSA-CHACHA20-POLY1305
- DHE-RSA-AES128-GCM-SHA256
- DHE-RSA-AES256-GCM-SHA384
- DHE-RSA-CHACHA20-POLY1305
- ECDHE-ECDSA-AES128-SHA256
- ECDHE-RSA-AES128-SHA256
- ECDHE-ECDSA-AES128-SHA
- ECDHE-RSA-AES128-SHA
- ECDHE-ECDSA-AES256-SHA384
- ECDHE-RSA-AES256-SHA384
- ECDHE-ECDSA-AES256-SHA
- ECDHE-RSA-AES256-SHA
- DHE-RSA-AES128-SHA256
- DHE-RSA-AES256-SHA256
- AES128-GCM-SHA256
- AES256-GCM-SHA384
- AES128-SHA256
- AES256-SHA256
- AES128-SHA
- AES256-SHA
- DES-CBC3-SHA
minTLSVersion: VersionTLS10
| `type`
| `string`
| type is one of Old, Intermediate, Modern or Custom. Custom provides
the ability to specify individual TLS security profile parameters.
Old, Intermediate and Modern are TLS security profiles based on:
https://wiki.mozilla.org/Security/Server_Side_TLS#Recommended_configurations
The profiles are intent based, so they may change over time as new ciphers are developed and existing ciphers
are found to be insecure. Depending on precisely which ciphers are available to a process, the list may be
reduced.
Note that the Modern profile is currently not supported because it is not
yet well adopted by common software libraries.
| type is one of Old, Intermediate, Modern or Custom. Custom provides the ability to specify individual TLS security profile parameters. Old, Intermediate and Modern are TLS security profiles based on:
https://wiki.mozilla.org/Security/Server_Side_TLS#Recommended_configurations
The profiles are intent based, so they may change over time as new ciphers are developed and existing ciphers are found to be insecure. Depending on precisely which ciphers are available to a process, the list may be reduced.
Note that the Modern profile is currently not supported because it is not yet well adopted by common software libraries.
|===
=== .status
@@ -420,8 +331,7 @@ Type::
| `message`
| `string`
| message provides additional information about the current condition.
This is only to be consumed by humans.
| message provides additional information about the current condition. This is only to be consumed by humans.
| `reason`
| `string`

View File

@@ -12,9 +12,8 @@ toc::[]
Description::
+
--
ContainerRuntimeConfig describes a customized Container Runtime configuration.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
ContainerRuntimeConfig describes a customized Container Runtime configuration.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -25,10 +24,8 @@ Type::
Description::
+
--
ControllerConfig describes configuration for MachineConfigController.
This is currently only used to drive the MachineConfig objects generated by the TemplateController.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
ControllerConfig describes configuration for MachineConfigController. This is currently only used to drive the MachineConfig objects generated by the TemplateController.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -39,8 +36,7 @@ Type::
Description::
+
--
ControlPlaneMachineSet ensures that a specified number of control plane machine replicas are running at any given time.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
ControlPlaneMachineSet ensures that a specified number of control plane machine replicas are running at any given time. Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -51,9 +47,8 @@ Type::
Description::
+
--
KubeletConfig describes a customized Kubelet configuration.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
KubeletConfig describes a customized Kubelet configuration.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -64,9 +59,8 @@ Type::
Description::
+
--
MachineConfig defines the configuration for a machine
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
MachineConfig defines the configuration for a machine
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -77,9 +71,8 @@ Type::
Description::
+
--
MachineConfigPool describes a pool of MachineConfigs.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
MachineConfigPool describes a pool of MachineConfigs.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -90,8 +83,7 @@ Type::
Description::
+
--
MachineHealthCheck is the Schema for the machinehealthchecks API
Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
MachineHealthCheck is the Schema for the machinehealthchecks API Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
--
Type::
@@ -102,8 +94,7 @@ Type::
Description::
+
--
Machine is the Schema for the machines API
Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
Machine is the Schema for the machines API Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
--
Type::
@@ -114,8 +105,7 @@ Type::
Description::
+
--
MachineSet ensures that a specified number of machines replicas are running at any given time.
Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
MachineSet ensures that a specified number of machines replicas are running at any given time. Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
--
Type::

View File

@@ -11,8 +11,7 @@ toc::[]
Description::
+
--
Machine is the Schema for the machines API
Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
Machine is the Schema for the machines API Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
--
Type::
@@ -66,27 +65,15 @@ Type::
| `lifecycleHooks`
| `object`
| LifecycleHooks allow users to pause operations on the machine at
certain predefined points within the machine lifecycle.
| LifecycleHooks allow users to pause operations on the machine at certain predefined points within the machine lifecycle.
| `metadata`
| `object`
| ObjectMeta will autopopulate the Node created. Use this to
indicate what labels, annotations, name prefix, etc., should be used
when creating the Node.
| ObjectMeta will autopopulate the Node created. Use this to indicate what labels, annotations, name prefix, etc., should be used when creating the Node.
| `providerID`
| `string`
| ProviderID is the identification ID of the machine provided by the provider.
This field must match the provider ID as seen on the node object corresponding to this machine.
This field is required by higher level consumers of cluster-api. Example use case is cluster autoscaler
with cluster-api as provider. Clean-up logic in the autoscaler compares machines to nodes to find out
machines at provider which could not get registered as Kubernetes nodes. With cluster-api as a
generic out-of-tree provider for autoscaler, this field is required by autoscaler to be
able to have a provider view of the list of machines. Another list of nodes is queried from the k8s apiserver
and then a comparison is done to find out unregistered machines and are marked for delete.
This field will be set by the actuators and consumed by higher level entities like autoscaler that will
be interfacing with cluster-api as generic provider.
| ProviderID is the identification ID of the machine provided by the provider. This field must match the provider ID as seen on the node object corresponding to this machine. This field is required by higher level consumers of cluster-api. Example use case is cluster autoscaler with cluster-api as provider. Clean-up logic in the autoscaler compares machines to nodes to find out machines at provider which could not get registered as Kubernetes nodes. With cluster-api as a generic out-of-tree provider for autoscaler, this field is required by autoscaler to be able to have a provider view of the list of machines. Another list of nodes is queried from the k8s apiserver and then a comparison is done to find out unregistered machines and are marked for delete. This field will be set by the actuators and consumed by higher level entities like autoscaler that will be interfacing with cluster-api as generic provider.
| `providerSpec`
| `object`
@@ -94,25 +81,18 @@ be interfacing with cluster-api as generic provider.
| `taints`
| `array`
| The list of the taints to be applied to the corresponding Node in additive
manner. This list will not overwrite any other taints added to the Node on
an ongoing basis by other entities. These taints should be actively reconciled
e.g. if you ask the machine controller to apply a taint and then manually remove
the taint the machine controller will put it back) but not have the machine controller
remove any taints
| The list of the taints to be applied to the corresponding Node in additive manner. This list will not overwrite any other taints added to the Node on an ongoing basis by other entities. These taints should be actively reconciled e.g. if you ask the machine controller to apply a taint and then manually remove the taint the machine controller will put it back) but not have the machine controller remove any taints
| `taints[]`
| `object`
| The node this Taint is attached to has the "effect" on
any pod that does not tolerate the Taint.
| The node this Taint is attached to has the "effect" on any pod that does not tolerate the Taint.
|===
=== .spec.lifecycleHooks
Description::
+
--
LifecycleHooks allow users to pause operations on the machine at
certain predefined points within the machine lifecycle.
LifecycleHooks allow users to pause operations on the machine at certain predefined points within the machine lifecycle.
--
Type::
@@ -127,8 +107,7 @@ Type::
| `preDrain`
| `array`
| PreDrain hooks prevent the machine from being drained.
This also blocks further lifecycle events, such as termination.
| PreDrain hooks prevent the machine from being drained. This also blocks further lifecycle events, such as termination.
| `preDrain[]`
| `object`
@@ -136,8 +115,7 @@ This also blocks further lifecycle events, such as termination.
| `preTerminate`
| `array`
| PreTerminate hooks prevent the machine from being terminated.
PreTerminate hooks be actioned after the Machine has been drained.
| PreTerminate hooks prevent the machine from being terminated. PreTerminate hooks be actioned after the Machine has been drained.
| `preTerminate[]`
| `object`
@@ -148,8 +126,7 @@ PreTerminate hooks be actioned after the Machine has been drained.
Description::
+
--
PreDrain hooks prevent the machine from being drained.
This also blocks further lifecycle events, such as termination.
PreDrain hooks prevent the machine from being drained. This also blocks further lifecycle events, such as termination.
--
Type::
@@ -180,26 +157,18 @@ Required::
| `name`
| `string`
| Name defines a unique name for the lifcycle hook.
The name should be unique and descriptive, ideally 1-3 words, in CamelCase or
it may be namespaced, eg. foo.example.com/CamelCase.
Names must be unique and should only be managed by a single entity.
| Name defines a unique name for the lifcycle hook. The name should be unique and descriptive, ideally 1-3 words, in CamelCase or it may be namespaced, eg. foo.example.com/CamelCase. Names must be unique and should only be managed by a single entity.
| `owner`
| `string`
| Owner defines the owner of the lifecycle hook.
This should be descriptive enough so that users can identify
who/what is responsible for blocking the lifecycle.
This could be the name of a controller (e.g. clusteroperator/etcd)
or an administrator managing the hook.
| Owner defines the owner of the lifecycle hook. This should be descriptive enough so that users can identify who/what is responsible for blocking the lifecycle. This could be the name of a controller (e.g. clusteroperator/etcd) or an administrator managing the hook.
|===
=== .spec.lifecycleHooks.preTerminate
Description::
+
--
PreTerminate hooks prevent the machine from being terminated.
PreTerminate hooks be actioned after the Machine has been drained.
PreTerminate hooks prevent the machine from being terminated. PreTerminate hooks be actioned after the Machine has been drained.
--
Type::
@@ -230,27 +199,18 @@ Required::
| `name`
| `string`
| Name defines a unique name for the lifcycle hook.
The name should be unique and descriptive, ideally 1-3 words, in CamelCase or
it may be namespaced, eg. foo.example.com/CamelCase.
Names must be unique and should only be managed by a single entity.
| Name defines a unique name for the lifcycle hook. The name should be unique and descriptive, ideally 1-3 words, in CamelCase or it may be namespaced, eg. foo.example.com/CamelCase. Names must be unique and should only be managed by a single entity.
| `owner`
| `string`
| Owner defines the owner of the lifecycle hook.
This should be descriptive enough so that users can identify
who/what is responsible for blocking the lifecycle.
This could be the name of a controller (e.g. clusteroperator/etcd)
or an administrator managing the hook.
| Owner defines the owner of the lifecycle hook. This should be descriptive enough so that users can identify who/what is responsible for blocking the lifecycle. This could be the name of a controller (e.g. clusteroperator/etcd) or an administrator managing the hook.
|===
=== .spec.metadata
Description::
+
--
ObjectMeta will autopopulate the Node created. Use this to
indicate what labels, annotations, name prefix, etc., should be used
when creating the Node.
ObjectMeta will autopopulate the Node created. Use this to indicate what labels, annotations, name prefix, etc., should be used when creating the Node.
--
Type::
@@ -265,78 +225,41 @@ Type::
| `annotations`
| `object (string)`
| Annotations is an unstructured key value map stored with a resource that may be
set by external tools to store and retrieve arbitrary metadata. They are not
queryable and should be preserved when modifying objects.
More info: http://kubernetes.io/docs/user-guide/annotations
| Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations
| `generateName`
| `string`
| GenerateName is an optional prefix, used by the server, to generate a unique
name ONLY IF the Name field has not been provided.
If this field is used, the name returned to the client will be different
than the name passed. This value will also be combined with a unique suffix.
The provided value has the same validation rules as the Name field,
and may be truncated by the length of the suffix required to make the value
unique on the server.
If this field is specified and the generated name exists, the server will
NOT return a 409 - instead, it will either return 201 Created or 500 with Reason
ServerTimeout indicating a unique name could not be found in the time allotted, and the client
should retry (optionally after the time indicated in the Retry-After header).
Applied only if Name is not specified.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#idempotency
| GenerateName is an optional prefix, used by the server, to generate a unique name ONLY IF the Name field has not been provided. If this field is used, the name returned to the client will be different than the name passed. This value will also be combined with a unique suffix. The provided value has the same validation rules as the Name field, and may be truncated by the length of the suffix required to make the value unique on the server.
If this field is specified and the generated name exists, the server will NOT return a 409 - instead, it will either return 201 Created or 500 with Reason ServerTimeout indicating a unique name could not be found in the time allotted, and the client should retry (optionally after the time indicated in the Retry-After header).
Applied only if Name is not specified. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#idempotency
| `labels`
| `object (string)`
| Map of string keys and values that can be used to organize and categorize
(scope and select) objects. May match selectors of replication controllers
and services.
More info: http://kubernetes.io/docs/user-guide/labels
| Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and services. More info: http://kubernetes.io/docs/user-guide/labels
| `name`
| `string`
| Name must be unique within a namespace. Is required when creating resources, although
some resources may allow a client to request the generation of an appropriate name
automatically. Name is primarily intended for creation idempotence and configuration
definition.
Cannot be updated.
More info: http://kubernetes.io/docs/user-guide/identifiers#names
| Name must be unique within a namespace. Is required when creating resources, although some resources may allow a client to request the generation of an appropriate name automatically. Name is primarily intended for creation idempotence and configuration definition. Cannot be updated. More info: http://kubernetes.io/docs/user-guide/identifiers#names
| `namespace`
| `string`
| Namespace defines the space within each name must be unique. An empty namespace is
equivalent to the "default" namespace, but "default" is the canonical representation.
Not all objects are required to be scoped to a namespace - the value of this field for
those objects will be empty.
Must be a DNS_LABEL.
Cannot be updated.
More info: http://kubernetes.io/docs/user-guide/namespaces
| Namespace defines the space within each name must be unique. An empty namespace is equivalent to the "default" namespace, but "default" is the canonical representation. Not all objects are required to be scoped to a namespace - the value of this field for those objects will be empty.
Must be a DNS_LABEL. Cannot be updated. More info: http://kubernetes.io/docs/user-guide/namespaces
| `ownerReferences`
| `array`
| List of objects depended by this object. If ALL objects in the list have
been deleted, this object will be garbage collected. If this object is managed by a controller,
then an entry in this list will point to this controller, with the controller field set to true.
There cannot be more than one managing controller.
| List of objects depended by this object. If ALL objects in the list have been deleted, this object will be garbage collected. If this object is managed by a controller, then an entry in this list will point to this controller, with the controller field set to true. There cannot be more than one managing controller.
| `ownerReferences[]`
| `object`
| OwnerReference contains enough information to let you identify an owning
object. An owning object must be in the same namespace as the dependent, or
be cluster-scoped, so there is no namespace field.
| OwnerReference contains enough information to let you identify an owning object. An owning object must be in the same namespace as the dependent, or be cluster-scoped, so there is no namespace field.
|===
=== .spec.metadata.ownerReferences
Description::
+
--
List of objects depended by this object. If ALL objects in the list have
been deleted, this object will be garbage collected. If this object is managed by a controller,
then an entry in this list will point to this controller, with the controller field set to true.
There cannot be more than one managing controller.
List of objects depended by this object. If ALL objects in the list have been deleted, this object will be garbage collected. If this object is managed by a controller, then an entry in this list will point to this controller, with the controller field set to true. There cannot be more than one managing controller.
--
Type::
@@ -349,9 +272,7 @@ Type::
Description::
+
--
OwnerReference contains enough information to let you identify an owning
object. An owning object must be in the same namespace as the dependent, or
be cluster-scoped, so there is no namespace field.
OwnerReference contains enough information to let you identify an owning object. An owning object must be in the same namespace as the dependent, or be cluster-scoped, so there is no namespace field.
--
Type::
@@ -375,14 +296,7 @@ Required::
| `blockOwnerDeletion`
| `boolean`
| If true, AND if the owner has the "foregroundDeletion" finalizer, then
the owner cannot be deleted from the key-value store until this
reference is removed.
See https://kubernetes.io/docs/concepts/architecture/garbage-collection/#foreground-deletion
for how the garbage collector interacts with this field and enforces the foreground deletion.
Defaults to false.
To set this field, a user needs "delete" permission of the owner,
otherwise 422 (Unprocessable Entity) will be returned.
| If true, AND if the owner has the "foregroundDeletion" finalizer, then the owner cannot be deleted from the key-value store until this reference is removed. See https://kubernetes.io/docs/concepts/architecture/garbage-collection/#foreground-deletion for how the garbage collector interacts with this field and enforces the foreground deletion. Defaults to false. To set this field, a user needs "delete" permission of the owner, otherwise 422 (Unprocessable Entity) will be returned.
| `controller`
| `boolean`
@@ -390,18 +304,15 @@ otherwise 422 (Unprocessable Entity) will be returned.
| `kind`
| `string`
| Kind of the referent.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
| Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
| `name`
| `string`
| Name of the referent.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names#names
| Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names#names
| `uid`
| `string`
| UID of the referent.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names#uids
| UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names#uids
|===
=== .spec.providerSpec
@@ -423,22 +334,14 @@ Type::
| `value`
| ``
| Value is an inlined, serialized representation of the resource
configuration. It is recommended that providers maintain their own
versioned API types that should be serialized/deserialized from this
field, akin to component config.
| Value is an inlined, serialized representation of the resource configuration. It is recommended that providers maintain their own versioned API types that should be serialized/deserialized from this field, akin to component config.
|===
=== .spec.taints
Description::
+
--
The list of the taints to be applied to the corresponding Node in additive
manner. This list will not overwrite any other taints added to the Node on
an ongoing basis by other entities. These taints should be actively reconciled
e.g. if you ask the machine controller to apply a taint and then manually remove
the taint the machine controller will put it back) but not have the machine controller
remove any taints
The list of the taints to be applied to the corresponding Node in additive manner. This list will not overwrite any other taints added to the Node on an ongoing basis by other entities. These taints should be actively reconciled e.g. if you ask the machine controller to apply a taint and then manually remove the taint the machine controller will put it back) but not have the machine controller remove any taints
--
Type::
@@ -451,8 +354,7 @@ Type::
Description::
+
--
The node this Taint is attached to has the "effect" on
any pod that does not tolerate the Taint.
The node this Taint is attached to has the "effect" on any pod that does not tolerate the Taint.
--
Type::
@@ -470,9 +372,7 @@ Required::
| `effect`
| `string`
| Required. The effect of the taint on pods
that do not tolerate the taint.
Valid effects are NoSchedule, PreferNoSchedule and NoExecute.
| Required. The effect of the taint on pods that do not tolerate the taint. Valid effects are NoSchedule, PreferNoSchedule and NoExecute.
| `key`
| `string`
@@ -480,8 +380,7 @@ Valid effects are NoSchedule, PreferNoSchedule and NoExecute.
| `timeAdded`
| `string`
| TimeAdded represents the time at which the taint was added.
It is only written for NoExecute taints.
| TimeAdded represents the time at which the taint was added. It is only written for NoExecute taints.
| `value`
| `string`
@@ -523,48 +422,19 @@ Type::
| `errorMessage`
| `string`
| ErrorMessage will be set in the event that there is a terminal problem
reconciling the Machine and will contain a more verbose string suitable
for logging and human consumption.
This field should not be set for transitive errors that a controller
faces that are expected to be fixed automatically over
time (like service outages), but instead indicate that something is
fundamentally wrong with the Machine's spec or the configuration of
the controller, and that manual intervention is required. Examples
of terminal errors would be invalid combinations of settings in the
spec, values that are unsupported by the controller, or the
responsible controller itself being critically misconfigured.
Any transient errors that occur during the reconciliation of Machines
can be added as events to the Machine object and/or logged in the
controller's output.
| ErrorMessage will be set in the event that there is a terminal problem reconciling the Machine and will contain a more verbose string suitable for logging and human consumption.
This field should not be set for transitive errors that a controller faces that are expected to be fixed automatically over time (like service outages), but instead indicate that something is fundamentally wrong with the Machine's spec or the configuration of the controller, and that manual intervention is required. Examples of terminal errors would be invalid combinations of settings in the spec, values that are unsupported by the controller, or the responsible controller itself being critically misconfigured.
Any transient errors that occur during the reconciliation of Machines can be added as events to the Machine object and/or logged in the controller's output.
| `errorReason`
| `string`
| ErrorReason will be set in the event that there is a terminal problem
reconciling the Machine and will contain a succinct value suitable
for machine interpretation.
This field should not be set for transitive errors that a controller
faces that are expected to be fixed automatically over
time (like service outages), but instead indicate that something is
fundamentally wrong with the Machine's spec or the configuration of
the controller, and that manual intervention is required. Examples
of terminal errors would be invalid combinations of settings in the
spec, values that are unsupported by the controller, or the
responsible controller itself being critically misconfigured.
Any transient errors that occur during the reconciliation of Machines
can be added as events to the Machine object and/or logged in the
controller's output.
| ErrorReason will be set in the event that there is a terminal problem reconciling the Machine and will contain a succinct value suitable for machine interpretation.
This field should not be set for transitive errors that a controller faces that are expected to be fixed automatically over time (like service outages), but instead indicate that something is fundamentally wrong with the Machine's spec or the configuration of the controller, and that manual intervention is required. Examples of terminal errors would be invalid combinations of settings in the spec, values that are unsupported by the controller, or the responsible controller itself being critically misconfigured.
Any transient errors that occur during the reconciliation of Machines can be added as events to the Machine object and/or logged in the controller's output.
| `lastOperation`
| `object`
| LastOperation describes the last-operation performed by the machine-controller.
This API should be useful as a history in terms of the latest operation performed on the
specific machine. It should also convey the state of the latest-operation for example if
it is still on-going, failed or completed successfully.
| LastOperation describes the last-operation performed by the machine-controller. This API should be useful as a history in terms of the latest operation performed on the specific machine. It should also convey the state of the latest-operation for example if it is still on-going, failed or completed successfully.
| `lastUpdated`
| `string`
@@ -576,15 +446,11 @@ it is still on-going, failed or completed successfully.
| `phase`
| `string`
| Phase represents the current phase of machine actuation.
One of: Failed, Provisioning, Provisioned, Running, Deleting
| Phase represents the current phase of machine actuation. One of: Failed, Provisioning, Provisioned, Running, Deleting
| `providerStatus`
| ``
| ProviderStatus details a Provider-specific status.
It is recommended that providers maintain their
own versioned API types that should be
serialized/deserialized from this field.
| ProviderStatus details a Provider-specific status. It is recommended that providers maintain their own versioned API types that should be serialized/deserialized from this field.
|===
=== .status.addresses
@@ -653,8 +519,6 @@ Type::
`object`
Required::
- `lastTransitionTime`
- `status`
- `type`
@@ -665,26 +529,19 @@ Required::
| `lastTransitionTime`
| `string`
| Last time the condition transitioned from one status to another.
This should be when the underlying condition changed. If that is not known, then using the time when
the API field changed is acceptable.
| Last time the condition transitioned from one status to another. This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
| `message`
| `string`
| A human readable message indicating details about the transition.
This field may be empty.
| A human readable message indicating details about the transition. This field may be empty.
| `reason`
| `string`
| The reason for the condition's last transition in CamelCase.
The specific API may choose whether or not this field is considered a guaranteed API.
This field may not be empty.
| The reason for the condition's last transition in CamelCase. The specific API may choose whether or not this field is considered a guaranteed API. This field may not be empty.
| `severity`
| `string`
| Severity provides an explicit classification of Reason code, so the users or machines can immediately
understand the current situation and act accordingly.
The Severity field MUST be set only when Status=False.
| Severity provides an explicit classification of Reason code, so the users or machines can immediately understand the current situation and act accordingly. The Severity field MUST be set only when Status=False.
| `status`
| `string`
@@ -692,19 +549,14 @@ The Severity field MUST be set only when Status=False.
| `type`
| `string`
| Type of condition in CamelCase or in foo.example.com/CamelCase.
Many .condition.type values are consistent across resources like Available, but because arbitrary conditions
can be useful (see .node.status.conditions), the ability to deconflict is important.
| Type of condition in CamelCase or in foo.example.com/CamelCase. Many .condition.type values are consistent across resources like Available, but because arbitrary conditions can be useful (see .node.status.conditions), the ability to deconflict is important.
|===
=== .status.lastOperation
Description::
+
--
LastOperation describes the last-operation performed by the machine-controller.
This API should be useful as a history in terms of the latest operation performed on the
specific machine. It should also convey the state of the latest-operation for example if
it is still on-going, failed or completed successfully.
LastOperation describes the last-operation performed by the machine-controller. This API should be useful as a history in terms of the latest operation performed on the specific machine. It should also convey the state of the latest-operation for example if it is still on-going, failed or completed successfully.
--
Type::
@@ -727,13 +579,11 @@ Type::
| `state`
| `string`
| State is the current status of the last performed operation.
E.g. Processing, Failed, Successful etc
| State is the current status of the last performed operation. E.g. Processing, Failed, Successful etc
| `type`
| `string`
| Type is the type of operation which was last performed.
E.g. Create, Delete, Update etc
| Type is the type of operation which was last performed. E.g. Create, Delete, Update etc
|===
=== .status.nodeRef
@@ -759,38 +609,27 @@ Type::
| `fieldPath`
| `string`
| If referring to a piece of an object instead of an entire object, this string
should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2].
For example, if the object reference is to a container within a pod, this would take on a value like:
"spec.containers{name}" (where "name" refers to the name of the container that triggered
the event) or if no container name is specified "spec.containers[2]" (container with
index 2 in this pod). This syntax is chosen only to have some well-defined way of
referencing a part of an object.
| If referring to a piece of an object instead of an entire object, this string should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2]. For example, if the object reference is to a container within a pod, this would take on a value like: "spec.containers{name}" (where "name" refers to the name of the container that triggered the event) or if no container name is specified "spec.containers[2]" (container with index 2 in this pod). This syntax is chosen only to have some well-defined way of referencing a part of an object. TODO: this design is not final and this field is subject to change in the future.
| `kind`
| `string`
| Kind of the referent.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
| Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
| `name`
| `string`
| Name of the referent.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
| Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
| `namespace`
| `string`
| Namespace of the referent.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/
| Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/
| `resourceVersion`
| `string`
| Specific resourceVersion to which this reference is made, if any.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency
| Specific resourceVersion to which this reference is made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency
| `uid`
| `string`
| UID of the referent.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids
| UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids
|===

View File

@@ -11,9 +11,8 @@ toc::[]
Description::
+
--
MachineConfig defines the configuration for a machine
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
MachineConfig defines the configuration for a machine
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -63,8 +62,7 @@ Type::
| `baseOSExtensionsContainerImage`
| `string`
| BaseOSExtensionsContainerImage specifies the remote location that will be used
to fetch the extensions container matching a new-format OS image
| BaseOSExtensionsContainerImage specifies the remote location that will be used to fetch the extensions container matching a new-format OS image
| `config`
| ``
@@ -84,13 +82,11 @@ to fetch the extensions container matching a new-format OS image
| `kernelType`
| `string`
| kernelType contains which kernel we want to be running like default
(traditional), realtime, 64k-pages (aarch64 only).
| kernelType contains which kernel we want to be running like default (traditional), realtime, 64k-pages (aarch64 only).
| `osImageURL`
| `string`
| OSImageURL specifies the remote location that will be used to
fetch the OS.
| OSImageURL specifies the remote location that will be used to fetch the OS.
|===

View File

@@ -11,9 +11,8 @@ toc::[]
Description::
+
--
MachineConfigPool describes a pool of MachineConfigs.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
MachineConfigPool describes a pool of MachineConfigs.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -73,22 +72,12 @@ Type::
| `machineConfigSelector`
| `object`
| machineConfigSelector specifies a label selector for MachineConfigs.
Refer https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/ on how label and selectors work.
| machineConfigSelector specifies a label selector for MachineConfigs. Refer https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/ on how label and selectors work.
| `maxUnavailable`
| `integer-or-string`
| maxUnavailable defines either an integer number or percentage
of nodes in the pool that can go Unavailable during an update.
This includes nodes Unavailable for any reason, including user
initiated cordons, failing nodes, etc. The default value is 1.
A value larger than 1 will mean multiple nodes going unavailable during
the update, which may affect your workload stress on the remaining nodes.
You cannot set this value to 0 to stop updates (it will default back to 1);
to stop updates, use the 'paused' property instead. Drain will respect
Pod Disruption Budgets (PDBs) such as etcd quorum guards, even if
maxUnavailable is greater than one.
| maxUnavailable defines either an integer number or percentage of nodes in the pool that can go Unavailable during an update. This includes nodes Unavailable for any reason, including user initiated cordons, failing nodes, etc. The default value is 1.
A value larger than 1 will mean multiple nodes going unavailable during the update, which may affect your workload stress on the remaining nodes. You cannot set this value to 0 to stop updates (it will default back to 1); to stop updates, use the 'paused' property instead. Drain will respect Pod Disruption Budgets (PDBs) such as etcd quorum guards, even if maxUnavailable is greater than one.
| `nodeSelector`
| `object`
@@ -96,8 +85,7 @@ maxUnavailable is greater than one.
| `paused`
| `boolean`
| paused specifies whether or not changes to this machine config pool should be stopped.
This includes generating new desiredMachineConfig and update of machines.
| paused specifies whether or not changes to this machine config pool should be stopped. This includes generating new desiredMachineConfig and update of machines.
|===
=== .spec.configuration
@@ -123,33 +111,23 @@ Type::
| `fieldPath`
| `string`
| If referring to a piece of an object instead of an entire object, this string
should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2].
For example, if the object reference is to a container within a pod, this would take on a value like:
"spec.containers{name}" (where "name" refers to the name of the container that triggered
the event) or if no container name is specified "spec.containers[2]" (container with
index 2 in this pod). This syntax is chosen only to have some well-defined way of
referencing a part of an object.
| If referring to a piece of an object instead of an entire object, this string should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2]. For example, if the object reference is to a container within a pod, this would take on a value like: "spec.containers{name}" (where "name" refers to the name of the container that triggered the event) or if no container name is specified "spec.containers[2]" (container with index 2 in this pod). This syntax is chosen only to have some well-defined way of referencing a part of an object. TODO: this design is not final and this field is subject to change in the future.
| `kind`
| `string`
| Kind of the referent.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
| Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
| `name`
| `string`
| Name of the referent.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
| Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
| `namespace`
| `string`
| Namespace of the referent.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/
| Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/
| `resourceVersion`
| `string`
| Specific resourceVersion to which this reference is made, if any.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency
| Specific resourceVersion to which this reference is made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency
| `source`
| `array`
@@ -157,12 +135,12 @@ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-
| `source[]`
| `object`
| ObjectReference contains enough information to let you inspect or modify the referred object.
| ObjectReference contains enough information to let you inspect or modify the referred object. --- New uses of this type are discouraged because of difficulty describing its usage when embedded in APIs. 1. Ignored fields. It includes many fields which are not generally honored. For instance, ResourceVersion and FieldPath are both very rarely valid in actual usage. 2. Invalid usage help. It is impossible to add specific help for individual usage. In most embedded usages, there are particular restrictions like, "must refer only to types A and B" or "UID not honored" or "name must be restricted". Those cannot be well described when embedded. 3. Inconsistent validation. Because the usages are different, the validation rules are different by usage, which makes it hard for users to predict what will happen. 4. The fields are both imprecise and overly precise. Kind is not a precise mapping to a URL. This can produce ambiguity during interpretation and require a REST mapping. In most cases, the dependency is on the group,resource tuple and the version of the actual struct is irrelevant. 5. We cannot easily change it. Because this type is embedded in many locations, updates to this type will affect numerous schemas. Don't make new APIs embed an underspecified API type they do not control.
Instead of using this type, create a locally provided and used type that is well-focused on your reference. For example, ServiceReferences for admission registration: https://github.com/kubernetes/api/blob/release-1.17/admissionregistration/v1/types.go#L533 .
| `uid`
| `string`
| UID of the referent.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids
| UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids
|===
=== .spec.configuration.source
@@ -182,7 +160,8 @@ Type::
Description::
+
--
ObjectReference contains enough information to let you inspect or modify the referred object.
ObjectReference contains enough information to let you inspect or modify the referred object. --- New uses of this type are discouraged because of difficulty describing its usage when embedded in APIs. 1. Ignored fields. It includes many fields which are not generally honored. For instance, ResourceVersion and FieldPath are both very rarely valid in actual usage. 2. Invalid usage help. It is impossible to add specific help for individual usage. In most embedded usages, there are particular restrictions like, "must refer only to types A and B" or "UID not honored" or "name must be restricted". Those cannot be well described when embedded. 3. Inconsistent validation. Because the usages are different, the validation rules are different by usage, which makes it hard for users to predict what will happen. 4. The fields are both imprecise and overly precise. Kind is not a precise mapping to a URL. This can produce ambiguity during interpretation and require a REST mapping. In most cases, the dependency is on the group,resource tuple and the version of the actual struct is irrelevant. 5. We cannot easily change it. Because this type is embedded in many locations, updates to this type will affect numerous schemas. Don't make new APIs embed an underspecified API type they do not control.
Instead of using this type, create a locally provided and used type that is well-focused on your reference. For example, ServiceReferences for admission registration: https://github.com/kubernetes/api/blob/release-1.17/admissionregistration/v1/types.go#L533 .
--
Type::
@@ -201,46 +180,34 @@ Type::
| `fieldPath`
| `string`
| If referring to a piece of an object instead of an entire object, this string
should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2].
For example, if the object reference is to a container within a pod, this would take on a value like:
"spec.containers{name}" (where "name" refers to the name of the container that triggered
the event) or if no container name is specified "spec.containers[2]" (container with
index 2 in this pod). This syntax is chosen only to have some well-defined way of
referencing a part of an object.
| If referring to a piece of an object instead of an entire object, this string should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2]. For example, if the object reference is to a container within a pod, this would take on a value like: "spec.containers{name}" (where "name" refers to the name of the container that triggered the event) or if no container name is specified "spec.containers[2]" (container with index 2 in this pod). This syntax is chosen only to have some well-defined way of referencing a part of an object. TODO: this design is not final and this field is subject to change in the future.
| `kind`
| `string`
| Kind of the referent.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
| Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
| `name`
| `string`
| Name of the referent.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
| Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
| `namespace`
| `string`
| Namespace of the referent.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/
| Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/
| `resourceVersion`
| `string`
| Specific resourceVersion to which this reference is made, if any.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency
| Specific resourceVersion to which this reference is made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency
| `uid`
| `string`
| UID of the referent.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids
| UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids
|===
=== .spec.machineConfigSelector
Description::
+
--
machineConfigSelector specifies a label selector for MachineConfigs.
Refer https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/ on how label and selectors work.
machineConfigSelector specifies a label selector for MachineConfigs. Refer https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/ on how label and selectors work.
--
Type::
@@ -259,14 +226,11 @@ Type::
| `matchExpressions[]`
| `object`
| A label selector requirement is a selector that contains values, a key, and an operator that
relates the key and values.
| A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
| `matchLabels`
| `object (string)`
| matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
map is equivalent to an element of matchExpressions, whose key field is "key", the
operator is "In", and the values array contains only "value". The requirements are ANDed.
| matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
|===
=== .spec.machineConfigSelector.matchExpressions
@@ -286,8 +250,7 @@ Type::
Description::
+
--
A label selector requirement is a selector that contains values, a key, and an operator that
relates the key and values.
A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
--
Type::
@@ -309,15 +272,11 @@ Required::
| `operator`
| `string`
| operator represents a key's relationship to a set of values.
Valid operators are In, NotIn, Exists and DoesNotExist.
| operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
| `values`
| `array (string)`
| values is an array of string values. If the operator is In or NotIn,
the values array must be non-empty. If the operator is Exists or DoesNotExist,
the values array must be empty. This array is replaced during a strategic
merge patch.
| values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
|===
=== .spec.nodeSelector
@@ -343,14 +302,11 @@ Type::
| `matchExpressions[]`
| `object`
| A label selector requirement is a selector that contains values, a key, and an operator that
relates the key and values.
| A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
| `matchLabels`
| `object (string)`
| matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
map is equivalent to an element of matchExpressions, whose key field is "key", the
operator is "In", and the values array contains only "value". The requirements are ANDed.
| matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
|===
=== .spec.nodeSelector.matchExpressions
@@ -370,8 +326,7 @@ Type::
Description::
+
--
A label selector requirement is a selector that contains values, a key, and an operator that
relates the key and values.
A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
--
Type::
@@ -393,15 +348,11 @@ Required::
| `operator`
| `string`
| operator represents a key's relationship to a set of values.
Valid operators are In, NotIn, Exists and DoesNotExist.
| operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
| `values`
| `array (string)`
| values is an array of string values. If the operator is In or NotIn,
the values array must be non-empty. If the operator is Exists or DoesNotExist,
the values array must be empty. This array is replaced during a strategic
merge patch.
| values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
|===
=== .status
@@ -443,8 +394,7 @@ Type::
| `degradedMachineCount`
| `integer`
| degradedMachineCount represents the total number of machines marked degraded (or unreconcilable).
A node is marked degraded if applying a configuration failed..
| degradedMachineCount represents the total number of machines marked degraded (or unreconcilable). A node is marked degraded if applying a configuration failed..
| `machineCount`
| `integer`
@@ -460,8 +410,7 @@ A node is marked degraded if applying a configuration failed..
| `unavailableMachineCount`
| `integer`
| unavailableMachineCount represents the total number of unavailable (non-ready) machines targeted by the pool.
A node is marked unavailable if it is in updating state or NodeReady condition is false.
| unavailableMachineCount represents the total number of unavailable (non-ready) machines targeted by the pool. A node is marked unavailable if it is in updating state or NodeReady condition is false.
| `updatedMachineCount`
| `integer`
@@ -546,18 +495,15 @@ Type::
| `lastTransitionTime`
| ``
| lastTransitionTime is the timestamp corresponding to the last status
change of this condition.
| lastTransitionTime is the timestamp corresponding to the last status change of this condition.
| `message`
| `string`
| message is a human readable description of the details of the last
transition, complementing reason.
| message is a human readable description of the details of the last transition, complementing reason.
| `reason`
| `string`
| reason is a brief machine readable explanation for the condition's last
transition.
| reason is a brief machine readable explanation for the condition's last transition.
| `status`
| `string`
@@ -591,33 +537,23 @@ Type::
| `fieldPath`
| `string`
| If referring to a piece of an object instead of an entire object, this string
should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2].
For example, if the object reference is to a container within a pod, this would take on a value like:
"spec.containers{name}" (where "name" refers to the name of the container that triggered
the event) or if no container name is specified "spec.containers[2]" (container with
index 2 in this pod). This syntax is chosen only to have some well-defined way of
referencing a part of an object.
| If referring to a piece of an object instead of an entire object, this string should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2]. For example, if the object reference is to a container within a pod, this would take on a value like: "spec.containers{name}" (where "name" refers to the name of the container that triggered the event) or if no container name is specified "spec.containers[2]" (container with index 2 in this pod). This syntax is chosen only to have some well-defined way of referencing a part of an object. TODO: this design is not final and this field is subject to change in the future.
| `kind`
| `string`
| Kind of the referent.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
| Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
| `name`
| `string`
| Name of the referent.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
| Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
| `namespace`
| `string`
| Namespace of the referent.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/
| Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/
| `resourceVersion`
| `string`
| Specific resourceVersion to which this reference is made, if any.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency
| Specific resourceVersion to which this reference is made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency
| `source`
| `array`
@@ -625,12 +561,12 @@ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-
| `source[]`
| `object`
| ObjectReference contains enough information to let you inspect or modify the referred object.
| ObjectReference contains enough information to let you inspect or modify the referred object. --- New uses of this type are discouraged because of difficulty describing its usage when embedded in APIs. 1. Ignored fields. It includes many fields which are not generally honored. For instance, ResourceVersion and FieldPath are both very rarely valid in actual usage. 2. Invalid usage help. It is impossible to add specific help for individual usage. In most embedded usages, there are particular restrictions like, "must refer only to types A and B" or "UID not honored" or "name must be restricted". Those cannot be well described when embedded. 3. Inconsistent validation. Because the usages are different, the validation rules are different by usage, which makes it hard for users to predict what will happen. 4. The fields are both imprecise and overly precise. Kind is not a precise mapping to a URL. This can produce ambiguity during interpretation and require a REST mapping. In most cases, the dependency is on the group,resource tuple and the version of the actual struct is irrelevant. 5. We cannot easily change it. Because this type is embedded in many locations, updates to this type will affect numerous schemas. Don't make new APIs embed an underspecified API type they do not control.
Instead of using this type, create a locally provided and used type that is well-focused on your reference. For example, ServiceReferences for admission registration: https://github.com/kubernetes/api/blob/release-1.17/admissionregistration/v1/types.go#L533 .
| `uid`
| `string`
| UID of the referent.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids
| UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids
|===
=== .status.configuration.source
@@ -650,7 +586,8 @@ Type::
Description::
+
--
ObjectReference contains enough information to let you inspect or modify the referred object.
ObjectReference contains enough information to let you inspect or modify the referred object. --- New uses of this type are discouraged because of difficulty describing its usage when embedded in APIs. 1. Ignored fields. It includes many fields which are not generally honored. For instance, ResourceVersion and FieldPath are both very rarely valid in actual usage. 2. Invalid usage help. It is impossible to add specific help for individual usage. In most embedded usages, there are particular restrictions like, "must refer only to types A and B" or "UID not honored" or "name must be restricted". Those cannot be well described when embedded. 3. Inconsistent validation. Because the usages are different, the validation rules are different by usage, which makes it hard for users to predict what will happen. 4. The fields are both imprecise and overly precise. Kind is not a precise mapping to a URL. This can produce ambiguity during interpretation and require a REST mapping. In most cases, the dependency is on the group,resource tuple and the version of the actual struct is irrelevant. 5. We cannot easily change it. Because this type is embedded in many locations, updates to this type will affect numerous schemas. Don't make new APIs embed an underspecified API type they do not control.
Instead of using this type, create a locally provided and used type that is well-focused on your reference. For example, ServiceReferences for admission registration: https://github.com/kubernetes/api/blob/release-1.17/admissionregistration/v1/types.go#L533 .
--
Type::
@@ -669,38 +606,27 @@ Type::
| `fieldPath`
| `string`
| If referring to a piece of an object instead of an entire object, this string
should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2].
For example, if the object reference is to a container within a pod, this would take on a value like:
"spec.containers{name}" (where "name" refers to the name of the container that triggered
the event) or if no container name is specified "spec.containers[2]" (container with
index 2 in this pod). This syntax is chosen only to have some well-defined way of
referencing a part of an object.
| If referring to a piece of an object instead of an entire object, this string should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2]. For example, if the object reference is to a container within a pod, this would take on a value like: "spec.containers{name}" (where "name" refers to the name of the container that triggered the event) or if no container name is specified "spec.containers[2]" (container with index 2 in this pod). This syntax is chosen only to have some well-defined way of referencing a part of an object. TODO: this design is not final and this field is subject to change in the future.
| `kind`
| `string`
| Kind of the referent.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
| Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
| `name`
| `string`
| Name of the referent.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
| Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
| `namespace`
| `string`
| Namespace of the referent.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/
| Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/
| `resourceVersion`
| `string`
| Specific resourceVersion to which this reference is made, if any.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency
| Specific resourceVersion to which this reference is made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency
| `uid`
| `string`
| UID of the referent.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids
| UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids
|===

View File

@@ -11,8 +11,7 @@ toc::[]
Description::
+
--
MachineHealthCheck is the Schema for the machinehealthchecks API
Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
MachineHealthCheck is the Schema for the machinehealthchecks API Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
--
Type::
@@ -66,59 +65,36 @@ Type::
| `maxUnhealthy`
| `integer-or-string`
| Any farther remediation is only allowed if at most "MaxUnhealthy" machines selected by
"selector" are not healthy.
Expects either a postive integer value or a percentage value.
Percentage values must be positive whole numbers and are capped at 100%.
Both 0 and 0% are valid and will block all remediation.
| Any farther remediation is only allowed if at most "MaxUnhealthy" machines selected by "selector" are not healthy. Expects either a postive integer value or a percentage value. Percentage values must be positive whole numbers and are capped at 100%. Both 0 and 0% are valid and will block all remediation.
| `nodeStartupTimeout`
| `string`
| Machines older than this duration without a node will be considered to have
failed and will be remediated.
To prevent Machines without Nodes from being removed, disable startup checks
by setting this value explicitly to "0".
Expects an unsigned duration string of decimal numbers each with optional
fraction and a unit suffix, eg "300ms", "1.5h" or "2h45m".
Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h".
| Machines older than this duration without a node will be considered to have failed and will be remediated. To prevent Machines without Nodes from being removed, disable startup checks by setting this value explicitly to "0". Expects an unsigned duration string of decimal numbers each with optional fraction and a unit suffix, eg "300ms", "1.5h" or "2h45m". Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h".
| `remediationTemplate`
| `object`
| RemediationTemplate is a reference to a remediation template
provided by an infrastructure provider.
This field is completely optional, when filled, the MachineHealthCheck controller
creates a new object from the template referenced and hands off remediation of the machine to
a controller that lives outside of Machine API Operator.
| RemediationTemplate is a reference to a remediation template provided by an infrastructure provider.
This field is completely optional, when filled, the MachineHealthCheck controller creates a new object from the template referenced and hands off remediation of the machine to a controller that lives outside of Machine API Operator.
| `selector`
| `object`
| Label selector to match machines whose health will be exercised.
Note: An empty selector will match all machines.
| Label selector to match machines whose health will be exercised. Note: An empty selector will match all machines.
| `unhealthyConditions`
| `array`
| UnhealthyConditions contains a list of the conditions that determine
whether a node is considered unhealthy. The conditions are combined in a
logical OR, i.e. if any of the conditions is met, the node is unhealthy.
| UnhealthyConditions contains a list of the conditions that determine whether a node is considered unhealthy. The conditions are combined in a logical OR, i.e. if any of the conditions is met, the node is unhealthy.
| `unhealthyConditions[]`
| `object`
| UnhealthyCondition represents a Node condition type and value with a timeout
specified as a duration. When the named condition has been in the given
status for at least the timeout value, a node is considered unhealthy.
| UnhealthyCondition represents a Node condition type and value with a timeout specified as a duration. When the named condition has been in the given status for at least the timeout value, a node is considered unhealthy.
|===
=== .spec.remediationTemplate
Description::
+
--
RemediationTemplate is a reference to a remediation template
provided by an infrastructure provider.
This field is completely optional, when filled, the MachineHealthCheck controller
creates a new object from the template referenced and hands off remediation of the machine to
a controller that lives outside of Machine API Operator.
RemediationTemplate is a reference to a remediation template provided by an infrastructure provider.
This field is completely optional, when filled, the MachineHealthCheck controller creates a new object from the template referenced and hands off remediation of the machine to a controller that lives outside of Machine API Operator.
--
Type::
@@ -137,46 +113,34 @@ Type::
| `fieldPath`
| `string`
| If referring to a piece of an object instead of an entire object, this string
should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2].
For example, if the object reference is to a container within a pod, this would take on a value like:
"spec.containers{name}" (where "name" refers to the name of the container that triggered
the event) or if no container name is specified "spec.containers[2]" (container with
index 2 in this pod). This syntax is chosen only to have some well-defined way of
referencing a part of an object.
| If referring to a piece of an object instead of an entire object, this string should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2]. For example, if the object reference is to a container within a pod, this would take on a value like: "spec.containers{name}" (where "name" refers to the name of the container that triggered the event) or if no container name is specified "spec.containers[2]" (container with index 2 in this pod). This syntax is chosen only to have some well-defined way of referencing a part of an object. TODO: this design is not final and this field is subject to change in the future.
| `kind`
| `string`
| Kind of the referent.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
| Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
| `name`
| `string`
| Name of the referent.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
| Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
| `namespace`
| `string`
| Namespace of the referent.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/
| Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/
| `resourceVersion`
| `string`
| Specific resourceVersion to which this reference is made, if any.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency
| Specific resourceVersion to which this reference is made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency
| `uid`
| `string`
| UID of the referent.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids
| UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids
|===
=== .spec.selector
Description::
+
--
Label selector to match machines whose health will be exercised.
Note: An empty selector will match all machines.
Label selector to match machines whose health will be exercised. Note: An empty selector will match all machines.
--
Type::
@@ -195,14 +159,11 @@ Type::
| `matchExpressions[]`
| `object`
| A label selector requirement is a selector that contains values, a key, and an operator that
relates the key and values.
| A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
| `matchLabels`
| `object (string)`
| matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
map is equivalent to an element of matchExpressions, whose key field is "key", the
operator is "In", and the values array contains only "value". The requirements are ANDed.
| matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
|===
=== .spec.selector.matchExpressions
@@ -222,8 +183,7 @@ Type::
Description::
+
--
A label selector requirement is a selector that contains values, a key, and an operator that
relates the key and values.
A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
--
Type::
@@ -245,24 +205,18 @@ Required::
| `operator`
| `string`
| operator represents a key's relationship to a set of values.
Valid operators are In, NotIn, Exists and DoesNotExist.
| operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
| `values`
| `array (string)`
| values is an array of string values. If the operator is In or NotIn,
the values array must be non-empty. If the operator is Exists or DoesNotExist,
the values array must be empty. This array is replaced during a strategic
merge patch.
| values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
|===
=== .spec.unhealthyConditions
Description::
+
--
UnhealthyConditions contains a list of the conditions that determine
whether a node is considered unhealthy. The conditions are combined in a
logical OR, i.e. if any of the conditions is met, the node is unhealthy.
UnhealthyConditions contains a list of the conditions that determine whether a node is considered unhealthy. The conditions are combined in a logical OR, i.e. if any of the conditions is met, the node is unhealthy.
--
Type::
@@ -275,9 +229,7 @@ Type::
Description::
+
--
UnhealthyCondition represents a Node condition type and value with a timeout
specified as a duration. When the named condition has been in the given
status for at least the timeout value, a node is considered unhealthy.
UnhealthyCondition represents a Node condition type and value with a timeout specified as a duration. When the named condition has been in the given status for at least the timeout value, a node is considered unhealthy.
--
Type::
@@ -296,9 +248,7 @@ Type::
| `timeout`
| `string`
| Expects an unsigned duration string of decimal numbers each with optional
fraction and a unit suffix, eg "300ms", "1.5h" or "2h45m".
Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h".
| Expects an unsigned duration string of decimal numbers each with optional fraction and a unit suffix, eg "300ms", "1.5h" or "2h45m". Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h".
| `type`
| `string`
@@ -340,8 +290,7 @@ Type::
| `remediationsAllowed`
| `integer`
| RemediationsAllowed is the number of further remediations allowed by this machine health check before
maxUnhealthy short circuiting will be applied
| RemediationsAllowed is the number of further remediations allowed by this machine health check before maxUnhealthy short circuiting will be applied
|===
=== .status.conditions
@@ -368,8 +317,6 @@ Type::
`object`
Required::
- `lastTransitionTime`
- `status`
- `type`
@@ -380,26 +327,19 @@ Required::
| `lastTransitionTime`
| `string`
| Last time the condition transitioned from one status to another.
This should be when the underlying condition changed. If that is not known, then using the time when
the API field changed is acceptable.
| Last time the condition transitioned from one status to another. This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
| `message`
| `string`
| A human readable message indicating details about the transition.
This field may be empty.
| A human readable message indicating details about the transition. This field may be empty.
| `reason`
| `string`
| The reason for the condition's last transition in CamelCase.
The specific API may choose whether or not this field is considered a guaranteed API.
This field may not be empty.
| The reason for the condition's last transition in CamelCase. The specific API may choose whether or not this field is considered a guaranteed API. This field may not be empty.
| `severity`
| `string`
| Severity provides an explicit classification of Reason code, so the users or machines can immediately
understand the current situation and act accordingly.
The Severity field MUST be set only when Status=False.
| Severity provides an explicit classification of Reason code, so the users or machines can immediately understand the current situation and act accordingly. The Severity field MUST be set only when Status=False.
| `status`
| `string`
@@ -407,9 +347,7 @@ The Severity field MUST be set only when Status=False.
| `type`
| `string`
| Type of condition in CamelCase or in foo.example.com/CamelCase.
Many .condition.type values are consistent across resources like Available, but because arbitrary conditions
can be useful (see .node.status.conditions), the ability to deconflict is important.
| Type of condition in CamelCase or in foo.example.com/CamelCase. Many .condition.type values are consistent across resources like Available, but because arbitrary conditions can be useful (see .node.status.conditions), the ability to deconflict is important.
|===

View File

@@ -11,8 +11,7 @@ toc::[]
Description::
+
--
MachineSet ensures that a specified number of machines replicas are running at any given time.
Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
MachineSet ensures that a specified number of machines replicas are running at any given time. Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
--
Type::
@@ -66,41 +65,30 @@ Type::
| `deletePolicy`
| `string`
| DeletePolicy defines the policy used to identify nodes to delete when downscaling.
Defaults to "Random". Valid values are "Random, "Newest", "Oldest"
| DeletePolicy defines the policy used to identify nodes to delete when downscaling. Defaults to "Random". Valid values are "Random, "Newest", "Oldest"
| `minReadySeconds`
| `integer`
| MinReadySeconds is the minimum number of seconds for which a newly created machine should be ready.
Defaults to 0 (machine will be considered available as soon as it is ready)
| MinReadySeconds is the minimum number of seconds for which a newly created machine should be ready. Defaults to 0 (machine will be considered available as soon as it is ready)
| `replicas`
| `integer`
| Replicas is the number of desired replicas.
This is a pointer to distinguish between explicit zero and unspecified.
Defaults to 1.
| Replicas is the number of desired replicas. This is a pointer to distinguish between explicit zero and unspecified. Defaults to 1.
| `selector`
| `object`
| Selector is a label query over machines that should match the replica count.
Label keys and values that must match in order to be controlled by this MachineSet.
It must match the machine template's labels.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors
| Selector is a label query over machines that should match the replica count. Label keys and values that must match in order to be controlled by this MachineSet. It must match the machine template's labels. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors
| `template`
| `object`
| Template is the object that describes the machine that will be created if
insufficient replicas are detected.
| Template is the object that describes the machine that will be created if insufficient replicas are detected.
|===
=== .spec.selector
Description::
+
--
Selector is a label query over machines that should match the replica count.
Label keys and values that must match in order to be controlled by this MachineSet.
It must match the machine template's labels.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors
Selector is a label query over machines that should match the replica count. Label keys and values that must match in order to be controlled by this MachineSet. It must match the machine template's labels. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors
--
Type::
@@ -119,14 +107,11 @@ Type::
| `matchExpressions[]`
| `object`
| A label selector requirement is a selector that contains values, a key, and an operator that
relates the key and values.
| A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
| `matchLabels`
| `object (string)`
| matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
map is equivalent to an element of matchExpressions, whose key field is "key", the
operator is "In", and the values array contains only "value". The requirements are ANDed.
| matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
|===
=== .spec.selector.matchExpressions
@@ -146,8 +131,7 @@ Type::
Description::
+
--
A label selector requirement is a selector that contains values, a key, and an operator that
relates the key and values.
A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
--
Type::
@@ -169,23 +153,18 @@ Required::
| `operator`
| `string`
| operator represents a key's relationship to a set of values.
Valid operators are In, NotIn, Exists and DoesNotExist.
| operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
| `values`
| `array (string)`
| values is an array of string values. If the operator is In or NotIn,
the values array must be non-empty. If the operator is Exists or DoesNotExist,
the values array must be empty. This array is replaced during a strategic
merge patch.
| values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
|===
=== .spec.template
Description::
+
--
Template is the object that describes the machine that will be created if
insufficient replicas are detected.
Template is the object that describes the machine that will be created if insufficient replicas are detected.
--
Type::
@@ -200,21 +179,18 @@ Type::
| `metadata`
| `object`
| Standard object's metadata.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
| Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
| `spec`
| `object`
| Specification of the desired behavior of the machine.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
| Specification of the desired behavior of the machine. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
|===
=== .spec.template.metadata
Description::
+
--
Standard object's metadata.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
--
Type::
@@ -229,78 +205,41 @@ Type::
| `annotations`
| `object (string)`
| Annotations is an unstructured key value map stored with a resource that may be
set by external tools to store and retrieve arbitrary metadata. They are not
queryable and should be preserved when modifying objects.
More info: http://kubernetes.io/docs/user-guide/annotations
| Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations
| `generateName`
| `string`
| GenerateName is an optional prefix, used by the server, to generate a unique
name ONLY IF the Name field has not been provided.
If this field is used, the name returned to the client will be different
than the name passed. This value will also be combined with a unique suffix.
The provided value has the same validation rules as the Name field,
and may be truncated by the length of the suffix required to make the value
unique on the server.
If this field is specified and the generated name exists, the server will
NOT return a 409 - instead, it will either return 201 Created or 500 with Reason
ServerTimeout indicating a unique name could not be found in the time allotted, and the client
should retry (optionally after the time indicated in the Retry-After header).
Applied only if Name is not specified.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#idempotency
| GenerateName is an optional prefix, used by the server, to generate a unique name ONLY IF the Name field has not been provided. If this field is used, the name returned to the client will be different than the name passed. This value will also be combined with a unique suffix. The provided value has the same validation rules as the Name field, and may be truncated by the length of the suffix required to make the value unique on the server.
If this field is specified and the generated name exists, the server will NOT return a 409 - instead, it will either return 201 Created or 500 with Reason ServerTimeout indicating a unique name could not be found in the time allotted, and the client should retry (optionally after the time indicated in the Retry-After header).
Applied only if Name is not specified. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#idempotency
| `labels`
| `object (string)`
| Map of string keys and values that can be used to organize and categorize
(scope and select) objects. May match selectors of replication controllers
and services.
More info: http://kubernetes.io/docs/user-guide/labels
| Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and services. More info: http://kubernetes.io/docs/user-guide/labels
| `name`
| `string`
| Name must be unique within a namespace. Is required when creating resources, although
some resources may allow a client to request the generation of an appropriate name
automatically. Name is primarily intended for creation idempotence and configuration
definition.
Cannot be updated.
More info: http://kubernetes.io/docs/user-guide/identifiers#names
| Name must be unique within a namespace. Is required when creating resources, although some resources may allow a client to request the generation of an appropriate name automatically. Name is primarily intended for creation idempotence and configuration definition. Cannot be updated. More info: http://kubernetes.io/docs/user-guide/identifiers#names
| `namespace`
| `string`
| Namespace defines the space within each name must be unique. An empty namespace is
equivalent to the "default" namespace, but "default" is the canonical representation.
Not all objects are required to be scoped to a namespace - the value of this field for
those objects will be empty.
Must be a DNS_LABEL.
Cannot be updated.
More info: http://kubernetes.io/docs/user-guide/namespaces
| Namespace defines the space within each name must be unique. An empty namespace is equivalent to the "default" namespace, but "default" is the canonical representation. Not all objects are required to be scoped to a namespace - the value of this field for those objects will be empty.
Must be a DNS_LABEL. Cannot be updated. More info: http://kubernetes.io/docs/user-guide/namespaces
| `ownerReferences`
| `array`
| List of objects depended by this object. If ALL objects in the list have
been deleted, this object will be garbage collected. If this object is managed by a controller,
then an entry in this list will point to this controller, with the controller field set to true.
There cannot be more than one managing controller.
| List of objects depended by this object. If ALL objects in the list have been deleted, this object will be garbage collected. If this object is managed by a controller, then an entry in this list will point to this controller, with the controller field set to true. There cannot be more than one managing controller.
| `ownerReferences[]`
| `object`
| OwnerReference contains enough information to let you identify an owning
object. An owning object must be in the same namespace as the dependent, or
be cluster-scoped, so there is no namespace field.
| OwnerReference contains enough information to let you identify an owning object. An owning object must be in the same namespace as the dependent, or be cluster-scoped, so there is no namespace field.
|===
=== .spec.template.metadata.ownerReferences
Description::
+
--
List of objects depended by this object. If ALL objects in the list have
been deleted, this object will be garbage collected. If this object is managed by a controller,
then an entry in this list will point to this controller, with the controller field set to true.
There cannot be more than one managing controller.
List of objects depended by this object. If ALL objects in the list have been deleted, this object will be garbage collected. If this object is managed by a controller, then an entry in this list will point to this controller, with the controller field set to true. There cannot be more than one managing controller.
--
Type::
@@ -313,9 +252,7 @@ Type::
Description::
+
--
OwnerReference contains enough information to let you identify an owning
object. An owning object must be in the same namespace as the dependent, or
be cluster-scoped, so there is no namespace field.
OwnerReference contains enough information to let you identify an owning object. An owning object must be in the same namespace as the dependent, or be cluster-scoped, so there is no namespace field.
--
Type::
@@ -339,14 +276,7 @@ Required::
| `blockOwnerDeletion`
| `boolean`
| If true, AND if the owner has the "foregroundDeletion" finalizer, then
the owner cannot be deleted from the key-value store until this
reference is removed.
See https://kubernetes.io/docs/concepts/architecture/garbage-collection/#foreground-deletion
for how the garbage collector interacts with this field and enforces the foreground deletion.
Defaults to false.
To set this field, a user needs "delete" permission of the owner,
otherwise 422 (Unprocessable Entity) will be returned.
| If true, AND if the owner has the "foregroundDeletion" finalizer, then the owner cannot be deleted from the key-value store until this reference is removed. See https://kubernetes.io/docs/concepts/architecture/garbage-collection/#foreground-deletion for how the garbage collector interacts with this field and enforces the foreground deletion. Defaults to false. To set this field, a user needs "delete" permission of the owner, otherwise 422 (Unprocessable Entity) will be returned.
| `controller`
| `boolean`
@@ -354,26 +284,22 @@ otherwise 422 (Unprocessable Entity) will be returned.
| `kind`
| `string`
| Kind of the referent.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
| Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
| `name`
| `string`
| Name of the referent.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names#names
| Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names#names
| `uid`
| `string`
| UID of the referent.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names#uids
| UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names#uids
|===
=== .spec.template.spec
Description::
+
--
Specification of the desired behavior of the machine.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
Specification of the desired behavior of the machine. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
--
Type::
@@ -388,27 +314,15 @@ Type::
| `lifecycleHooks`
| `object`
| LifecycleHooks allow users to pause operations on the machine at
certain predefined points within the machine lifecycle.
| LifecycleHooks allow users to pause operations on the machine at certain predefined points within the machine lifecycle.
| `metadata`
| `object`
| ObjectMeta will autopopulate the Node created. Use this to
indicate what labels, annotations, name prefix, etc., should be used
when creating the Node.
| ObjectMeta will autopopulate the Node created. Use this to indicate what labels, annotations, name prefix, etc., should be used when creating the Node.
| `providerID`
| `string`
| ProviderID is the identification ID of the machine provided by the provider.
This field must match the provider ID as seen on the node object corresponding to this machine.
This field is required by higher level consumers of cluster-api. Example use case is cluster autoscaler
with cluster-api as provider. Clean-up logic in the autoscaler compares machines to nodes to find out
machines at provider which could not get registered as Kubernetes nodes. With cluster-api as a
generic out-of-tree provider for autoscaler, this field is required by autoscaler to be
able to have a provider view of the list of machines. Another list of nodes is queried from the k8s apiserver
and then a comparison is done to find out unregistered machines and are marked for delete.
This field will be set by the actuators and consumed by higher level entities like autoscaler that will
be interfacing with cluster-api as generic provider.
| ProviderID is the identification ID of the machine provided by the provider. This field must match the provider ID as seen on the node object corresponding to this machine. This field is required by higher level consumers of cluster-api. Example use case is cluster autoscaler with cluster-api as provider. Clean-up logic in the autoscaler compares machines to nodes to find out machines at provider which could not get registered as Kubernetes nodes. With cluster-api as a generic out-of-tree provider for autoscaler, this field is required by autoscaler to be able to have a provider view of the list of machines. Another list of nodes is queried from the k8s apiserver and then a comparison is done to find out unregistered machines and are marked for delete. This field will be set by the actuators and consumed by higher level entities like autoscaler that will be interfacing with cluster-api as generic provider.
| `providerSpec`
| `object`
@@ -416,25 +330,18 @@ be interfacing with cluster-api as generic provider.
| `taints`
| `array`
| The list of the taints to be applied to the corresponding Node in additive
manner. This list will not overwrite any other taints added to the Node on
an ongoing basis by other entities. These taints should be actively reconciled
e.g. if you ask the machine controller to apply a taint and then manually remove
the taint the machine controller will put it back) but not have the machine controller
remove any taints
| The list of the taints to be applied to the corresponding Node in additive manner. This list will not overwrite any other taints added to the Node on an ongoing basis by other entities. These taints should be actively reconciled e.g. if you ask the machine controller to apply a taint and then manually remove the taint the machine controller will put it back) but not have the machine controller remove any taints
| `taints[]`
| `object`
| The node this Taint is attached to has the "effect" on
any pod that does not tolerate the Taint.
| The node this Taint is attached to has the "effect" on any pod that does not tolerate the Taint.
|===
=== .spec.template.spec.lifecycleHooks
Description::
+
--
LifecycleHooks allow users to pause operations on the machine at
certain predefined points within the machine lifecycle.
LifecycleHooks allow users to pause operations on the machine at certain predefined points within the machine lifecycle.
--
Type::
@@ -449,8 +356,7 @@ Type::
| `preDrain`
| `array`
| PreDrain hooks prevent the machine from being drained.
This also blocks further lifecycle events, such as termination.
| PreDrain hooks prevent the machine from being drained. This also blocks further lifecycle events, such as termination.
| `preDrain[]`
| `object`
@@ -458,8 +364,7 @@ This also blocks further lifecycle events, such as termination.
| `preTerminate`
| `array`
| PreTerminate hooks prevent the machine from being terminated.
PreTerminate hooks be actioned after the Machine has been drained.
| PreTerminate hooks prevent the machine from being terminated. PreTerminate hooks be actioned after the Machine has been drained.
| `preTerminate[]`
| `object`
@@ -470,8 +375,7 @@ PreTerminate hooks be actioned after the Machine has been drained.
Description::
+
--
PreDrain hooks prevent the machine from being drained.
This also blocks further lifecycle events, such as termination.
PreDrain hooks prevent the machine from being drained. This also blocks further lifecycle events, such as termination.
--
Type::
@@ -502,26 +406,18 @@ Required::
| `name`
| `string`
| Name defines a unique name for the lifcycle hook.
The name should be unique and descriptive, ideally 1-3 words, in CamelCase or
it may be namespaced, eg. foo.example.com/CamelCase.
Names must be unique and should only be managed by a single entity.
| Name defines a unique name for the lifcycle hook. The name should be unique and descriptive, ideally 1-3 words, in CamelCase or it may be namespaced, eg. foo.example.com/CamelCase. Names must be unique and should only be managed by a single entity.
| `owner`
| `string`
| Owner defines the owner of the lifecycle hook.
This should be descriptive enough so that users can identify
who/what is responsible for blocking the lifecycle.
This could be the name of a controller (e.g. clusteroperator/etcd)
or an administrator managing the hook.
| Owner defines the owner of the lifecycle hook. This should be descriptive enough so that users can identify who/what is responsible for blocking the lifecycle. This could be the name of a controller (e.g. clusteroperator/etcd) or an administrator managing the hook.
|===
=== .spec.template.spec.lifecycleHooks.preTerminate
Description::
+
--
PreTerminate hooks prevent the machine from being terminated.
PreTerminate hooks be actioned after the Machine has been drained.
PreTerminate hooks prevent the machine from being terminated. PreTerminate hooks be actioned after the Machine has been drained.
--
Type::
@@ -552,27 +448,18 @@ Required::
| `name`
| `string`
| Name defines a unique name for the lifcycle hook.
The name should be unique and descriptive, ideally 1-3 words, in CamelCase or
it may be namespaced, eg. foo.example.com/CamelCase.
Names must be unique and should only be managed by a single entity.
| Name defines a unique name for the lifcycle hook. The name should be unique and descriptive, ideally 1-3 words, in CamelCase or it may be namespaced, eg. foo.example.com/CamelCase. Names must be unique and should only be managed by a single entity.
| `owner`
| `string`
| Owner defines the owner of the lifecycle hook.
This should be descriptive enough so that users can identify
who/what is responsible for blocking the lifecycle.
This could be the name of a controller (e.g. clusteroperator/etcd)
or an administrator managing the hook.
| Owner defines the owner of the lifecycle hook. This should be descriptive enough so that users can identify who/what is responsible for blocking the lifecycle. This could be the name of a controller (e.g. clusteroperator/etcd) or an administrator managing the hook.
|===
=== .spec.template.spec.metadata
Description::
+
--
ObjectMeta will autopopulate the Node created. Use this to
indicate what labels, annotations, name prefix, etc., should be used
when creating the Node.
ObjectMeta will autopopulate the Node created. Use this to indicate what labels, annotations, name prefix, etc., should be used when creating the Node.
--
Type::
@@ -587,78 +474,41 @@ Type::
| `annotations`
| `object (string)`
| Annotations is an unstructured key value map stored with a resource that may be
set by external tools to store and retrieve arbitrary metadata. They are not
queryable and should be preserved when modifying objects.
More info: http://kubernetes.io/docs/user-guide/annotations
| Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations
| `generateName`
| `string`
| GenerateName is an optional prefix, used by the server, to generate a unique
name ONLY IF the Name field has not been provided.
If this field is used, the name returned to the client will be different
than the name passed. This value will also be combined with a unique suffix.
The provided value has the same validation rules as the Name field,
and may be truncated by the length of the suffix required to make the value
unique on the server.
If this field is specified and the generated name exists, the server will
NOT return a 409 - instead, it will either return 201 Created or 500 with Reason
ServerTimeout indicating a unique name could not be found in the time allotted, and the client
should retry (optionally after the time indicated in the Retry-After header).
Applied only if Name is not specified.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#idempotency
| GenerateName is an optional prefix, used by the server, to generate a unique name ONLY IF the Name field has not been provided. If this field is used, the name returned to the client will be different than the name passed. This value will also be combined with a unique suffix. The provided value has the same validation rules as the Name field, and may be truncated by the length of the suffix required to make the value unique on the server.
If this field is specified and the generated name exists, the server will NOT return a 409 - instead, it will either return 201 Created or 500 with Reason ServerTimeout indicating a unique name could not be found in the time allotted, and the client should retry (optionally after the time indicated in the Retry-After header).
Applied only if Name is not specified. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#idempotency
| `labels`
| `object (string)`
| Map of string keys and values that can be used to organize and categorize
(scope and select) objects. May match selectors of replication controllers
and services.
More info: http://kubernetes.io/docs/user-guide/labels
| Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and services. More info: http://kubernetes.io/docs/user-guide/labels
| `name`
| `string`
| Name must be unique within a namespace. Is required when creating resources, although
some resources may allow a client to request the generation of an appropriate name
automatically. Name is primarily intended for creation idempotence and configuration
definition.
Cannot be updated.
More info: http://kubernetes.io/docs/user-guide/identifiers#names
| Name must be unique within a namespace. Is required when creating resources, although some resources may allow a client to request the generation of an appropriate name automatically. Name is primarily intended for creation idempotence and configuration definition. Cannot be updated. More info: http://kubernetes.io/docs/user-guide/identifiers#names
| `namespace`
| `string`
| Namespace defines the space within each name must be unique. An empty namespace is
equivalent to the "default" namespace, but "default" is the canonical representation.
Not all objects are required to be scoped to a namespace - the value of this field for
those objects will be empty.
Must be a DNS_LABEL.
Cannot be updated.
More info: http://kubernetes.io/docs/user-guide/namespaces
| Namespace defines the space within each name must be unique. An empty namespace is equivalent to the "default" namespace, but "default" is the canonical representation. Not all objects are required to be scoped to a namespace - the value of this field for those objects will be empty.
Must be a DNS_LABEL. Cannot be updated. More info: http://kubernetes.io/docs/user-guide/namespaces
| `ownerReferences`
| `array`
| List of objects depended by this object. If ALL objects in the list have
been deleted, this object will be garbage collected. If this object is managed by a controller,
then an entry in this list will point to this controller, with the controller field set to true.
There cannot be more than one managing controller.
| List of objects depended by this object. If ALL objects in the list have been deleted, this object will be garbage collected. If this object is managed by a controller, then an entry in this list will point to this controller, with the controller field set to true. There cannot be more than one managing controller.
| `ownerReferences[]`
| `object`
| OwnerReference contains enough information to let you identify an owning
object. An owning object must be in the same namespace as the dependent, or
be cluster-scoped, so there is no namespace field.
| OwnerReference contains enough information to let you identify an owning object. An owning object must be in the same namespace as the dependent, or be cluster-scoped, so there is no namespace field.
|===
=== .spec.template.spec.metadata.ownerReferences
Description::
+
--
List of objects depended by this object. If ALL objects in the list have
been deleted, this object will be garbage collected. If this object is managed by a controller,
then an entry in this list will point to this controller, with the controller field set to true.
There cannot be more than one managing controller.
List of objects depended by this object. If ALL objects in the list have been deleted, this object will be garbage collected. If this object is managed by a controller, then an entry in this list will point to this controller, with the controller field set to true. There cannot be more than one managing controller.
--
Type::
@@ -671,9 +521,7 @@ Type::
Description::
+
--
OwnerReference contains enough information to let you identify an owning
object. An owning object must be in the same namespace as the dependent, or
be cluster-scoped, so there is no namespace field.
OwnerReference contains enough information to let you identify an owning object. An owning object must be in the same namespace as the dependent, or be cluster-scoped, so there is no namespace field.
--
Type::
@@ -697,14 +545,7 @@ Required::
| `blockOwnerDeletion`
| `boolean`
| If true, AND if the owner has the "foregroundDeletion" finalizer, then
the owner cannot be deleted from the key-value store until this
reference is removed.
See https://kubernetes.io/docs/concepts/architecture/garbage-collection/#foreground-deletion
for how the garbage collector interacts with this field and enforces the foreground deletion.
Defaults to false.
To set this field, a user needs "delete" permission of the owner,
otherwise 422 (Unprocessable Entity) will be returned.
| If true, AND if the owner has the "foregroundDeletion" finalizer, then the owner cannot be deleted from the key-value store until this reference is removed. See https://kubernetes.io/docs/concepts/architecture/garbage-collection/#foreground-deletion for how the garbage collector interacts with this field and enforces the foreground deletion. Defaults to false. To set this field, a user needs "delete" permission of the owner, otherwise 422 (Unprocessable Entity) will be returned.
| `controller`
| `boolean`
@@ -712,18 +553,15 @@ otherwise 422 (Unprocessable Entity) will be returned.
| `kind`
| `string`
| Kind of the referent.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
| Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
| `name`
| `string`
| Name of the referent.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names#names
| Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names#names
| `uid`
| `string`
| UID of the referent.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names#uids
| UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names#uids
|===
=== .spec.template.spec.providerSpec
@@ -745,22 +583,14 @@ Type::
| `value`
| ``
| Value is an inlined, serialized representation of the resource
configuration. It is recommended that providers maintain their own
versioned API types that should be serialized/deserialized from this
field, akin to component config.
| Value is an inlined, serialized representation of the resource configuration. It is recommended that providers maintain their own versioned API types that should be serialized/deserialized from this field, akin to component config.
|===
=== .spec.template.spec.taints
Description::
+
--
The list of the taints to be applied to the corresponding Node in additive
manner. This list will not overwrite any other taints added to the Node on
an ongoing basis by other entities. These taints should be actively reconciled
e.g. if you ask the machine controller to apply a taint and then manually remove
the taint the machine controller will put it back) but not have the machine controller
remove any taints
The list of the taints to be applied to the corresponding Node in additive manner. This list will not overwrite any other taints added to the Node on an ongoing basis by other entities. These taints should be actively reconciled e.g. if you ask the machine controller to apply a taint and then manually remove the taint the machine controller will put it back) but not have the machine controller remove any taints
--
Type::
@@ -773,8 +603,7 @@ Type::
Description::
+
--
The node this Taint is attached to has the "effect" on
any pod that does not tolerate the Taint.
The node this Taint is attached to has the "effect" on any pod that does not tolerate the Taint.
--
Type::
@@ -792,9 +621,7 @@ Required::
| `effect`
| `string`
| Required. The effect of the taint on pods
that do not tolerate the taint.
Valid effects are NoSchedule, PreferNoSchedule and NoExecute.
| Required. The effect of the taint on pods that do not tolerate the taint. Valid effects are NoSchedule, PreferNoSchedule and NoExecute.
| `key`
| `string`
@@ -802,8 +629,7 @@ Valid effects are NoSchedule, PreferNoSchedule and NoExecute.
| `timeAdded`
| `string`
| TimeAdded represents the time at which the taint was added.
It is only written for NoExecute taints.
| TimeAdded represents the time at which the taint was added. It is only written for NoExecute taints.
| `value`
| `string`
@@ -845,24 +671,9 @@ Type::
| `errorReason`
| `string`
| In the event that there is a terminal problem reconciling the
replicas, both ErrorReason and ErrorMessage will be set. ErrorReason
will be populated with a succinct value suitable for machine
interpretation, while ErrorMessage will contain a more verbose
string suitable for logging and human consumption.
These fields should not be set for transitive errors that a
controller faces that are expected to be fixed automatically over
time (like service outages), but instead indicate that something is
fundamentally wrong with the MachineTemplate's spec or the configuration of
the machine controller, and that manual intervention is required. Examples
of terminal errors would be invalid combinations of settings in the
spec, values that are unsupported by the machine controller, or the
responsible machine controller itself being critically misconfigured.
Any transient errors that occur during the reconciliation of Machines
can be added as events to the MachineSet object and/or logged in the
controller's output.
| In the event that there is a terminal problem reconciling the replicas, both ErrorReason and ErrorMessage will be set. ErrorReason will be populated with a succinct value suitable for machine interpretation, while ErrorMessage will contain a more verbose string suitable for logging and human consumption.
These fields should not be set for transitive errors that a controller faces that are expected to be fixed automatically over time (like service outages), but instead indicate that something is fundamentally wrong with the MachineTemplate's spec or the configuration of the machine controller, and that manual intervention is required. Examples of terminal errors would be invalid combinations of settings in the spec, values that are unsupported by the machine controller, or the responsible machine controller itself being critically misconfigured.
Any transient errors that occur during the reconciliation of Machines can be added as events to the MachineSet object and/or logged in the controller's output.
| `fullyLabeledReplicas`
| `integer`
@@ -905,8 +716,6 @@ Type::
`object`
Required::
- `lastTransitionTime`
- `status`
- `type`
@@ -917,26 +726,19 @@ Required::
| `lastTransitionTime`
| `string`
| Last time the condition transitioned from one status to another.
This should be when the underlying condition changed. If that is not known, then using the time when
the API field changed is acceptable.
| Last time the condition transitioned from one status to another. This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
| `message`
| `string`
| A human readable message indicating details about the transition.
This field may be empty.
| A human readable message indicating details about the transition. This field may be empty.
| `reason`
| `string`
| The reason for the condition's last transition in CamelCase.
The specific API may choose whether or not this field is considered a guaranteed API.
This field may not be empty.
| The reason for the condition's last transition in CamelCase. The specific API may choose whether or not this field is considered a guaranteed API. This field may not be empty.
| `severity`
| `string`
| Severity provides an explicit classification of Reason code, so the users or machines can immediately
understand the current situation and act accordingly.
The Severity field MUST be set only when Status=False.
| Severity provides an explicit classification of Reason code, so the users or machines can immediately understand the current situation and act accordingly. The Severity field MUST be set only when Status=False.
| `status`
| `string`
@@ -944,9 +746,7 @@ The Severity field MUST be set only when Status=False.
| `type`
| `string`
| Type of condition in CamelCase or in foo.example.com/CamelCase.
Many .condition.type values are consistent across resources like Available, but because arbitrary conditions
can be useful (see .node.status.conditions), the ability to deconflict is important.
| Type of condition in CamelCase or in foo.example.com/CamelCase. Many .condition.type values are consistent across resources like Available, but because arbitrary conditions can be useful (see .node.status.conditions), the ability to deconflict is important.
|===

View File

@@ -65,28 +65,20 @@ Type::
| `holderIdentity`
| `string`
| holderIdentity contains the identity of the holder of a current lease. If Coordinated Leader Election is used, the holder identity must be equal to the elected LeaseCandidate.metadata.name field.
| holderIdentity contains the identity of the holder of a current lease.
| `leaseDurationSeconds`
| `integer`
| leaseDurationSeconds is a duration that candidates for a lease need to wait to force acquire it. This is measured against the time of last observed renewTime.
| leaseDurationSeconds is a duration that candidates for a lease need to wait to force acquire it. This is measure against time of last observed renewTime.
| `leaseTransitions`
| `integer`
| leaseTransitions is the number of transitions of a lease between holders.
| `preferredHolder`
| `string`
| PreferredHolder signals to a lease holder that the lease has a more optimal holder and should be given up. This field can only be set if Strategy is also set.
| `renewTime`
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-MicroTime[`MicroTime`]
| renewTime is a time when the current holder of a lease has last updated the lease.
| `strategy`
| `string`
| Strategy indicates the strategy for picking the leader for coordinated leader election. If the field is not specified, there is no active coordination for this lease. (Alpha) Using this field requires the CoordinatedLeaderElection feature gate to be enabled.
|===
== API endpoints

View File

@@ -11,28 +11,11 @@ toc::[]
Description::
+
--
AlertingRule represents a set of user-defined Prometheus rule groups containing
alerting rules. This resource is the supported method for cluster admins to
create alerts based on metrics recorded by the platform monitoring stack in
OpenShift, i.e. the Prometheus instance deployed to the openshift-monitoring
namespace. You might use this to create custom alerting rules not shipped with
OpenShift based on metrics from components such as the node_exporter, which
provides machine-level metrics such as CPU usage, or kube-state-metrics, which
provides metrics on Kubernetes usage.
The API is mostly compatible with the upstream PrometheusRule type from the
prometheus-operator. The primary difference being that recording rules are not
allowed here -- only alerting rules. For each AlertingRule resource created, a
corresponding PrometheusRule will be created in the openshift-monitoring
namespace. OpenShift requires admins to use the AlertingRule resource rather
than the upstream type in order to allow better OpenShift specific defaulting
and validation, while not modifying the upstream APIs directly.
You can find upstream API documentation for PrometheusRule resources here:
https://github.com/prometheus-operator/prometheus-operator/blob/main/Documentation/api.md
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
AlertingRule represents a set of user-defined Prometheus rule groups containing alerting rules. This resource is the supported method for cluster admins to create alerts based on metrics recorded by the platform monitoring stack in OpenShift, i.e. the Prometheus instance deployed to the openshift-monitoring namespace. You might use this to create custom alerting rules not shipped with OpenShift based on metrics from components such as the node_exporter, which provides machine-level metrics such as CPU usage, or kube-state-metrics, which provides metrics on Kubernetes usage.
The API is mostly compatible with the upstream PrometheusRule type from the prometheus-operator. The primary difference being that recording rules are not allowed here -- only alerting rules. For each AlertingRule resource created, a corresponding PrometheusRule will be created in the openshift-monitoring namespace. OpenShift requires admins to use the AlertingRule resource rather than the upstream type in order to allow better OpenShift specific defaulting and validation, while not modifying the upstream APIs directly.
You can find upstream API documentation for PrometheusRule resources here:
https://github.com/prometheus-operator/prometheus-operator/blob/main/Documentation/api.md
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -90,20 +73,8 @@ Required::
| `groups`
| `array`
| groups is a list of grouped alerting rules. Rule groups are the unit at
which Prometheus parallelizes rule processing. All rules in a single group
share a configured evaluation interval. All rules in the group will be
processed together on this interval, sequentially, and all rules will be
processed.
It's common to group related alerting rules into a single AlertingRule
resources, and within that resource, closely related alerts, or simply
alerts with the same interval, into individual groups. You are also free
to create AlertingRule resources with only a single rule group, but be
aware that this can have a performance impact on Prometheus if the group is
extremely large or has very complex query expressions to evaluate.
Spreading very complex rules across multiple groups to allow them to be
processed in parallel is also a common use-case.
| groups is a list of grouped alerting rules. Rule groups are the unit at which Prometheus parallelizes rule processing. All rules in a single group share a configured evaluation interval. All rules in the group will be processed together on this interval, sequentially, and all rules will be processed.
It's common to group related alerting rules into a single AlertingRule resources, and within that resource, closely related alerts, or simply alerts with the same interval, into individual groups. You are also free to create AlertingRule resources with only a single rule group, but be aware that this can have a performance impact on Prometheus if the group is extremely large or has very complex query expressions to evaluate. Spreading very complex rules across multiple groups to allow them to be processed in parallel is also a common use-case.
| `groups[]`
| `object`
@@ -114,20 +85,8 @@ processed in parallel is also a common use-case.
Description::
+
--
groups is a list of grouped alerting rules. Rule groups are the unit at
which Prometheus parallelizes rule processing. All rules in a single group
share a configured evaluation interval. All rules in the group will be
processed together on this interval, sequentially, and all rules will be
processed.
It's common to group related alerting rules into a single AlertingRule
resources, and within that resource, closely related alerts, or simply
alerts with the same interval, into individual groups. You are also free
to create AlertingRule resources with only a single rule group, but be
aware that this can have a performance impact on Prometheus if the group is
extremely large or has very complex query expressions to evaluate.
Spreading very complex rules across multiple groups to allow them to be
processed in parallel is also a common use-case.
groups is a list of grouped alerting rules. Rule groups are the unit at which Prometheus parallelizes rule processing. All rules in a single group share a configured evaluation interval. All rules in the group will be processed together on this interval, sequentially, and all rules will be processed.
It's common to group related alerting rules into a single AlertingRule resources, and within that resource, closely related alerts, or simply alerts with the same interval, into individual groups. You are also free to create AlertingRule resources with only a single rule group, but be aware that this can have a performance impact on Prometheus if the group is extremely large or has very complex query expressions to evaluate. Spreading very complex rules across multiple groups to allow them to be processed in parallel is also a common use-case.
--
Type::
@@ -158,12 +117,7 @@ Required::
| `interval`
| `string`
| interval is how often rules in the group are evaluated. If not specified,
it defaults to the global.evaluation_interval configured in Prometheus,
which itself defaults to 30 seconds. You can check if this value has been
modified from the default on your cluster by inspecting the platform
Prometheus configuration:
The relevant field in that resource is: spec.evaluationInterval
| interval is how often rules in the group are evaluated. If not specified, it defaults to the global.evaluation_interval configured in Prometheus, which itself defaults to 30 seconds. You can check if this value has been modified from the default on your cluster by inspecting the platform Prometheus configuration: The relevant field in that resource is: spec.evaluationInterval
| `name`
| `string`
@@ -171,24 +125,18 @@ The relevant field in that resource is: spec.evaluationInterval
| `rules`
| `array`
| rules is a list of sequentially evaluated alerting rules. Prometheus may
process rule groups in parallel, but rules within a single group are always
processed sequentially, and all rules are processed.
| rules is a list of sequentially evaluated alerting rules. Prometheus may process rule groups in parallel, but rules within a single group are always processed sequentially, and all rules are processed.
| `rules[]`
| `object`
| Rule describes an alerting rule.
See Prometheus documentation:
- https://www.prometheus.io/docs/prometheus/latest/configuration/alerting_rules
| Rule describes an alerting rule. See Prometheus documentation: - https://www.prometheus.io/docs/prometheus/latest/configuration/alerting_rules
|===
=== .spec.groups[].rules
Description::
+
--
rules is a list of sequentially evaluated alerting rules. Prometheus may
process rule groups in parallel, but rules within a single group are always
processed sequentially, and all rules are processed.
rules is a list of sequentially evaluated alerting rules. Prometheus may process rule groups in parallel, but rules within a single group are always processed sequentially, and all rules are processed.
--
Type::
@@ -201,9 +149,7 @@ Type::
Description::
+
--
Rule describes an alerting rule.
See Prometheus documentation:
- https://www.prometheus.io/docs/prometheus/latest/configuration/alerting_rules
Rule describes an alerting rule. See Prometheus documentation: - https://www.prometheus.io/docs/prometheus/latest/configuration/alerting_rules
--
Type::
@@ -221,41 +167,23 @@ Required::
| `alert`
| `string`
| alert is the name of the alert. Must be a valid label value, i.e. may
contain any Unicode character.
| alert is the name of the alert. Must be a valid label value, i.e. may contain any Unicode character.
| `annotations`
| `object (string)`
| annotations to add to each alert. These are values that can be used to
store longer additional information that you won't query on, such as alert
descriptions or runbook links.
| annotations to add to each alert. These are values that can be used to store longer additional information that you won't query on, such as alert descriptions or runbook links.
| `expr`
| `integer-or-string`
| expr is the PromQL expression to evaluate. Every evaluation cycle this is
evaluated at the current time, and all resultant time series become pending
or firing alerts. This is most often a string representing a PromQL
expression, e.g.: mapi_current_pending_csr > mapi_max_pending_csr
In rare cases this could be a simple integer, e.g. a simple "1" if the
intent is to create an alert that is always firing. This is sometimes used
to create an always-firing "Watchdog" alert in order to ensure the alerting
pipeline is functional.
| expr is the PromQL expression to evaluate. Every evaluation cycle this is evaluated at the current time, and all resultant time series become pending or firing alerts. This is most often a string representing a PromQL expression, e.g.: mapi_current_pending_csr > mapi_max_pending_csr In rare cases this could be a simple integer, e.g. a simple "1" if the intent is to create an alert that is always firing. This is sometimes used to create an always-firing "Watchdog" alert in order to ensure the alerting pipeline is functional.
| `for`
| `string`
| for is the time period after which alerts are considered firing after first
returning results. Alerts which have not yet fired for long enough are
considered pending.
| for is the time period after which alerts are considered firing after first returning results. Alerts which have not yet fired for long enough are considered pending.
| `labels`
| `object (string)`
| labels to add or overwrite for each alert. The results of the PromQL
expression for the alert will result in an existing set of labels for the
alert, after evaluating the expression, for any label specified here with
the same name as a label in that set, the label here wins and overwrites
the previous value. These should typically be short identifying values
that may be useful to query against. A common example is the alert
severity, where one sets `severity: warning` under the `labels` key:
| labels to add or overwrite for each alert. The results of the PromQL expression for the alert will result in an existing set of labels for the alert, after evaluating the expression, for any label specified here with the same name as a label in that set, the label here wins and overwrites the previous value. These should typically be short identifying values that may be useful to query against. A common example is the alert severity, where one sets `severity: warning` under the `labels` key:
|===
=== .status
@@ -281,18 +209,14 @@ Type::
| `prometheusRule`
| `object`
| prometheusRule is the generated PrometheusRule for this AlertingRule. Each
AlertingRule instance results in a generated PrometheusRule object in the
same namespace, which is always the openshift-monitoring namespace.
| prometheusRule is the generated PrometheusRule for this AlertingRule. Each AlertingRule instance results in a generated PrometheusRule object in the same namespace, which is always the openshift-monitoring namespace.
|===
=== .status.prometheusRule
Description::
+
--
prometheusRule is the generated PrometheusRule for this AlertingRule. Each
AlertingRule instance results in a generated PrometheusRule object in the
same namespace, which is always the openshift-monitoring namespace.
prometheusRule is the generated PrometheusRule for this AlertingRule. Each AlertingRule instance results in a generated PrometheusRule object in the same namespace, which is always the openshift-monitoring namespace.
--
Type::

View File

@@ -11,9 +11,8 @@ toc::[]
Description::
+
--
AlertRelabelConfig defines a set of relabel configs for alerts.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
AlertRelabelConfig defines a set of relabel configs for alerts.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -75,10 +74,7 @@ Required::
| `configs[]`
| `object`
| RelabelConfig allows dynamic rewriting of label sets for alerts.
See Prometheus documentation:
- https://prometheus.io/docs/prometheus/latest/configuration/configuration/#alert_relabel_configs
- https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config
| RelabelConfig allows dynamic rewriting of label sets for alerts. See Prometheus documentation: - https://prometheus.io/docs/prometheus/latest/configuration/configuration/#alert_relabel_configs - https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config
|===
=== .spec.configs
@@ -98,10 +94,7 @@ Type::
Description::
+
--
RelabelConfig allows dynamic rewriting of label sets for alerts.
See Prometheus documentation:
- https://prometheus.io/docs/prometheus/latest/configuration/configuration/#alert_relabel_configs
- https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config
RelabelConfig allows dynamic rewriting of label sets for alerts. See Prometheus documentation: - https://prometheus.io/docs/prometheus/latest/configuration/configuration/#alert_relabel_configs - https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config
--
Type::
@@ -116,46 +109,31 @@ Type::
| `action`
| `string`
| action to perform based on regex matching. Must be one of: 'Replace', 'Keep',
'Drop', 'HashMod', 'LabelMap', 'LabelDrop', or 'LabelKeep'. Default is: 'Replace'
| action to perform based on regex matching. Must be one of: 'Replace', 'Keep', 'Drop', 'HashMod', 'LabelMap', 'LabelDrop', or 'LabelKeep'. Default is: 'Replace'
| `modulus`
| `integer`
| modulus to take of the hash of the source label values. This can be
combined with the 'HashMod' action to set 'target_label' to the 'modulus'
of a hash of the concatenated 'source_labels'. This is only valid if
sourceLabels is not empty and action is not 'LabelKeep' or 'LabelDrop'.
| modulus to take of the hash of the source label values. This can be combined with the 'HashMod' action to set 'target_label' to the 'modulus' of a hash of the concatenated 'source_labels'. This is only valid if sourceLabels is not empty and action is not 'LabelKeep' or 'LabelDrop'.
| `regex`
| `string`
| regex against which the extracted value is matched. Default is: '(.*)'
regex is required for all actions except 'HashMod'
| regex against which the extracted value is matched. Default is: '(.*)' regex is required for all actions except 'HashMod'
| `replacement`
| `string`
| replacement value against which a regex replace is performed if the regular
expression matches. This is required if the action is 'Replace' or
'LabelMap' and forbidden for actions 'LabelKeep' and 'LabelDrop'.
Regex capture groups are available. Default is: '$1'
| replacement value against which a regex replace is performed if the regular expression matches. This is required if the action is 'Replace' or 'LabelMap' and forbidden for actions 'LabelKeep' and 'LabelDrop'. Regex capture groups are available. Default is: '$1'
| `separator`
| `string`
| separator placed between concatenated source label values. When omitted,
Prometheus will use its default value of ';'.
| separator placed between concatenated source label values. When omitted, Prometheus will use its default value of ';'.
| `sourceLabels`
| `array (string)`
| sourceLabels select values from existing labels. Their content is
concatenated using the configured separator and matched against the
configured regular expression for the 'Replace', 'Keep', and 'Drop' actions.
Not allowed for actions 'LabelKeep' and 'LabelDrop'.
| sourceLabels select values from existing labels. Their content is concatenated using the configured separator and matched against the configured regular expression for the 'Replace', 'Keep', and 'Drop' actions. Not allowed for actions 'LabelKeep' and 'LabelDrop'.
| `targetLabel`
| `string`
| targetLabel to which the resulting value is written in a 'Replace' action.
It is required for 'Replace' and 'HashMod' actions and forbidden for
actions 'LabelKeep' and 'LabelDrop'. Regex capture groups
are available.
| targetLabel to which the resulting value is written in a 'Replace' action. It is required for 'Replace' and 'HashMod' actions and forbidden for actions 'LabelKeep' and 'LabelDrop'. Regex capture groups are available.
|===
=== .status
@@ -177,20 +155,20 @@ Type::
| `conditions`
| `array`
| conditions contains details on the state of the AlertRelabelConfig, may be
empty.
| conditions contains details on the state of the AlertRelabelConfig, may be empty.
| `conditions[]`
| `object`
| Condition contains details for one aspect of the current state of this API Resource.
| Condition contains details for one aspect of the current state of this API Resource. --- This struct is intended for direct use as an array at the field path .status.conditions. For example,
type FooStatus struct{ // Represents the observations of a foo's current state. // Known .status.conditions.type are: "Available", "Progressing", and "Degraded" // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"`
// other fields }
|===
=== .status.conditions
Description::
+
--
conditions contains details on the state of the AlertRelabelConfig, may be
empty.
conditions contains details on the state of the AlertRelabelConfig, may be empty.
--
Type::
@@ -203,7 +181,9 @@ Type::
Description::
+
--
Condition contains details for one aspect of the current state of this API Resource.
Condition contains details for one aspect of the current state of this API Resource. --- This struct is intended for direct use as an array at the field path .status.conditions. For example,
type FooStatus struct{ // Represents the observations of a foo's current state. // Known .status.conditions.type are: "Available", "Progressing", and "Degraded" // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"`
// other fields }
--
Type::
@@ -224,27 +204,19 @@ Required::
| `lastTransitionTime`
| `string`
| lastTransitionTime is the last time the condition transitioned from one status to another.
This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
| lastTransitionTime is the last time the condition transitioned from one status to another. This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
| `message`
| `string`
| message is a human readable message indicating details about the transition.
This may be an empty string.
| message is a human readable message indicating details about the transition. This may be an empty string.
| `observedGeneration`
| `integer`
| observedGeneration represents the .metadata.generation that the condition was set based upon.
For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date
with respect to the current state of the instance.
| observedGeneration represents the .metadata.generation that the condition was set based upon. For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date with respect to the current state of the instance.
| `reason`
| `string`
| reason contains a programmatic identifier indicating the reason for the condition's last transition.
Producers of specific condition types may define expected values and meanings for this field,
and whether the values are considered a guaranteed API.
The value should be a CamelCase string.
This field may not be empty.
| reason contains a programmatic identifier indicating the reason for the condition's last transition. Producers of specific condition types may define expected values and meanings for this field, and whether the values are considered a guaranteed API. The value should be a CamelCase string. This field may not be empty.
| `status`
| `string`
@@ -252,7 +224,7 @@ This field may not be empty.
| `type`
| `string`
| type of condition in CamelCase or in foo.example.com/CamelCase.
| type of condition in CamelCase or in foo.example.com/CamelCase. --- Many .condition.type values are consistent across resources like Available, but because arbitrary conditions can be useful (see .node.status.conditions), the ability to deconflict is important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
|===

View File

@@ -12,11 +12,7 @@ toc::[]
Description::
+
--
The `Alertmanager` custom resource definition (CRD) defines a desired [Alertmanager](https://prometheus.io/docs/alerting) setup to run in a Kubernetes cluster. It allows to specify many options such as the number of replicas, persistent storage and many more.
For each `Alertmanager` resource, the Operator deploys a `StatefulSet` in the same namespace. When there are two or more configured replicas, the Operator runs the Alertmanager instances in high-availability mode.
The resource defines via label and namespace selectors which `AlertmanagerConfig` objects should be associated to the deployed Alertmanager instances.
Alertmanager describes an Alertmanager cluster.
--
Type::
@@ -27,9 +23,8 @@ Type::
Description::
+
--
The `AlertmanagerConfig` custom resource definition (CRD) defines how `Alertmanager` objects process Prometheus alerts. It allows to specify alert grouping and routing, notification receivers and inhibition rules.
`Alertmanager` objects select `AlertmanagerConfig` objects using label and namespace selectors.
AlertmanagerConfig configures the Prometheus Alertmanager,
specifying how alerts should be grouped, inhibited and notified to external systems.
--
Type::
@@ -40,9 +35,8 @@ Type::
Description::
+
--
AlertRelabelConfig defines a set of relabel configs for alerts.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
AlertRelabelConfig defines a set of relabel configs for alerts.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -53,28 +47,11 @@ Type::
Description::
+
--
AlertingRule represents a set of user-defined Prometheus rule groups containing
alerting rules. This resource is the supported method for cluster admins to
create alerts based on metrics recorded by the platform monitoring stack in
OpenShift, i.e. the Prometheus instance deployed to the openshift-monitoring
namespace. You might use this to create custom alerting rules not shipped with
OpenShift based on metrics from components such as the node_exporter, which
provides machine-level metrics such as CPU usage, or kube-state-metrics, which
provides metrics on Kubernetes usage.
The API is mostly compatible with the upstream PrometheusRule type from the
prometheus-operator. The primary difference being that recording rules are not
allowed here -- only alerting rules. For each AlertingRule resource created, a
corresponding PrometheusRule will be created in the openshift-monitoring
namespace. OpenShift requires admins to use the AlertingRule resource rather
than the upstream type in order to allow better OpenShift specific defaulting
and validation, while not modifying the upstream APIs directly.
You can find upstream API documentation for PrometheusRule resources here:
https://github.com/prometheus-operator/prometheus-operator/blob/main/Documentation/api.md
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
AlertingRule represents a set of user-defined Prometheus rule groups containing alerting rules. This resource is the supported method for cluster admins to create alerts based on metrics recorded by the platform monitoring stack in OpenShift, i.e. the Prometheus instance deployed to the openshift-monitoring namespace. You might use this to create custom alerting rules not shipped with OpenShift based on metrics from components such as the node_exporter, which provides machine-level metrics such as CPU usage, or kube-state-metrics, which provides metrics on Kubernetes usage.
The API is mostly compatible with the upstream PrometheusRule type from the prometheus-operator. The primary difference being that recording rules are not allowed here -- only alerting rules. For each AlertingRule resource created, a corresponding PrometheusRule will be created in the openshift-monitoring namespace. OpenShift requires admins to use the AlertingRule resource rather than the upstream type in order to allow better OpenShift specific defaulting and validation, while not modifying the upstream APIs directly.
You can find upstream API documentation for PrometheusRule resources here:
https://github.com/prometheus-operator/prometheus-operator/blob/main/Documentation/api.md
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -85,14 +62,7 @@ Type::
Description::
+
--
The `PodMonitor` custom resource definition (CRD) defines how `Prometheus` and `PrometheusAgent` can scrape metrics from a group of pods.
Among other things, it allows to specify:
* The pods to scrape via label selectors.
* The container ports to scrape.
* Authentication credentials to use.
* Target and metric relabeling.
`Prometheus` and `PrometheusAgent` objects select `PodMonitor` objects using label and namespace selectors.
PodMonitor defines monitoring for a set of pods.
--
Type::
@@ -103,13 +73,7 @@ Type::
Description::
+
--
The `Probe` custom resource definition (CRD) defines how to scrape metrics from prober exporters such as the [blackbox exporter](https://github.com/prometheus/blackbox_exporter).
The `Probe` resource needs 2 pieces of information:
* The list of probed addresses which can be defined statically or by discovering Kubernetes Ingress objects.
* The prober which exposes the availability of probed endpoints (over various protocols such HTTP, TCP, ICMP, ...) as Prometheus metrics.
`Prometheus` and `PrometheusAgent` objects select `Probe` objects using label and namespace selectors.
Probe defines monitoring for a set of static targets or ingresses.
--
Type::
@@ -120,13 +84,7 @@ Type::
Description::
+
--
The `Prometheus` custom resource definition (CRD) defines a desired [Prometheus](https://prometheus.io/docs/prometheus) setup to run in a Kubernetes cluster. It allows to specify many options such as the number of replicas, persistent storage, and Alertmanagers where firing alerts should be sent and many more.
For each `Prometheus` resource, the Operator deploys one or several `StatefulSet` objects in the same namespace. The number of StatefulSets is equal to the number of shards which is 1 by default.
The resource defines via label and namespace selectors which `ServiceMonitor`, `PodMonitor`, `Probe` and `PrometheusRule` objects should be associated to the deployed Prometheus instances.
The Operator continuously reconciles the scrape and rules configuration and a sidecar container running in the Prometheus pods triggers a reload of the configuration when needed.
Prometheus defines a Prometheus deployment.
--
Type::
@@ -137,9 +95,7 @@ Type::
Description::
+
--
The `PrometheusRule` custom resource definition (CRD) defines [alerting](https://prometheus.io/docs/prometheus/latest/configuration/alerting_rules/) and [recording](https://prometheus.io/docs/prometheus/latest/configuration/recording_rules/) rules to be evaluated by `Prometheus` or `ThanosRuler` objects.
`Prometheus` and `ThanosRuler` objects select `PrometheusRule` objects using label and namespace selectors.
PrometheusRule defines recording and alerting rules for a Prometheus instance
--
Type::
@@ -150,14 +106,7 @@ Type::
Description::
+
--
The `ServiceMonitor` custom resource definition (CRD) defines how `Prometheus` and `PrometheusAgent` can scrape metrics from a group of services.
Among other things, it allows to specify:
* The services to scrape via label selectors.
* The container ports to scrape.
* Authentication credentials to use.
* Target and metric relabeling.
`Prometheus` and `PrometheusAgent` objects select `ServiceMonitor` objects using label and namespace selectors.
ServiceMonitor defines monitoring for a set of services.
--
Type::
@@ -168,11 +117,7 @@ Type::
Description::
+
--
The `ThanosRuler` custom resource definition (CRD) defines a desired [Thanos Ruler](https://github.com/thanos-io/thanos/blob/main/docs/components/rule.md) setup to run in a Kubernetes cluster.
A `ThanosRuler` instance requires at least one compatible Prometheus API endpoint (either Thanos Querier or Prometheus services).
The resource defines via label and namespace selectors which `PrometheusRule` objects should be associated to the deployed Thanos Ruler instances.
ThanosRuler defines a ThanosRuler deployment.
--
Type::

View File

@@ -38,7 +38,7 @@ Required::
| Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
| `metadata`
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-ObjectMeta[`ObjectMeta`]
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-ObjectMeta_v2[`ObjectMeta_v2`]
| Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
| `timestamp`

View File

@@ -46,7 +46,7 @@ Required::
| Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
| `metadata`
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-ObjectMeta[`ObjectMeta`]
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-ObjectMeta_v2[`ObjectMeta_v2`]
| Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
| `timestamp`

View File

@@ -11,14 +11,7 @@ toc::[]
Description::
+
--
The `PodMonitor` custom resource definition (CRD) defines how `Prometheus` and `PrometheusAgent` can scrape metrics from a group of pods.
Among other things, it allows to specify:
* The pods to scrape via label selectors.
* The container ports to scrape.
* Authentication credentials to use.
* Target and metric relabeling.
`Prometheus` and `PrometheusAgent` objects select `PodMonitor` objects using label and namespace selectors.
PodMonitor defines monitoring for a set of pods.
--
Type::
@@ -75,13 +68,15 @@ Required::
| `attachMetadata` defines additional metadata which is added to the
discovered targets.
It requires Prometheus >= v2.35.0.
It requires Prometheus >= v2.37.0.
| `bodySizeLimit`
| `string`
| When defined, bodySizeLimit specifies a job level limit on the size
of uncompressed response body that will be accepted by Prometheus.
It requires Prometheus >= v2.28.0.
| `jobLabel`
@@ -90,10 +85,12 @@ It requires Prometheus >= v2.28.0.
`jobLabel` selects the label from the associated Kubernetes `Pod`
object which will be used as the `job` label for all metrics.
For example if `jobLabel` is set to `foo` and the Kubernetes `Pod`
object is labeled with `foo: bar`, then Prometheus adds the `job="bar"`
label to all ingested metrics.
If the value of this field is empty, the `job` label of the metrics
defaults to the namespace and name of the PodMonitor object (e.g. `<namespace>/<name>`).
@@ -102,46 +99,38 @@ defaults to the namespace and name of the PodMonitor object (e.g. `<namespace>/<
| Per-scrape limit on the number of targets dropped by relabeling
that will be kept in memory. 0 means no limit.
It requires Prometheus >= v2.47.0.
| `labelLimit`
| `integer`
| Per-scrape limit on number of labels that will be accepted for a sample.
It requires Prometheus >= v2.27.0.
| `labelNameLengthLimit`
| `integer`
| Per-scrape limit on length of labels name that will be accepted for a sample.
It requires Prometheus >= v2.27.0.
| `labelValueLengthLimit`
| `integer`
| Per-scrape limit on length of labels value that will be accepted for a sample.
It requires Prometheus >= v2.27.0.
| `namespaceSelector`
| `object`
| `namespaceSelector` defines in which namespace(s) Prometheus should discover the pods.
By default, the pods are discovered in the same namespace as the `PodMonitor` object but it is possible to select pods across different/all namespaces.
| `nativeHistogramBucketLimit`
| `integer`
| If there are more than this many buckets in a native histogram,
buckets will be merged to stay within the limit.
It requires Prometheus >= v2.45.0.
| `nativeHistogramMinBucketFactor`
| `integer-or-string`
| If the growth factor of one bucket to the next is smaller than this,
buckets will be merged to increase the factor sufficiently.
It requires Prometheus >= v2.50.0.
| Selector to select which namespaces the Kubernetes `Pods` objects
are discovered from.
| `podMetricsEndpoints`
| `array`
| Defines how to scrape metrics from the selected pods.
| List of endpoints part of this PodMonitor.
| `podMetricsEndpoints[]`
| `object`
@@ -162,23 +151,20 @@ that will be accepted.
| `string`
| The scrape class to apply.
| `scrapeClassicHistograms`
| `boolean`
| Whether to scrape a classic histogram that is also exposed as a native histogram.
It requires Prometheus >= v2.45.0.
| `scrapeProtocols`
| `array (string)`
| `scrapeProtocols` defines the protocols to negotiate during a scrape. It tells clients the
protocols supported by Prometheus in order of preference (from most to least preferred).
If unset, Prometheus uses its default value.
It requires Prometheus >= v2.49.0.
| `selector`
| `object`
| Label selector to select the Kubernetes `Pod` objects to scrape metrics from.
| Label selector to select the Kubernetes `Pod` objects.
| `targetLimit`
| `integer`
@@ -193,7 +179,8 @@ Description::
`attachMetadata` defines additional metadata which is added to the
discovered targets.
It requires Prometheus >= v2.35.0.
It requires Prometheus >= v2.37.0.
--
Type::
@@ -208,19 +195,16 @@ Type::
| `node`
| `boolean`
| When set to true, Prometheus attaches node metadata to the discovered
targets.
The Prometheus service account must have the `list` and `watch`
permissions on the `Nodes` objects.
| When set to true, Prometheus must have the `get` permission on the
`Nodes` objects.
|===
=== .spec.namespaceSelector
Description::
+
--
`namespaceSelector` defines in which namespace(s) Prometheus should discover the pods.
By default, the pods are discovered in the same namespace as the `PodMonitor` object but it is possible to select pods across different/all namespaces.
Selector to select which namespaces the Kubernetes `Pods` objects
are discovered from.
--
Type::
@@ -247,7 +231,7 @@ list restricting them.
Description::
+
--
Defines how to scrape metrics from the selected pods.
List of endpoints part of this PodMonitor.
--
Type::
@@ -279,6 +263,7 @@ Type::
| `authorization` configures the Authorization header credentials to use when
scraping the target.
Cannot be set at the same time as `basicAuth`, or `oauth2`.
| `basicAuth`
@@ -286,6 +271,7 @@ Cannot be set at the same time as `basicAuth`, or `oauth2`.
| `basicAuth` configures the Basic Authentication credentials to use when
scraping the target.
Cannot be set at the same time as `authorization`, or `oauth2`.
| `bearerTokenSecret`
@@ -294,6 +280,7 @@ Cannot be set at the same time as `authorization`, or `oauth2`.
token for scraping targets. The secret needs to be in the same namespace
as the PodMonitor object and readable by the Prometheus Operator.
Deprecated: use `authorization` instead.
| `enableHttp2`
@@ -305,8 +292,10 @@ Deprecated: use `authorization` instead.
| When true, the pods which are not running (e.g. either in Failed or
Succeeded state) are dropped during the target discovery.
If unset, the filtering is enabled.
More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#pod-phase
| `followRedirects`
@@ -328,6 +317,7 @@ when exposed by the target.
| `string`
| Interval at which Prometheus scrapes the metrics from the target.
If empty, Prometheus uses the global scrape interval.
| `metricRelabelings`
@@ -340,14 +330,17 @@ samples before ingestion.
| RelabelConfig allows dynamic rewriting of the label set for targets, alerts,
scraped samples and remote write samples.
More info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config
| `oauth2`
| `object`
| `oauth2` configures the OAuth2 settings to use when scraping the target.
It requires Prometheus >= 2.27.0.
Cannot be set at the same time as `authorization`, or `basicAuth`.
| `params`
@@ -362,12 +355,14 @@ Cannot be set at the same time as `authorization`, or `basicAuth`.
| `string`
| HTTP path from which to scrape for metrics.
If empty, Prometheus uses the default value (e.g. `/metrics`).
| `port`
| `string`
| Name of the Pod port which this endpoint refers to.
It takes precedence over `targetPort`.
| `proxyUrl`
@@ -380,10 +375,13 @@ It takes precedence over `targetPort`.
| `relabelings` configures the relabeling rules to apply the target's
metadata labels.
The Operator automatically adds relabelings for a few standard Kubernetes fields.
The original scrape job's name is available via the `__tmp_prometheus_job_name` label.
More info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config
| `relabelings[]`
@@ -391,21 +389,25 @@ More info: https://prometheus.io/docs/prometheus/latest/configuration/configurat
| RelabelConfig allows dynamic rewriting of the label set for targets, alerts,
scraped samples and remote write samples.
More info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config
| `scheme`
| `string`
| HTTP scheme to use for scraping.
`http` and `https` are the expected values unless you rewrite the
`__scheme__` label via relabeling.
If empty, Prometheus uses the default value `http`.
| `scrapeTimeout`
| `string`
| Timeout after which Prometheus considers the scrape to be failed.
If empty, Prometheus uses the global scrape timeout unless it is less
than the target's scrape interval value in which the latter is used.
@@ -414,6 +416,7 @@ than the target's scrape interval value in which the latter is used.
| Name or number of the target port of the `Pod` object behind the Service, the
port must be specified with container port property.
Deprecated: use 'port' instead.
| `tlsConfig`
@@ -426,6 +429,7 @@ Deprecated: use 'port' instead.
the metrics that have an explicit timestamp present in scraped data.
Has no effect if `honorTimestamps` is false.
It requires Prometheus >= v2.48.0.
|===
@@ -436,6 +440,7 @@ Description::
`authorization` configures the Authorization header credentials to use when
scraping the target.
Cannot be set at the same time as `basicAuth`, or `oauth2`.
--
@@ -457,8 +462,10 @@ Type::
| `string`
| Defines the authentication type. The value is case-insensitive.
"Basic" is not a supported value.
Default: "Bearer"
|===
@@ -491,7 +498,9 @@ Required::
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
TODO: Add other useful fields. apiVersion, kind, uid?
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896.
| `optional`
| `boolean`
@@ -505,6 +514,7 @@ Description::
`basicAuth` configures the Basic Authentication credentials to use when
scraping the target.
Cannot be set at the same time as `authorization`, or `oauth2`.
--
@@ -559,7 +569,9 @@ Required::
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
TODO: Add other useful fields. apiVersion, kind, uid?
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896.
| `optional`
| `boolean`
@@ -596,7 +608,9 @@ Required::
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
TODO: Add other useful fields. apiVersion, kind, uid?
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896.
| `optional`
| `boolean`
@@ -611,6 +625,7 @@ Description::
token for scraping targets. The secret needs to be in the same namespace
as the PodMonitor object and readable by the Prometheus Operator.
Deprecated: use `authorization` instead.
--
@@ -636,7 +651,9 @@ Required::
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
TODO: Add other useful fields. apiVersion, kind, uid?
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896.
| `optional`
| `boolean`
@@ -664,6 +681,7 @@ Description::
RelabelConfig allows dynamic rewriting of the label set for targets, alerts,
scraped samples and remote write samples.
More info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config
--
@@ -681,15 +699,18 @@ Type::
| `string`
| Action to perform based on the regex matching.
`Uppercase` and `Lowercase` actions require Prometheus >= v2.36.0.
`DropEqual` and `KeepEqual` actions require Prometheus >= v2.41.0.
Default: "Replace"
| `modulus`
| `integer`
| Modulus to take of the hash of the source label values.
Only applicable when the action is `HashMod`.
| `regex`
@@ -701,6 +722,7 @@ Only applicable when the action is `HashMod`.
| Replacement value against which a Replace action is performed if the
regular expression matches.
Regex capture groups are available.
| `separator`
@@ -717,9 +739,11 @@ configured regular expression.
| `string`
| Label to which the resulting string is written in a replacement.
It is mandatory for `Replace`, `HashMod`, `Lowercase`, `Uppercase`,
`KeepEqual` and `DropEqual` actions.
Regex capture groups are available.
|===
@@ -729,8 +753,10 @@ Description::
--
`oauth2` configures the OAuth2 settings to use when scraping the target.
It requires Prometheus >= 2.27.0.
Cannot be set at the same time as `authorization`, or `basicAuth`.
--
@@ -763,48 +789,10 @@ client's secret.
| `endpointParams` configures the HTTP parameters to append to the token
URL.
| `noProxy`
| `string`
| `noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names
that should be excluded from proxying. IP and domain names can
contain port numbers.
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
| `proxyConnectHeader`
| `object`
| ProxyConnectHeader optionally specifies headers to send to
proxies during CONNECT requests.
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
| `proxyConnectHeader{}`
| `array`
|
| `proxyConnectHeader{}[]`
| `object`
| SecretKeySelector selects a key of a Secret.
| `proxyFromEnvironment`
| `boolean`
| Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
| `proxyUrl`
| `string`
| `proxyURL` defines the HTTP proxy server to use.
| `scopes`
| `array (string)`
| `scopes` defines the OAuth2 scopes used for the token request.
| `tlsConfig`
| `object`
| TLS configuration to use when connecting to the OAuth2 server.
It requires Prometheus >= v2.43.0.
| `tokenUrl`
| `string`
| `tokenURL` configures the URL to fetch the token from.
@@ -866,7 +854,9 @@ Required::
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
TODO: Add other useful fields. apiVersion, kind, uid?
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896.
| `optional`
| `boolean`
@@ -902,7 +892,9 @@ Required::
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
TODO: Add other useful fields. apiVersion, kind, uid?
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896.
| `optional`
| `boolean`
@@ -939,355 +931,9 @@ Required::
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
TODO: Add other useful fields. apiVersion, kind, uid?
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
| `optional`
| `boolean`
| Specify whether the Secret or its key must be defined
|===
=== .spec.podMetricsEndpoints[].oauth2.proxyConnectHeader
Description::
+
--
ProxyConnectHeader optionally specifies headers to send to
proxies during CONNECT requests.
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
--
Type::
`object`
=== .spec.podMetricsEndpoints[].oauth2.proxyConnectHeader{}
Description::
+
--
--
Type::
`array`
=== .spec.podMetricsEndpoints[].oauth2.proxyConnectHeader{}[]
Description::
+
--
SecretKeySelector selects a key of a Secret.
--
Type::
`object`
Required::
- `key`
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `key`
| `string`
| The key of the secret to select from. Must be a valid secret key.
| `name`
| `string`
| Name of the referent.
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
| `optional`
| `boolean`
| Specify whether the Secret or its key must be defined
|===
=== .spec.podMetricsEndpoints[].oauth2.tlsConfig
Description::
+
--
TLS configuration to use when connecting to the OAuth2 server.
It requires Prometheus >= v2.43.0.
--
Type::
`object`
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `ca`
| `object`
| Certificate authority used when verifying server certificates.
| `cert`
| `object`
| Client certificate to present when doing client-authentication.
| `insecureSkipVerify`
| `boolean`
| Disable target certificate validation.
| `keySecret`
| `object`
| Secret containing the client key file for the targets.
| `maxVersion`
| `string`
| Maximum acceptable TLS version.
It requires Prometheus >= v2.41.0.
| `minVersion`
| `string`
| Minimum acceptable TLS version.
It requires Prometheus >= v2.35.0.
| `serverName`
| `string`
| Used to verify the hostname for the targets.
|===
=== .spec.podMetricsEndpoints[].oauth2.tlsConfig.ca
Description::
+
--
Certificate authority used when verifying server certificates.
--
Type::
`object`
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `configMap`
| `object`
| ConfigMap containing data to use for the targets.
| `secret`
| `object`
| Secret containing data to use for the targets.
|===
=== .spec.podMetricsEndpoints[].oauth2.tlsConfig.ca.configMap
Description::
+
--
ConfigMap containing data to use for the targets.
--
Type::
`object`
Required::
- `key`
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `key`
| `string`
| The key to select.
| `name`
| `string`
| Name of the referent.
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
| `optional`
| `boolean`
| Specify whether the ConfigMap or its key must be defined
|===
=== .spec.podMetricsEndpoints[].oauth2.tlsConfig.ca.secret
Description::
+
--
Secret containing data to use for the targets.
--
Type::
`object`
Required::
- `key`
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `key`
| `string`
| The key of the secret to select from. Must be a valid secret key.
| `name`
| `string`
| Name of the referent.
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
| `optional`
| `boolean`
| Specify whether the Secret or its key must be defined
|===
=== .spec.podMetricsEndpoints[].oauth2.tlsConfig.cert
Description::
+
--
Client certificate to present when doing client-authentication.
--
Type::
`object`
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `configMap`
| `object`
| ConfigMap containing data to use for the targets.
| `secret`
| `object`
| Secret containing data to use for the targets.
|===
=== .spec.podMetricsEndpoints[].oauth2.tlsConfig.cert.configMap
Description::
+
--
ConfigMap containing data to use for the targets.
--
Type::
`object`
Required::
- `key`
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `key`
| `string`
| The key to select.
| `name`
| `string`
| Name of the referent.
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
| `optional`
| `boolean`
| Specify whether the ConfigMap or its key must be defined
|===
=== .spec.podMetricsEndpoints[].oauth2.tlsConfig.cert.secret
Description::
+
--
Secret containing data to use for the targets.
--
Type::
`object`
Required::
- `key`
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `key`
| `string`
| The key of the secret to select from. Must be a valid secret key.
| `name`
| `string`
| Name of the referent.
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
| `optional`
| `boolean`
| Specify whether the Secret or its key must be defined
|===
=== .spec.podMetricsEndpoints[].oauth2.tlsConfig.keySecret
Description::
+
--
Secret containing the client key file for the targets.
--
Type::
`object`
Required::
- `key`
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `key`
| `string`
| The key of the secret to select from. Must be a valid secret key.
| `name`
| `string`
| Name of the referent.
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896.
| `optional`
| `boolean`
@@ -1314,10 +960,13 @@ Description::
`relabelings` configures the relabeling rules to apply the target's
metadata labels.
The Operator automatically adds relabelings for a few standard Kubernetes fields.
The original scrape job's name is available via the `__tmp_prometheus_job_name` label.
More info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config
--
@@ -1334,6 +983,7 @@ Description::
RelabelConfig allows dynamic rewriting of the label set for targets, alerts,
scraped samples and remote write samples.
More info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config
--
@@ -1351,15 +1001,18 @@ Type::
| `string`
| Action to perform based on the regex matching.
`Uppercase` and `Lowercase` actions require Prometheus >= v2.36.0.
`DropEqual` and `KeepEqual` actions require Prometheus >= v2.41.0.
Default: "Replace"
| `modulus`
| `integer`
| Modulus to take of the hash of the source label values.
Only applicable when the action is `HashMod`.
| `regex`
@@ -1371,6 +1024,7 @@ Only applicable when the action is `HashMod`.
| Replacement value against which a Replace action is performed if the
regular expression matches.
Regex capture groups are available.
| `separator`
@@ -1387,9 +1041,11 @@ configured regular expression.
| `string`
| Label to which the resulting string is written in a replacement.
It is mandatory for `Replace`, `HashMod`, `Lowercase`, `Uppercase`,
`KeepEqual` and `DropEqual` actions.
Regex capture groups are available.
|===
@@ -1426,18 +1082,6 @@ Type::
| `object`
| Secret containing the client key file for the targets.
| `maxVersion`
| `string`
| Maximum acceptable TLS version.
It requires Prometheus >= v2.41.0.
| `minVersion`
| `string`
| Minimum acceptable TLS version.
It requires Prometheus >= v2.35.0.
| `serverName`
| `string`
| Used to verify the hostname for the targets.
@@ -1498,7 +1142,9 @@ Required::
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
TODO: Add other useful fields. apiVersion, kind, uid?
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896.
| `optional`
| `boolean`
@@ -1534,7 +1180,9 @@ Required::
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
TODO: Add other useful fields. apiVersion, kind, uid?
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896.
| `optional`
| `boolean`
@@ -1596,7 +1244,9 @@ Required::
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
TODO: Add other useful fields. apiVersion, kind, uid?
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896.
| `optional`
| `boolean`
@@ -1632,7 +1282,9 @@ Required::
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
TODO: Add other useful fields. apiVersion, kind, uid?
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896.
| `optional`
| `boolean`
@@ -1668,7 +1320,9 @@ Required::
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
TODO: Add other useful fields. apiVersion, kind, uid?
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896.
| `optional`
| `boolean`
@@ -1679,7 +1333,7 @@ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/nam
Description::
+
--
Label selector to select the Kubernetes `Pod` objects to scrape metrics from.
Label selector to select the Kubernetes `Pod` objects.
--
Type::

View File

@@ -11,13 +11,7 @@ toc::[]
Description::
+
--
The `Probe` custom resource definition (CRD) defines how to scrape metrics from prober exporters such as the [blackbox exporter](https://github.com/prometheus/blackbox_exporter).
The `Probe` resource needs 2 pieces of information:
* The list of probed addresses which can be defined statically or by discovering Kubernetes Ingress objects.
* The prober which exposes the availability of probed endpoints (over various protocols such HTTP, TCP, ICMP, ...) as Prometheus metrics.
`Prometheus` and `PrometheusAgent` objects select `Probe` objects using label and namespace selectors.
Probe defines monitoring for a set of static targets or ingresses.
--
Type::
@@ -96,6 +90,7 @@ If not specified Prometheus' global scrape interval is used.
| Per-scrape limit on the number of targets dropped by relabeling
that will be kept in memory. 0 means no limit.
It requires Prometheus >= v2.47.0.
| `labelLimit`
@@ -122,6 +117,7 @@ Only valid in Prometheus versions 2.27.0 and newer.
| RelabelConfig allows dynamic rewriting of the label set for targets, alerts,
scraped samples and remote write samples.
More info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config
| `module`
@@ -130,18 +126,6 @@ More info: https://prometheus.io/docs/prometheus/latest/configuration/configurat
Example module configuring in the blackbox exporter:
https://github.com/prometheus/blackbox_exporter/blob/master/example.yml
| `nativeHistogramBucketLimit`
| `integer`
| If there are more than this many buckets in a native histogram,
buckets will be merged to stay within the limit.
It requires Prometheus >= v2.45.0.
| `nativeHistogramMinBucketFactor`
| `integer-or-string`
| If the growth factor of one bucket to the next is smaller than this,
buckets will be merged to increase the factor sufficiently.
It requires Prometheus >= v2.50.0.
| `oauth2`
| `object`
| OAuth2 for the URL. Only valid in Prometheus versions 2.27.0 and newer.
@@ -159,18 +143,15 @@ The prober.URL parameter is required. Targets cannot be probed if left empty.
| `string`
| The scrape class to apply.
| `scrapeClassicHistograms`
| `boolean`
| Whether to scrape a classic histogram that is also exposed as a native histogram.
It requires Prometheus >= v2.45.0.
| `scrapeProtocols`
| `array (string)`
| `scrapeProtocols` defines the protocols to negotiate during a scrape. It tells clients the
protocols supported by Prometheus in order of preference (from most to least preferred).
If unset, Prometheus uses its default value.
It requires Prometheus >= v2.49.0.
| `scrapeTimeout`
@@ -216,8 +197,10 @@ Type::
| `string`
| Defines the authentication type. The value is case-insensitive.
"Basic" is not a supported value.
Default: "Bearer"
|===
@@ -250,7 +233,9 @@ Required::
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
TODO: Add other useful fields. apiVersion, kind, uid?
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896.
| `optional`
| `boolean`
@@ -316,7 +301,9 @@ Required::
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
TODO: Add other useful fields. apiVersion, kind, uid?
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896.
| `optional`
| `boolean`
@@ -353,7 +340,9 @@ Required::
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
TODO: Add other useful fields. apiVersion, kind, uid?
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896.
| `optional`
| `boolean`
@@ -391,7 +380,9 @@ Required::
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
TODO: Add other useful fields. apiVersion, kind, uid?
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896.
| `optional`
| `boolean`
@@ -418,6 +409,7 @@ Description::
RelabelConfig allows dynamic rewriting of the label set for targets, alerts,
scraped samples and remote write samples.
More info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config
--
@@ -435,15 +427,18 @@ Type::
| `string`
| Action to perform based on the regex matching.
`Uppercase` and `Lowercase` actions require Prometheus >= v2.36.0.
`DropEqual` and `KeepEqual` actions require Prometheus >= v2.41.0.
Default: "Replace"
| `modulus`
| `integer`
| Modulus to take of the hash of the source label values.
Only applicable when the action is `HashMod`.
| `regex`
@@ -455,6 +450,7 @@ Only applicable when the action is `HashMod`.
| Replacement value against which a Replace action is performed if the
regular expression matches.
Regex capture groups are available.
| `separator`
@@ -471,9 +467,11 @@ configured regular expression.
| `string`
| Label to which the resulting string is written in a replacement.
It is mandatory for `Replace`, `HashMod`, `Lowercase`, `Uppercase`,
`KeepEqual` and `DropEqual` actions.
Regex capture groups are available.
|===
@@ -513,48 +511,10 @@ client's secret.
| `endpointParams` configures the HTTP parameters to append to the token
URL.
| `noProxy`
| `string`
| `noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names
that should be excluded from proxying. IP and domain names can
contain port numbers.
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
| `proxyConnectHeader`
| `object`
| ProxyConnectHeader optionally specifies headers to send to
proxies during CONNECT requests.
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
| `proxyConnectHeader{}`
| `array`
|
| `proxyConnectHeader{}[]`
| `object`
| SecretKeySelector selects a key of a Secret.
| `proxyFromEnvironment`
| `boolean`
| Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
| `proxyUrl`
| `string`
| `proxyURL` defines the HTTP proxy server to use.
| `scopes`
| `array (string)`
| `scopes` defines the OAuth2 scopes used for the token request.
| `tlsConfig`
| `object`
| TLS configuration to use when connecting to the OAuth2 server.
It requires Prometheus >= v2.43.0.
| `tokenUrl`
| `string`
| `tokenURL` configures the URL to fetch the token from.
@@ -616,7 +576,9 @@ Required::
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
TODO: Add other useful fields. apiVersion, kind, uid?
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896.
| `optional`
| `boolean`
@@ -652,7 +614,9 @@ Required::
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
TODO: Add other useful fields. apiVersion, kind, uid?
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896.
| `optional`
| `boolean`
@@ -689,355 +653,9 @@ Required::
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
TODO: Add other useful fields. apiVersion, kind, uid?
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
| `optional`
| `boolean`
| Specify whether the Secret or its key must be defined
|===
=== .spec.oauth2.proxyConnectHeader
Description::
+
--
ProxyConnectHeader optionally specifies headers to send to
proxies during CONNECT requests.
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
--
Type::
`object`
=== .spec.oauth2.proxyConnectHeader{}
Description::
+
--
--
Type::
`array`
=== .spec.oauth2.proxyConnectHeader{}[]
Description::
+
--
SecretKeySelector selects a key of a Secret.
--
Type::
`object`
Required::
- `key`
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `key`
| `string`
| The key of the secret to select from. Must be a valid secret key.
| `name`
| `string`
| Name of the referent.
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
| `optional`
| `boolean`
| Specify whether the Secret or its key must be defined
|===
=== .spec.oauth2.tlsConfig
Description::
+
--
TLS configuration to use when connecting to the OAuth2 server.
It requires Prometheus >= v2.43.0.
--
Type::
`object`
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `ca`
| `object`
| Certificate authority used when verifying server certificates.
| `cert`
| `object`
| Client certificate to present when doing client-authentication.
| `insecureSkipVerify`
| `boolean`
| Disable target certificate validation.
| `keySecret`
| `object`
| Secret containing the client key file for the targets.
| `maxVersion`
| `string`
| Maximum acceptable TLS version.
It requires Prometheus >= v2.41.0.
| `minVersion`
| `string`
| Minimum acceptable TLS version.
It requires Prometheus >= v2.35.0.
| `serverName`
| `string`
| Used to verify the hostname for the targets.
|===
=== .spec.oauth2.tlsConfig.ca
Description::
+
--
Certificate authority used when verifying server certificates.
--
Type::
`object`
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `configMap`
| `object`
| ConfigMap containing data to use for the targets.
| `secret`
| `object`
| Secret containing data to use for the targets.
|===
=== .spec.oauth2.tlsConfig.ca.configMap
Description::
+
--
ConfigMap containing data to use for the targets.
--
Type::
`object`
Required::
- `key`
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `key`
| `string`
| The key to select.
| `name`
| `string`
| Name of the referent.
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
| `optional`
| `boolean`
| Specify whether the ConfigMap or its key must be defined
|===
=== .spec.oauth2.tlsConfig.ca.secret
Description::
+
--
Secret containing data to use for the targets.
--
Type::
`object`
Required::
- `key`
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `key`
| `string`
| The key of the secret to select from. Must be a valid secret key.
| `name`
| `string`
| Name of the referent.
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
| `optional`
| `boolean`
| Specify whether the Secret or its key must be defined
|===
=== .spec.oauth2.tlsConfig.cert
Description::
+
--
Client certificate to present when doing client-authentication.
--
Type::
`object`
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `configMap`
| `object`
| ConfigMap containing data to use for the targets.
| `secret`
| `object`
| Secret containing data to use for the targets.
|===
=== .spec.oauth2.tlsConfig.cert.configMap
Description::
+
--
ConfigMap containing data to use for the targets.
--
Type::
`object`
Required::
- `key`
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `key`
| `string`
| The key to select.
| `name`
| `string`
| Name of the referent.
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
| `optional`
| `boolean`
| Specify whether the ConfigMap or its key must be defined
|===
=== .spec.oauth2.tlsConfig.cert.secret
Description::
+
--
Secret containing data to use for the targets.
--
Type::
`object`
Required::
- `key`
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `key`
| `string`
| The key of the secret to select from. Must be a valid secret key.
| `name`
| `string`
| Name of the referent.
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
| `optional`
| `boolean`
| Specify whether the Secret or its key must be defined
|===
=== .spec.oauth2.tlsConfig.keySecret
Description::
+
--
Secret containing the client key file for the targets.
--
Type::
`object`
Required::
- `key`
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `key`
| `string`
| The key of the secret to select from. Must be a valid secret key.
| `name`
| `string`
| Name of the referent.
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896.
| `optional`
| `boolean`
@@ -1153,6 +771,7 @@ More info: https://prometheus.io/docs/prometheus/latest/configuration/configurat
| RelabelConfig allows dynamic rewriting of the label set for targets, alerts,
scraped samples and remote write samples.
More info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config
| `selector`
@@ -1213,6 +832,7 @@ Description::
RelabelConfig allows dynamic rewriting of the label set for targets, alerts,
scraped samples and remote write samples.
More info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config
--
@@ -1230,15 +850,18 @@ Type::
| `string`
| Action to perform based on the regex matching.
`Uppercase` and `Lowercase` actions require Prometheus >= v2.36.0.
`DropEqual` and `KeepEqual` actions require Prometheus >= v2.41.0.
Default: "Replace"
| `modulus`
| `integer`
| Modulus to take of the hash of the source label values.
Only applicable when the action is `HashMod`.
| `regex`
@@ -1250,6 +873,7 @@ Only applicable when the action is `HashMod`.
| Replacement value against which a Replace action is performed if the
regular expression matches.
Regex capture groups are available.
| `separator`
@@ -1266,9 +890,11 @@ configured regular expression.
| `string`
| Label to which the resulting string is written in a replacement.
It is mandatory for `Replace`, `HashMod`, `Lowercase`, `Uppercase`,
`KeepEqual` and `DropEqual` actions.
Regex capture groups are available.
|===
@@ -1391,6 +1017,7 @@ More info: https://prometheus.io/docs/prometheus/latest/configuration/configurat
| RelabelConfig allows dynamic rewriting of the label set for targets, alerts,
scraped samples and remote write samples.
More info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config
| `static`
@@ -1420,6 +1047,7 @@ Description::
RelabelConfig allows dynamic rewriting of the label set for targets, alerts,
scraped samples and remote write samples.
More info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config
--
@@ -1437,15 +1065,18 @@ Type::
| `string`
| Action to perform based on the regex matching.
`Uppercase` and `Lowercase` actions require Prometheus >= v2.36.0.
`DropEqual` and `KeepEqual` actions require Prometheus >= v2.41.0.
Default: "Replace"
| `modulus`
| `integer`
| Modulus to take of the hash of the source label values.
Only applicable when the action is `HashMod`.
| `regex`
@@ -1457,6 +1088,7 @@ Only applicable when the action is `HashMod`.
| Replacement value against which a Replace action is performed if the
regular expression matches.
Regex capture groups are available.
| `separator`
@@ -1473,9 +1105,11 @@ configured regular expression.
| `string`
| Label to which the resulting string is written in a replacement.
It is mandatory for `Replace`, `HashMod`, `Lowercase`, `Uppercase`,
`KeepEqual` and `DropEqual` actions.
Regex capture groups are available.
|===
@@ -1512,18 +1146,6 @@ Type::
| `object`
| Secret containing the client key file for the targets.
| `maxVersion`
| `string`
| Maximum acceptable TLS version.
It requires Prometheus >= v2.41.0.
| `minVersion`
| `string`
| Minimum acceptable TLS version.
It requires Prometheus >= v2.35.0.
| `serverName`
| `string`
| Used to verify the hostname for the targets.
@@ -1584,7 +1206,9 @@ Required::
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
TODO: Add other useful fields. apiVersion, kind, uid?
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896.
| `optional`
| `boolean`
@@ -1620,7 +1244,9 @@ Required::
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
TODO: Add other useful fields. apiVersion, kind, uid?
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896.
| `optional`
| `boolean`
@@ -1682,7 +1308,9 @@ Required::
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
TODO: Add other useful fields. apiVersion, kind, uid?
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896.
| `optional`
| `boolean`
@@ -1718,7 +1346,9 @@ Required::
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
TODO: Add other useful fields. apiVersion, kind, uid?
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896.
| `optional`
| `boolean`
@@ -1754,7 +1384,9 @@ Required::
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
TODO: Add other useful fields. apiVersion, kind, uid?
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896.
| `optional`
| `boolean`

View File

@@ -11,9 +11,7 @@ toc::[]
Description::
+
--
The `PrometheusRule` custom resource definition (CRD) defines [alerting](https://prometheus.io/docs/prometheus/latest/configuration/alerting_rules/) and [recording](https://prometheus.io/docs/prometheus/latest/configuration/recording_rules/) rules to be evaluated by `Prometheus` or `ThanosRuler` objects.
`Prometheus` and `ThanosRuler` objects select `PrometheusRule` objects using label and namespace selectors.
PrometheusRule defines recording and alerting rules for a Prometheus instance
--
Type::
@@ -124,13 +122,6 @@ Limit is supported starting with Prometheus >= 2.31 and Thanos Ruler >= 0.24.
be ignored by Prometheus instances.
More info: https://github.com/thanos-io/thanos/blob/main/docs/components/rule.md#partial-response
| `query_offset`
| `string`
| Defines the offset the rule evaluation timestamp of this particular group by the specified duration into the past.
It requires Prometheus >= v2.53.0.
It is not supported for ThanosRuler.
| `rules`
| `array`
| List of alerting and recording rules.

View File

@@ -11,14 +11,7 @@ toc::[]
Description::
+
--
The `ServiceMonitor` custom resource definition (CRD) defines how `Prometheus` and `PrometheusAgent` can scrape metrics from a group of services.
Among other things, it allows to specify:
* The services to scrape via label selectors.
* The container ports to scrape.
* Authentication credentials to use.
* Target and metric relabeling.
`Prometheus` and `PrometheusAgent` objects select `ServiceMonitor` objects using label and namespace selectors.
ServiceMonitor defines monitoring for a set of services.
--
Type::
@@ -64,7 +57,6 @@ Type::
`object`
Required::
- `endpoints`
- `selector`
@@ -78,6 +70,7 @@ Required::
| `attachMetadata` defines additional metadata which is added to the
discovered targets.
It requires Prometheus >= v2.37.0.
| `bodySizeLimit`
@@ -85,13 +78,12 @@ It requires Prometheus >= v2.37.0.
| When defined, bodySizeLimit specifies a job level limit on the size
of uncompressed response body that will be accepted by Prometheus.
It requires Prometheus >= v2.28.0.
| `endpoints`
| `array`
| List of endpoints part of this ServiceMonitor.
Defines how to scrape metrics from Kubernetes [Endpoints](https://kubernetes.io/docs/concepts/services-networking/service/#endpoints) objects.
In most cases, an Endpoints object is backed by a Kubernetes [Service](https://kubernetes.io/docs/concepts/services-networking/service/) object with the same name and labels.
| `endpoints[]`
| `object`
@@ -103,10 +95,12 @@ Prometheus.
| `jobLabel` selects the label from the associated Kubernetes `Service`
object which will be used as the `job` label for all metrics.
For example if `jobLabel` is set to `foo` and the Kubernetes `Service`
object is labeled with `foo: bar`, then Prometheus adds the `job="bar"`
label to all ingested metrics.
If the value of this field is empty or if the label doesn't exist for
the given Service, the `job` label of the metrics defaults to the name
of the associated Kubernetes `Service`.
@@ -116,42 +110,34 @@ of the associated Kubernetes `Service`.
| Per-scrape limit on the number of targets dropped by relabeling
that will be kept in memory. 0 means no limit.
It requires Prometheus >= v2.47.0.
| `labelLimit`
| `integer`
| Per-scrape limit on number of labels that will be accepted for a sample.
It requires Prometheus >= v2.27.0.
| `labelNameLengthLimit`
| `integer`
| Per-scrape limit on length of labels name that will be accepted for a sample.
It requires Prometheus >= v2.27.0.
| `labelValueLengthLimit`
| `integer`
| Per-scrape limit on length of labels value that will be accepted for a sample.
It requires Prometheus >= v2.27.0.
| `namespaceSelector`
| `object`
| `namespaceSelector` defines in which namespace(s) Prometheus should discover the services.
By default, the services are discovered in the same namespace as the `ServiceMonitor` object but it is possible to select pods across different/all namespaces.
| `nativeHistogramBucketLimit`
| `integer`
| If there are more than this many buckets in a native histogram,
buckets will be merged to stay within the limit.
It requires Prometheus >= v2.45.0.
| `nativeHistogramMinBucketFactor`
| `integer-or-string`
| If the growth factor of one bucket to the next is smaller than this,
buckets will be merged to increase the factor sufficiently.
It requires Prometheus >= v2.50.0.
| Selector to select which namespaces the Kubernetes `Endpoints` objects
are discovered from.
| `podTargetLabels`
| `array (string)`
@@ -167,23 +153,20 @@ that will be accepted.
| `string`
| The scrape class to apply.
| `scrapeClassicHistograms`
| `boolean`
| Whether to scrape a classic histogram that is also exposed as a native histogram.
It requires Prometheus >= v2.45.0.
| `scrapeProtocols`
| `array (string)`
| `scrapeProtocols` defines the protocols to negotiate during a scrape. It tells clients the
protocols supported by Prometheus in order of preference (from most to least preferred).
If unset, Prometheus uses its default value.
It requires Prometheus >= v2.49.0.
| `selector`
| `object`
| Label selector to select the Kubernetes `Endpoints` objects to scrape metrics from.
| Label selector to select the Kubernetes `Endpoints` objects.
| `targetLabels`
| `array (string)`
@@ -203,6 +186,7 @@ Description::
`attachMetadata` defines additional metadata which is added to the
discovered targets.
It requires Prometheus >= v2.37.0.
--
@@ -218,11 +202,8 @@ Type::
| `node`
| `boolean`
| When set to true, Prometheus attaches node metadata to the discovered
targets.
The Prometheus service account must have the `list` and `watch`
permissions on the `Nodes` objects.
| When set to true, Prometheus must have the `get` permission on the
`Nodes` objects.
|===
=== .spec.endpoints
@@ -230,8 +211,6 @@ Description::
+
--
List of endpoints part of this ServiceMonitor.
Defines how to scrape metrics from Kubernetes [Endpoints](https://kubernetes.io/docs/concepts/services-networking/service/#endpoints) objects.
In most cases, an Endpoints object is backed by a Kubernetes [Service](https://kubernetes.io/docs/concepts/services-networking/service/) object with the same name and labels.
--
Type::
@@ -263,6 +242,7 @@ Type::
| `authorization` configures the Authorization header credentials to use when
scraping the target.
Cannot be set at the same time as `basicAuth`, or `oauth2`.
| `basicAuth`
@@ -270,12 +250,14 @@ Cannot be set at the same time as `basicAuth`, or `oauth2`.
| `basicAuth` configures the Basic Authentication credentials to use when
scraping the target.
Cannot be set at the same time as `authorization`, or `oauth2`.
| `bearerTokenFile`
| `string`
| File to read bearer token for scraping the target.
Deprecated: use `authorization` instead.
| `bearerTokenSecret`
@@ -284,6 +266,7 @@ Deprecated: use `authorization` instead.
token for scraping targets. The secret needs to be in the same namespace
as the ServiceMonitor object and readable by the Prometheus Operator.
Deprecated: use `authorization` instead.
| `enableHttp2`
@@ -295,8 +278,10 @@ Deprecated: use `authorization` instead.
| When true, the pods which are not running (e.g. either in Failed or
Succeeded state) are dropped during the target discovery.
If unset, the filtering is enabled.
More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#pod-phase
| `followRedirects`
@@ -318,6 +303,7 @@ when exposed by the target.
| `string`
| Interval at which Prometheus scrapes the metrics from the target.
If empty, Prometheus uses the global scrape interval.
| `metricRelabelings`
@@ -330,14 +316,17 @@ samples before ingestion.
| RelabelConfig allows dynamic rewriting of the label set for targets, alerts,
scraped samples and remote write samples.
More info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config
| `oauth2`
| `object`
| `oauth2` configures the OAuth2 settings to use when scraping the target.
It requires Prometheus >= 2.27.0.
Cannot be set at the same time as `authorization`, or `basicAuth`.
| `params`
@@ -352,12 +341,14 @@ Cannot be set at the same time as `authorization`, or `basicAuth`.
| `string`
| HTTP path from which to scrape for metrics.
If empty, Prometheus uses the default value (e.g. `/metrics`).
| `port`
| `string`
| Name of the Service port which this endpoint refers to.
It takes precedence over `targetPort`.
| `proxyUrl`
@@ -370,10 +361,13 @@ It takes precedence over `targetPort`.
| `relabelings` configures the relabeling rules to apply the target's
metadata labels.
The Operator automatically adds relabelings for a few standard Kubernetes fields.
The original scrape job's name is available via the `__tmp_prometheus_job_name` label.
More info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config
| `relabelings[]`
@@ -381,21 +375,25 @@ More info: https://prometheus.io/docs/prometheus/latest/configuration/configurat
| RelabelConfig allows dynamic rewriting of the label set for targets, alerts,
scraped samples and remote write samples.
More info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config
| `scheme`
| `string`
| HTTP scheme to use for scraping.
`http` and `https` are the expected values unless you rewrite the
`__scheme__` label via relabeling.
If empty, Prometheus uses the default value `http`.
| `scrapeTimeout`
| `string`
| Timeout after which Prometheus considers the scrape to be failed.
If empty, Prometheus uses the global scrape timeout unless it is less
than the target's scrape interval value in which the latter is used.
@@ -414,6 +412,7 @@ Service. The port must be specified with the container's port property.
the metrics that have an explicit timestamp present in scraped data.
Has no effect if `honorTimestamps` is false.
It requires Prometheus >= v2.48.0.
|===
@@ -424,6 +423,7 @@ Description::
`authorization` configures the Authorization header credentials to use when
scraping the target.
Cannot be set at the same time as `basicAuth`, or `oauth2`.
--
@@ -445,8 +445,10 @@ Type::
| `string`
| Defines the authentication type. The value is case-insensitive.
"Basic" is not a supported value.
Default: "Bearer"
|===
@@ -479,7 +481,9 @@ Required::
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
TODO: Add other useful fields. apiVersion, kind, uid?
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896.
| `optional`
| `boolean`
@@ -493,6 +497,7 @@ Description::
`basicAuth` configures the Basic Authentication credentials to use when
scraping the target.
Cannot be set at the same time as `authorization`, or `oauth2`.
--
@@ -547,7 +552,9 @@ Required::
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
TODO: Add other useful fields. apiVersion, kind, uid?
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896.
| `optional`
| `boolean`
@@ -584,7 +591,9 @@ Required::
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
TODO: Add other useful fields. apiVersion, kind, uid?
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896.
| `optional`
| `boolean`
@@ -599,6 +608,7 @@ Description::
token for scraping targets. The secret needs to be in the same namespace
as the ServiceMonitor object and readable by the Prometheus Operator.
Deprecated: use `authorization` instead.
--
@@ -624,7 +634,9 @@ Required::
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
TODO: Add other useful fields. apiVersion, kind, uid?
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896.
| `optional`
| `boolean`
@@ -652,6 +664,7 @@ Description::
RelabelConfig allows dynamic rewriting of the label set for targets, alerts,
scraped samples and remote write samples.
More info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config
--
@@ -669,15 +682,18 @@ Type::
| `string`
| Action to perform based on the regex matching.
`Uppercase` and `Lowercase` actions require Prometheus >= v2.36.0.
`DropEqual` and `KeepEqual` actions require Prometheus >= v2.41.0.
Default: "Replace"
| `modulus`
| `integer`
| Modulus to take of the hash of the source label values.
Only applicable when the action is `HashMod`.
| `regex`
@@ -689,6 +705,7 @@ Only applicable when the action is `HashMod`.
| Replacement value against which a Replace action is performed if the
regular expression matches.
Regex capture groups are available.
| `separator`
@@ -705,9 +722,11 @@ configured regular expression.
| `string`
| Label to which the resulting string is written in a replacement.
It is mandatory for `Replace`, `HashMod`, `Lowercase`, `Uppercase`,
`KeepEqual` and `DropEqual` actions.
Regex capture groups are available.
|===
@@ -717,8 +736,10 @@ Description::
--
`oauth2` configures the OAuth2 settings to use when scraping the target.
It requires Prometheus >= 2.27.0.
Cannot be set at the same time as `authorization`, or `basicAuth`.
--
@@ -751,48 +772,10 @@ client's secret.
| `endpointParams` configures the HTTP parameters to append to the token
URL.
| `noProxy`
| `string`
| `noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names
that should be excluded from proxying. IP and domain names can
contain port numbers.
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
| `proxyConnectHeader`
| `object`
| ProxyConnectHeader optionally specifies headers to send to
proxies during CONNECT requests.
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
| `proxyConnectHeader{}`
| `array`
|
| `proxyConnectHeader{}[]`
| `object`
| SecretKeySelector selects a key of a Secret.
| `proxyFromEnvironment`
| `boolean`
| Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
| `proxyUrl`
| `string`
| `proxyURL` defines the HTTP proxy server to use.
| `scopes`
| `array (string)`
| `scopes` defines the OAuth2 scopes used for the token request.
| `tlsConfig`
| `object`
| TLS configuration to use when connecting to the OAuth2 server.
It requires Prometheus >= v2.43.0.
| `tokenUrl`
| `string`
| `tokenURL` configures the URL to fetch the token from.
@@ -854,7 +837,9 @@ Required::
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
TODO: Add other useful fields. apiVersion, kind, uid?
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896.
| `optional`
| `boolean`
@@ -890,7 +875,9 @@ Required::
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
TODO: Add other useful fields. apiVersion, kind, uid?
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896.
| `optional`
| `boolean`
@@ -927,355 +914,9 @@ Required::
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
TODO: Add other useful fields. apiVersion, kind, uid?
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
| `optional`
| `boolean`
| Specify whether the Secret or its key must be defined
|===
=== .spec.endpoints[].oauth2.proxyConnectHeader
Description::
+
--
ProxyConnectHeader optionally specifies headers to send to
proxies during CONNECT requests.
It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0.
--
Type::
`object`
=== .spec.endpoints[].oauth2.proxyConnectHeader{}
Description::
+
--
--
Type::
`array`
=== .spec.endpoints[].oauth2.proxyConnectHeader{}[]
Description::
+
--
SecretKeySelector selects a key of a Secret.
--
Type::
`object`
Required::
- `key`
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `key`
| `string`
| The key of the secret to select from. Must be a valid secret key.
| `name`
| `string`
| Name of the referent.
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
| `optional`
| `boolean`
| Specify whether the Secret or its key must be defined
|===
=== .spec.endpoints[].oauth2.tlsConfig
Description::
+
--
TLS configuration to use when connecting to the OAuth2 server.
It requires Prometheus >= v2.43.0.
--
Type::
`object`
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `ca`
| `object`
| Certificate authority used when verifying server certificates.
| `cert`
| `object`
| Client certificate to present when doing client-authentication.
| `insecureSkipVerify`
| `boolean`
| Disable target certificate validation.
| `keySecret`
| `object`
| Secret containing the client key file for the targets.
| `maxVersion`
| `string`
| Maximum acceptable TLS version.
It requires Prometheus >= v2.41.0.
| `minVersion`
| `string`
| Minimum acceptable TLS version.
It requires Prometheus >= v2.35.0.
| `serverName`
| `string`
| Used to verify the hostname for the targets.
|===
=== .spec.endpoints[].oauth2.tlsConfig.ca
Description::
+
--
Certificate authority used when verifying server certificates.
--
Type::
`object`
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `configMap`
| `object`
| ConfigMap containing data to use for the targets.
| `secret`
| `object`
| Secret containing data to use for the targets.
|===
=== .spec.endpoints[].oauth2.tlsConfig.ca.configMap
Description::
+
--
ConfigMap containing data to use for the targets.
--
Type::
`object`
Required::
- `key`
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `key`
| `string`
| The key to select.
| `name`
| `string`
| Name of the referent.
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
| `optional`
| `boolean`
| Specify whether the ConfigMap or its key must be defined
|===
=== .spec.endpoints[].oauth2.tlsConfig.ca.secret
Description::
+
--
Secret containing data to use for the targets.
--
Type::
`object`
Required::
- `key`
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `key`
| `string`
| The key of the secret to select from. Must be a valid secret key.
| `name`
| `string`
| Name of the referent.
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
| `optional`
| `boolean`
| Specify whether the Secret or its key must be defined
|===
=== .spec.endpoints[].oauth2.tlsConfig.cert
Description::
+
--
Client certificate to present when doing client-authentication.
--
Type::
`object`
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `configMap`
| `object`
| ConfigMap containing data to use for the targets.
| `secret`
| `object`
| Secret containing data to use for the targets.
|===
=== .spec.endpoints[].oauth2.tlsConfig.cert.configMap
Description::
+
--
ConfigMap containing data to use for the targets.
--
Type::
`object`
Required::
- `key`
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `key`
| `string`
| The key to select.
| `name`
| `string`
| Name of the referent.
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
| `optional`
| `boolean`
| Specify whether the ConfigMap or its key must be defined
|===
=== .spec.endpoints[].oauth2.tlsConfig.cert.secret
Description::
+
--
Secret containing data to use for the targets.
--
Type::
`object`
Required::
- `key`
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `key`
| `string`
| The key of the secret to select from. Must be a valid secret key.
| `name`
| `string`
| Name of the referent.
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
| `optional`
| `boolean`
| Specify whether the Secret or its key must be defined
|===
=== .spec.endpoints[].oauth2.tlsConfig.keySecret
Description::
+
--
Secret containing the client key file for the targets.
--
Type::
`object`
Required::
- `key`
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `key`
| `string`
| The key of the secret to select from. Must be a valid secret key.
| `name`
| `string`
| Name of the referent.
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896.
| `optional`
| `boolean`
@@ -1302,10 +943,13 @@ Description::
`relabelings` configures the relabeling rules to apply the target's
metadata labels.
The Operator automatically adds relabelings for a few standard Kubernetes fields.
The original scrape job's name is available via the `__tmp_prometheus_job_name` label.
More info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config
--
@@ -1322,6 +966,7 @@ Description::
RelabelConfig allows dynamic rewriting of the label set for targets, alerts,
scraped samples and remote write samples.
More info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config
--
@@ -1339,15 +984,18 @@ Type::
| `string`
| Action to perform based on the regex matching.
`Uppercase` and `Lowercase` actions require Prometheus >= v2.36.0.
`DropEqual` and `KeepEqual` actions require Prometheus >= v2.41.0.
Default: "Replace"
| `modulus`
| `integer`
| Modulus to take of the hash of the source label values.
Only applicable when the action is `HashMod`.
| `regex`
@@ -1359,6 +1007,7 @@ Only applicable when the action is `HashMod`.
| Replacement value against which a Replace action is performed if the
regular expression matches.
Regex capture groups are available.
| `separator`
@@ -1375,9 +1024,11 @@ configured regular expression.
| `string`
| Label to which the resulting string is written in a replacement.
It is mandatory for `Replace`, `HashMod`, `Lowercase`, `Uppercase`,
`KeepEqual` and `DropEqual` actions.
Regex capture groups are available.
|===
@@ -1426,18 +1077,6 @@ Type::
| `object`
| Secret containing the client key file for the targets.
| `maxVersion`
| `string`
| Maximum acceptable TLS version.
It requires Prometheus >= v2.41.0.
| `minVersion`
| `string`
| Minimum acceptable TLS version.
It requires Prometheus >= v2.35.0.
| `serverName`
| `string`
| Used to verify the hostname for the targets.
@@ -1498,7 +1137,9 @@ Required::
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
TODO: Add other useful fields. apiVersion, kind, uid?
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896.
| `optional`
| `boolean`
@@ -1534,7 +1175,9 @@ Required::
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
TODO: Add other useful fields. apiVersion, kind, uid?
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896.
| `optional`
| `boolean`
@@ -1596,7 +1239,9 @@ Required::
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
TODO: Add other useful fields. apiVersion, kind, uid?
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896.
| `optional`
| `boolean`
@@ -1632,7 +1277,9 @@ Required::
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
TODO: Add other useful fields. apiVersion, kind, uid?
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896.
| `optional`
| `boolean`
@@ -1668,7 +1315,9 @@ Required::
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
TODO: Add other useful fields. apiVersion, kind, uid?
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896.
| `optional`
| `boolean`
@@ -1679,8 +1328,8 @@ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/nam
Description::
+
--
`namespaceSelector` defines in which namespace(s) Prometheus should discover the services.
By default, the services are discovered in the same namespace as the `ServiceMonitor` object but it is possible to select pods across different/all namespaces.
Selector to select which namespaces the Kubernetes `Endpoints` objects
are discovered from.
--
Type::
@@ -1707,7 +1356,7 @@ list restricting them.
Description::
+
--
Label selector to select the Kubernetes `Endpoints` objects to scrape metrics from.
Label selector to select the Kubernetes `Endpoints` objects.
--
Type::

View File

@@ -11,18 +11,8 @@ toc::[]
Description::
+
--
CloudPrivateIPConfig performs an assignment of a private IP address to the
primary NIC associated with cloud VMs. This is done by specifying the IP and
Kubernetes node which the IP should be assigned to. This CRD is intended to
be used by the network plugin which manages the cluster network. The spec
side represents the desired state requested by the network plugin, and the
status side represents the current state that this CRD's controller has
executed. No users will have permission to modify it, and if a cluster-admin
decides to edit it for some reason, their changes will be overwritten the
next time the network plugin reconciles the object. Note: the CR's name
must specify the requested private IP address (can be IPv4 or IPv6).
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
CloudPrivateIPConfig performs an assignment of a private IP address to the primary NIC associated with cloud VMs. This is done by specifying the IP and Kubernetes node which the IP should be assigned to. This CRD is intended to be used by the network plugin which manages the cluster network. The spec side represents the desired state requested by the network plugin, and the status side represents the current state that this CRD's controller has executed. No users will have permission to modify it, and if a cluster-admin decides to edit it for some reason, their changes will be overwritten the next time the network plugin reconciles the object. Note: the CR's name must specify the requested private IP address (can be IPv4 or IPv6).
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -106,7 +96,9 @@ Required::
| `conditions[]`
| `object`
| Condition contains details for one aspect of the current state of this API Resource.
| Condition contains details for one aspect of the current state of this API Resource. --- This struct is intended for direct use as an array at the field path .status.conditions. For example,
type FooStatus struct{ // Represents the observations of a foo's current state. // Known .status.conditions.type are: "Available", "Progressing", and "Degraded" // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"`
// other fields }
| `node`
| `string`
@@ -130,7 +122,9 @@ Type::
Description::
+
--
Condition contains details for one aspect of the current state of this API Resource.
Condition contains details for one aspect of the current state of this API Resource. --- This struct is intended for direct use as an array at the field path .status.conditions. For example,
type FooStatus struct{ // Represents the observations of a foo's current state. // Known .status.conditions.type are: "Available", "Progressing", and "Degraded" // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"`
// other fields }
--
Type::
@@ -151,27 +145,19 @@ Required::
| `lastTransitionTime`
| `string`
| lastTransitionTime is the last time the condition transitioned from one status to another.
This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
| lastTransitionTime is the last time the condition transitioned from one status to another. This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
| `message`
| `string`
| message is a human readable message indicating details about the transition.
This may be an empty string.
| message is a human readable message indicating details about the transition. This may be an empty string.
| `observedGeneration`
| `integer`
| observedGeneration represents the .metadata.generation that the condition was set based upon.
For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date
with respect to the current state of the instance.
| observedGeneration represents the .metadata.generation that the condition was set based upon. For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date with respect to the current state of the instance.
| `reason`
| `string`
| reason contains a programmatic identifier indicating the reason for the condition's last transition.
Producers of specific condition types may define expected values and meanings for this field,
and whether the values are considered a guaranteed API.
The value should be a CamelCase string.
This field may not be empty.
| reason contains a programmatic identifier indicating the reason for the condition's last transition. Producers of specific condition types may define expected values and meanings for this field, and whether the values are considered a guaranteed API. The value should be a CamelCase string. This field may not be empty.
| `status`
| `string`
@@ -179,7 +165,7 @@ This field may not be empty.
| `type`
| `string`
| type of condition in CamelCase or in foo.example.com/CamelCase.
| type of condition in CamelCase or in foo.example.com/CamelCase. --- Many .condition.type values are consistent across resources like Available, but because arbitrary conditions can be useful (see .node.status.conditions), the ability to deconflict is important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
|===

View File

@@ -11,20 +11,10 @@ toc::[]
Description::
+
--
EgressRouter is a feature allowing the user to define an egress router
that acts as a bridge between pods and external systems. The egress router runs
a service that redirects egress traffic originating from a pod or a group of
pods to a remote external system or multiple destinations as per configuration.
It is consumed by the cluster-network-operator.
More specifically, given an EgressRouter CR with <name>, the CNO will create and manage:
- A service called <name>
- An egress pod called <name>
- A NAD called <name>
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
EgressRouter is a single egressrouter pod configuration object.
EgressRouter is a feature allowing the user to define an egress router that acts as a bridge between pods and external systems. The egress router runs a service that redirects egress traffic originating from a pod or a group of pods to a remote external system or multiple destinations as per configuration.
It is consumed by the cluster-network-operator. More specifically, given an EgressRouter CR with <name>, the CNO will create and manage: - A service called <name> - An egress pod called <name> - A NAD called <name>
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
EgressRouter is a single egressrouter pod configuration object.
--
Type::
@@ -96,8 +86,7 @@ Required::
| `networkInterface`
| `object`
| Specification of interface to create/use. The default is macvlan.
Currently only macvlan is supported.
| Specification of interface to create/use. The default is macvlan. Currently only macvlan is supported.
| `redirect`
| `object`
@@ -149,8 +138,7 @@ Required::
Description::
+
--
Specification of interface to create/use. The default is macvlan.
Currently only macvlan is supported.
Specification of interface to create/use. The default is macvlan. Currently only macvlan is supported.
--
Type::
@@ -215,10 +203,7 @@ Type::
| `fallbackIP`
| `string`
| FallbackIP specifies the remote destination's IP address. Can be IPv4 or IPv6.
If no redirect rules are specified, all traffic from the router are redirected to this IP.
If redirect rules are specified, then any connections on any other port (undefined in the rules) on the router will be redirected to this IP.
If redirect rules are specified and no fallback IP is provided, connections on other ports will simply be rejected.
| FallbackIP specifies the remote destination's IP address. Can be IPv4 or IPv6. If no redirect rules are specified, all traffic from the router are redirected to this IP. If redirect rules are specified, then any connections on any other port (undefined in the rules) on the router will be redirected to this IP. If redirect rules are specified and no fallback IP is provided, connections on other ports will simply be rejected.
| `redirectRules`
| `array`
@@ -277,8 +262,7 @@ Required::
| `targetPort`
| `integer`
| TargetPort allows specifying the port number on the remote destination to which the traffic gets redirected to.
If unspecified, the value from "Port" is used.
| TargetPort allows specifying the port number on the remote destination to which the traffic gets redirected to. If unspecified, the value from "Port" is used.
|===
=== .status
@@ -306,8 +290,7 @@ Required::
| `conditions[]`
| `object`
| EgressRouterStatusCondition represents the state of the egress router's
managed and monitored components.
| EgressRouterStatusCondition represents the state of the egress router's managed and monitored components.
|===
=== .status.conditions
@@ -327,8 +310,7 @@ Type::
Description::
+
--
EgressRouterStatusCondition represents the state of the egress router's
managed and monitored components.
EgressRouterStatusCondition represents the state of the egress router's managed and monitored components.
--
Type::
@@ -350,9 +332,7 @@ Required::
| `message`
| `string`
| Message provides additional information about the current condition.
This is only to be consumed by humans. It may contain Line Feed
characters (U+000A), which should be rendered as new lines.
| Message provides additional information about the current condition. This is only to be consumed by humans. It may contain Line Feed characters (U+000A), which should be rendered as new lines.
| `reason`
| `string`

View File

@@ -47,18 +47,8 @@ Type::
Description::
+
--
CloudPrivateIPConfig performs an assignment of a private IP address to the
primary NIC associated with cloud VMs. This is done by specifying the IP and
Kubernetes node which the IP should be assigned to. This CRD is intended to
be used by the network plugin which manages the cluster network. The spec
side represents the desired state requested by the network plugin, and the
status side represents the current state that this CRD's controller has
executed. No users will have permission to modify it, and if a cluster-admin
decides to edit it for some reason, their changes will be overwritten the
next time the network plugin reconciles the object. Note: the CR's name
must specify the requested private IP address (can be IPv4 or IPv6).
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
CloudPrivateIPConfig performs an assignment of a private IP address to the primary NIC associated with cloud VMs. This is done by specifying the IP and Kubernetes node which the IP should be assigned to. This CRD is intended to be used by the network plugin which manages the cluster network. The spec side represents the desired state requested by the network plugin, and the status side represents the current state that this CRD's controller has executed. No users will have permission to modify it, and if a cluster-admin decides to edit it for some reason, their changes will be overwritten the next time the network plugin reconciles the object. Note: the CR's name must specify the requested private IP address (can be IPv4 or IPv6).
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -151,20 +141,10 @@ Type::
Description::
+
--
EgressRouter is a feature allowing the user to define an egress router
that acts as a bridge between pods and external systems. The egress router runs
a service that redirects egress traffic originating from a pod or a group of
pods to a remote external system or multiple destinations as per configuration.
It is consumed by the cluster-network-operator.
More specifically, given an EgressRouter CR with <name>, the CNO will create and manage:
- A service called <name>
- An egress pod called <name>
- A NAD called <name>
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
EgressRouter is a single egressrouter pod configuration object.
EgressRouter is a feature allowing the user to define an egress router that acts as a bridge between pods and external systems. The egress router runs a service that redirects egress traffic originating from a pod or a group of pods to a remote external system or multiple destinations as per configuration.
It is consumed by the cluster-network-operator. More specifically, given an EgressRouter CR with <name>, the CNO will create and manage: - A service called <name> - An egress pod called <name> - A NAD called <name>
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
EgressRouter is a single egressrouter pod configuration object.
--
Type::
@@ -233,17 +213,6 @@ Description::
NetworkPolicy describes what network traffic is allowed for a set of Pods
--
Type::
`object`
== NodeSlicePool [whereabouts.cni.cncf.io/v1alpha1]
Description::
+
--
NodeSlicePool is the Schema for the nodesliceippools API
--
Type::
`object`
@@ -263,9 +232,8 @@ Type::
Description::
+
--
PodNetworkConnectivityCheck
Compatibility level 4: No compatibility is provided, the API can change at any point for any reason. These capabilities should not be used by applications needing long term support.
PodNetworkConnectivityCheck
Compatibility level 4: No compatibility is provided, the API can change at any point for any reason. These capabilities should not be used by applications needing long term support.
--
Type::

View File

@@ -1,404 +0,0 @@
// Automatically generated by 'openshift-apidocs-gen'. Do not edit.
:_mod-docs-content-type: ASSEMBLY
[id="nodeslicepool-whereabouts-cni-cncf-io-v1alpha1"]
= NodeSlicePool [whereabouts.cni.cncf.io/v1alpha1]
:toc: macro
:toc-title:
toc::[]
Description::
+
--
NodeSlicePool is the Schema for the nodesliceippools API
--
Type::
`object`
== Specification
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `apiVersion`
| `string`
| APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
| `kind`
| `string`
| Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
| `metadata`
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-ObjectMeta[`ObjectMeta`]
| Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
| `spec`
| `object`
| NodeSlicePoolSpec defines the desired state of NodeSlicePool
| `status`
| `object`
| NodeSlicePoolStatus defines the desired state of NodeSlicePool
|===
=== .spec
Description::
+
--
NodeSlicePoolSpec defines the desired state of NodeSlicePool
--
Type::
`object`
Required::
- `range`
- `sliceSize`
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `range`
| `string`
| Range is a RFC 4632/4291-style string that represents an IP address and prefix length in CIDR notation
this refers to the entire range where the node is allocated a subset
| `sliceSize`
| `string`
| SliceSize is the size of subnets or slices of the range that each node will be assigned
|===
=== .status
Description::
+
--
NodeSlicePoolStatus defines the desired state of NodeSlicePool
--
Type::
`object`
Required::
- `allocations`
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `allocations`
| `array`
| Allocations holds the allocations of nodes to slices
| `allocations[]`
| `object`
|
|===
=== .status.allocations
Description::
+
--
Allocations holds the allocations of nodes to slices
--
Type::
`array`
=== .status.allocations[]
Description::
+
--
--
Type::
`object`
Required::
- `nodeName`
- `sliceRange`
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `nodeName`
| `string`
| NodeName is the name of the node assigned to this slice, empty node name is an available slice for assignment
| `sliceRange`
| `string`
| SliceRange is the subnet of this slice
|===
== API endpoints
The following API endpoints are available:
* `/apis/whereabouts.cni.cncf.io/v1alpha1/nodeslicepools`
- `GET`: list objects of kind NodeSlicePool
* `/apis/whereabouts.cni.cncf.io/v1alpha1/namespaces/{namespace}/nodeslicepools`
- `DELETE`: delete collection of NodeSlicePool
- `GET`: list objects of kind NodeSlicePool
- `POST`: create a NodeSlicePool
* `/apis/whereabouts.cni.cncf.io/v1alpha1/namespaces/{namespace}/nodeslicepools/{name}`
- `DELETE`: delete a NodeSlicePool
- `GET`: read the specified NodeSlicePool
- `PATCH`: partially update the specified NodeSlicePool
- `PUT`: replace the specified NodeSlicePool
=== /apis/whereabouts.cni.cncf.io/v1alpha1/nodeslicepools
HTTP method::
`GET`
Description::
list objects of kind NodeSlicePool
.HTTP responses
[cols="1,1",options="header"]
|===
| HTTP code | Reponse body
| 200 - OK
| xref:../objects/index.adoc#io-cncf-cni-whereabouts-v1alpha1-NodeSlicePoolList[`NodeSlicePoolList`] schema
| 401 - Unauthorized
| Empty
|===
=== /apis/whereabouts.cni.cncf.io/v1alpha1/namespaces/{namespace}/nodeslicepools
HTTP method::
`DELETE`
Description::
delete collection of NodeSlicePool
.HTTP responses
[cols="1,1",options="header"]
|===
| HTTP code | Reponse body
| 200 - OK
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-Status[`Status`] schema
| 401 - Unauthorized
| Empty
|===
HTTP method::
`GET`
Description::
list objects of kind NodeSlicePool
.HTTP responses
[cols="1,1",options="header"]
|===
| HTTP code | Reponse body
| 200 - OK
| xref:../objects/index.adoc#io-cncf-cni-whereabouts-v1alpha1-NodeSlicePoolList[`NodeSlicePoolList`] schema
| 401 - Unauthorized
| Empty
|===
HTTP method::
`POST`
Description::
create a NodeSlicePool
.Query parameters
[cols="1,1,2",options="header"]
|===
| Parameter | Type | Description
| `dryRun`
| `string`
| When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
| `fieldValidation`
| `string`
| fieldValidation instructs the server on how to handle objects in the request (POST/PUT/PATCH) containing unknown or duplicate fields. Valid values are: - Ignore: This will ignore any unknown fields that are silently dropped from the object, and will ignore all but the last duplicate field that the decoder encounters. This is the default behavior prior to v1.23. - Warn: This will send a warning via the standard warning response header for each unknown field that is dropped from the object, and for each duplicate field that is encountered. The request will still succeed if there are no other errors, and will only persist the last of any duplicate fields. This is the default in v1.23+ - Strict: This will fail the request with a BadRequest error if any unknown fields would be dropped from the object, or if any duplicate fields are present. The error returned from the server will contain all unknown and duplicate fields encountered.
|===
.Body parameters
[cols="1,1,2",options="header"]
|===
| Parameter | Type | Description
| `body`
| xref:../network_apis/nodeslicepool-whereabouts-cni-cncf-io-v1alpha1.adoc#nodeslicepool-whereabouts-cni-cncf-io-v1alpha1[`NodeSlicePool`] schema
|
|===
.HTTP responses
[cols="1,1",options="header"]
|===
| HTTP code | Reponse body
| 200 - OK
| xref:../network_apis/nodeslicepool-whereabouts-cni-cncf-io-v1alpha1.adoc#nodeslicepool-whereabouts-cni-cncf-io-v1alpha1[`NodeSlicePool`] schema
| 201 - Created
| xref:../network_apis/nodeslicepool-whereabouts-cni-cncf-io-v1alpha1.adoc#nodeslicepool-whereabouts-cni-cncf-io-v1alpha1[`NodeSlicePool`] schema
| 202 - Accepted
| xref:../network_apis/nodeslicepool-whereabouts-cni-cncf-io-v1alpha1.adoc#nodeslicepool-whereabouts-cni-cncf-io-v1alpha1[`NodeSlicePool`] schema
| 401 - Unauthorized
| Empty
|===
=== /apis/whereabouts.cni.cncf.io/v1alpha1/namespaces/{namespace}/nodeslicepools/{name}
.Global path parameters
[cols="1,1,2",options="header"]
|===
| Parameter | Type | Description
| `name`
| `string`
| name of the NodeSlicePool
|===
HTTP method::
`DELETE`
Description::
delete a NodeSlicePool
.Query parameters
[cols="1,1,2",options="header"]
|===
| Parameter | Type | Description
| `dryRun`
| `string`
| When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
|===
.HTTP responses
[cols="1,1",options="header"]
|===
| HTTP code | Reponse body
| 200 - OK
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-Status[`Status`] schema
| 202 - Accepted
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-Status[`Status`] schema
| 401 - Unauthorized
| Empty
|===
HTTP method::
`GET`
Description::
read the specified NodeSlicePool
.HTTP responses
[cols="1,1",options="header"]
|===
| HTTP code | Reponse body
| 200 - OK
| xref:../network_apis/nodeslicepool-whereabouts-cni-cncf-io-v1alpha1.adoc#nodeslicepool-whereabouts-cni-cncf-io-v1alpha1[`NodeSlicePool`] schema
| 401 - Unauthorized
| Empty
|===
HTTP method::
`PATCH`
Description::
partially update the specified NodeSlicePool
.Query parameters
[cols="1,1,2",options="header"]
|===
| Parameter | Type | Description
| `dryRun`
| `string`
| When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
| `fieldValidation`
| `string`
| fieldValidation instructs the server on how to handle objects in the request (POST/PUT/PATCH) containing unknown or duplicate fields. Valid values are: - Ignore: This will ignore any unknown fields that are silently dropped from the object, and will ignore all but the last duplicate field that the decoder encounters. This is the default behavior prior to v1.23. - Warn: This will send a warning via the standard warning response header for each unknown field that is dropped from the object, and for each duplicate field that is encountered. The request will still succeed if there are no other errors, and will only persist the last of any duplicate fields. This is the default in v1.23+ - Strict: This will fail the request with a BadRequest error if any unknown fields would be dropped from the object, or if any duplicate fields are present. The error returned from the server will contain all unknown and duplicate fields encountered.
|===
.HTTP responses
[cols="1,1",options="header"]
|===
| HTTP code | Reponse body
| 200 - OK
| xref:../network_apis/nodeslicepool-whereabouts-cni-cncf-io-v1alpha1.adoc#nodeslicepool-whereabouts-cni-cncf-io-v1alpha1[`NodeSlicePool`] schema
| 401 - Unauthorized
| Empty
|===
HTTP method::
`PUT`
Description::
replace the specified NodeSlicePool
.Query parameters
[cols="1,1,2",options="header"]
|===
| Parameter | Type | Description
| `dryRun`
| `string`
| When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
| `fieldValidation`
| `string`
| fieldValidation instructs the server on how to handle objects in the request (POST/PUT/PATCH) containing unknown or duplicate fields. Valid values are: - Ignore: This will ignore any unknown fields that are silently dropped from the object, and will ignore all but the last duplicate field that the decoder encounters. This is the default behavior prior to v1.23. - Warn: This will send a warning via the standard warning response header for each unknown field that is dropped from the object, and for each duplicate field that is encountered. The request will still succeed if there are no other errors, and will only persist the last of any duplicate fields. This is the default in v1.23+ - Strict: This will fail the request with a BadRequest error if any unknown fields would be dropped from the object, or if any duplicate fields are present. The error returned from the server will contain all unknown and duplicate fields encountered.
|===
.Body parameters
[cols="1,1,2",options="header"]
|===
| Parameter | Type | Description
| `body`
| xref:../network_apis/nodeslicepool-whereabouts-cni-cncf-io-v1alpha1.adoc#nodeslicepool-whereabouts-cni-cncf-io-v1alpha1[`NodeSlicePool`] schema
|
|===
.HTTP responses
[cols="1,1",options="header"]
|===
| HTTP code | Reponse body
| 200 - OK
| xref:../network_apis/nodeslicepool-whereabouts-cni-cncf-io-v1alpha1.adoc#nodeslicepool-whereabouts-cni-cncf-io-v1alpha1[`NodeSlicePool`] schema
| 201 - Created
| xref:../network_apis/nodeslicepool-whereabouts-cni-cncf-io-v1alpha1.adoc#nodeslicepool-whereabouts-cni-cncf-io-v1alpha1[`NodeSlicePool`] schema
| 401 - Unauthorized
| Empty
|===

View File

@@ -11,9 +11,8 @@ toc::[]
Description::
+
--
PodNetworkConnectivityCheck
Compatibility level 4: No compatibility is provided, the API can change at any point for any reason. These capabilities should not be used by applications needing long term support.
PodNetworkConnectivityCheck
Compatibility level 4: No compatibility is provided, the API can change at any point for any reason. These capabilities should not be used by applications needing long term support.
--
Type::
@@ -76,28 +75,18 @@ Required::
| `targetEndpoint`
| `string`
| EndpointAddress to check. A TCP address of the form host:port. Note that
if host is a DNS name, then the check would fail if the DNS name cannot
be resolved. Specify an IP address for host to bypass DNS name lookup.
| EndpointAddress to check. A TCP address of the form host:port. Note that if host is a DNS name, then the check would fail if the DNS name cannot be resolved. Specify an IP address for host to bypass DNS name lookup.
| `tlsClientCert`
| `object`
| TLSClientCert, if specified, references a kubernetes.io/tls type secret with 'tls.crt' and
'tls.key' entries containing an optional TLS client certificate and key to be used when
checking endpoints that require a client certificate in order to gracefully preform the
scan without causing excessive logging in the endpoint process. The secret must exist in
the same namespace as this resource.
| TLSClientCert, if specified, references a kubernetes.io/tls type secret with 'tls.crt' and 'tls.key' entries containing an optional TLS client certificate and key to be used when checking endpoints that require a client certificate in order to gracefully preform the scan without causing excessive logging in the endpoint process. The secret must exist in the same namespace as this resource.
|===
=== .spec.tlsClientCert
Description::
+
--
TLSClientCert, if specified, references a kubernetes.io/tls type secret with 'tls.crt' and
'tls.key' entries containing an optional TLS client certificate and key to be used when
checking endpoints that require a client certificate in order to gracefully preform the
scan without causing excessive logging in the endpoint process. The secret must exist in
the same namespace as this resource.
TLSClientCert, if specified, references a kubernetes.io/tls type secret with 'tls.crt' and 'tls.key' entries containing an optional TLS client certificate and key to be used when checking endpoints that require a client certificate in order to gracefully preform the scan without causing excessive logging in the endpoint process. The secret must exist in the same namespace as this resource.
--
Type::
@@ -310,8 +299,7 @@ Type::
| `endLogs`
| `array`
| EndLogs contains log entries related to the end of this outage. Should contain the success
entry that resolved the outage and possibly a few of the failure log entries that preceded it.
| EndLogs contains log entries related to the end of this outage. Should contain the success entry that resolved the outage and possibly a few of the failure log entries that preceded it.
| `endLogs[]`
| `object`
@@ -327,8 +315,7 @@ entry that resolved the outage and possibly a few of the failure log entries tha
| `startLogs`
| `array`
| StartLogs contains log entries related to the start of this outage. Should contain
the original failure, any entries where the failure mode changed.
| StartLogs contains log entries related to the start of this outage. Should contain the original failure, any entries where the failure mode changed.
| `startLogs[]`
| `object`
@@ -339,8 +326,7 @@ the original failure, any entries where the failure mode changed.
Description::
+
--
EndLogs contains log entries related to the end of this outage. Should contain the success
entry that resolved the outage and possibly a few of the failure log entries that preceded it.
EndLogs contains log entries related to the end of this outage. Should contain the success entry that resolved the outage and possibly a few of the failure log entries that preceded it.
--
Type::
@@ -393,8 +379,7 @@ Required::
Description::
+
--
StartLogs contains log entries related to the start of this outage. Should contain
the original failure, any entries where the failure mode changed.
StartLogs contains log entries related to the start of this outage. Should contain the original failure, any entries where the failure mode changed.
--
Type::

View File

@@ -786,7 +786,7 @@ Description::
|===
| HTTP code | Reponse body
| 200 - OK
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-Status_v7[`Status_v7`] schema
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-Status_v8[`Status_v8`] schema
| 401 - Unauthorized
| Empty
|===
@@ -909,9 +909,9 @@ Description::
|===
| HTTP code | Reponse body
| 200 - OK
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-Status_v7[`Status_v7`] schema
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-Status_v8[`Status_v8`] schema
| 202 - Accepted
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-Status_v7[`Status_v7`] schema
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-Status_v8[`Status_v8`] schema
| 401 - Unauthorized
| Empty
|===

View File

@@ -56,13 +56,7 @@ Type::
Description::
+
--
Tuned is a collection of rules that allows cluster-wide deployment
of node-level sysctls and more flexibility to add custom tuning
specified by user needs. These rules are translated and passed to all
containerized Tuned daemons running in the cluster in the format that
the daemons understand. The responsibility for applying the node-level
tuning then lies with the containerized Tuned daemons. More info:
https://github.com/openshift/cluster-node-tuning-operator
Tuned is a collection of rules that allows cluster-wide deployment of node-level sysctls and more flexibility to add custom tuning specified by user needs. These rules are translated and passed to all containerized Tuned daemons running in the cluster in the format that the daemons understand. The responsibility for applying the node-level tuning then lies with the containerized Tuned daemons. More info: https://github.com/openshift/cluster-node-tuning-operator
--
Type::

View File

@@ -246,7 +246,7 @@ Type::
| `capacity`
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-api-resource-Quantity[`object (Quantity)`]
| Capacity represents the total resources of a node. More info: https://kubernetes.io/docs/reference/node/node-status/#capacity
| Capacity represents the total resources of a node. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#capacity
| `conditions`
| `array`
@@ -264,10 +264,6 @@ Type::
| `object`
| NodeDaemonEndpoints lists ports opened by daemons running on the Node.
| `features`
| `object`
| NodeFeatures describes the set of features implemented by the CRI implementation. The features contained in the NodeFeatures should depend only on the cri implementation independent of runtime handlers.
| `images`
| `array`
| List of container images on this node
@@ -681,28 +677,6 @@ Required::
| `integer`
| Port number of the given endpoint.
|===
=== .status.features
Description::
+
--
NodeFeatures describes the set of features implemented by the CRI implementation. The features contained in the NodeFeatures should depend only on the cri implementation independent of runtime handlers.
--
Type::
`object`
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `supplementalGroupsPolicy`
| `boolean`
| SupplementalGroupsPolicy is set to true if the runtime supports SupplementalGroupsPolicy and ContainerUser.
|===
=== .status.images
Description::
@@ -789,7 +763,7 @@ Required::
| `kubeProxyVersion`
| `string`
| Deprecated: KubeProxy Version reported by the node.
| KubeProxy Version reported by the node.
| `kubeletVersion`
| `string`
@@ -844,7 +818,7 @@ Type::
| `features`
| `object`
| NodeRuntimeHandlerFeatures is a set of features implemented by the runtime handler.
| NodeRuntimeHandlerFeatures is a set of runtime features.
| `name`
| `string`
@@ -855,7 +829,7 @@ Type::
Description::
+
--
NodeRuntimeHandlerFeatures is a set of features implemented by the runtime handler.
NodeRuntimeHandlerFeatures is a set of runtime features.
--
Type::
@@ -872,10 +846,6 @@ Type::
| `boolean`
| RecursiveReadOnlyMounts is set to true if the runtime handler supports RecursiveReadOnlyMounts.
| `userNamespaces`
| `boolean`
| UserNamespaces is set to true if the runtime handler supports UserNamespaces, including for volumes.
|===
=== .status.volumesAttached
Description::

View File

@@ -76,11 +76,7 @@ Required::
| `globallyDisableIrqLoadBalancing`
| `boolean`
| GloballyDisableIrqLoadBalancing toggles whether IRQ load balancing will be disabled for the Isolated CPU set.
When the option is set to "true" it disables IRQs load balancing for the Isolated CPU set.
Setting the option to "false" allows the IRQs to be balanced across all CPUs, however the IRQs load balancing
can be disabled per pod CPUs when using irq-load-balancing.crio.io/cpu-quota.crio.io annotations.
Defaults to "false"
| GloballyDisableIrqLoadBalancing toggles whether IRQ load balancing will be disabled for the Isolated CPU set. When the option is set to "true" it disables IRQs load balancing for the Isolated CPU set. Setting the option to "false" allows the IRQs to be balanced across all CPUs, however the IRQs load balancing can be disabled per pod CPUs when using irq-load-balancing.crio.io/cpu-quota.crio.io annotations. Defaults to "false"
| `hardwareTuning`
| `object`
@@ -88,23 +84,15 @@ Defaults to "false"
| `hugepages`
| `object`
| HugePages defines a set of huge pages related parameters.
It is possible to set huge pages with multiple size values at the same time.
For example, hugepages can be set with 1G and 2M, both values will be set on the node by the Performance Profile Controller.
It is important to notice that setting hugepages default size to 1G will remove all 2M related
folders from the node and it will be impossible to configure 2M hugepages under the node.
| HugePages defines a set of huge pages related parameters. It is possible to set huge pages with multiple size values at the same time. For example, hugepages can be set with 1G and 2M, both values will be set on the node by the Performance Profile Controller. It is important to notice that setting hugepages default size to 1G will remove all 2M related folders from the node and it will be impossible to configure 2M hugepages under the node.
| `machineConfigLabel`
| `object (string)`
| MachineConfigLabel defines the label to add to the MachineConfigs the operator creates. It has to be
used in the MachineConfigSelector of the MachineConfigPool which targets this performance profile.
Defaults to "machineconfiguration.openshift.io/role=<same role as in NodeSelector label key>"
| MachineConfigLabel defines the label to add to the MachineConfigs the operator creates. It has to be used in the MachineConfigSelector of the MachineConfigPool which targets this performance profile. Defaults to "machineconfiguration.openshift.io/role=<same role as in NodeSelector label key>"
| `machineConfigPoolSelector`
| `object (string)`
| MachineConfigPoolSelector defines the MachineConfigPool label to use in the MachineConfigPoolSelector
of resources like KubeletConfigs created by the operator.
Defaults to "machineconfiguration.openshift.io/role=<same role as in NodeSelector label key>"
| MachineConfigPoolSelector defines the MachineConfigPool label to use in the MachineConfigPoolSelector of resources like KubeletConfigs created by the operator. Defaults to "machineconfiguration.openshift.io/role=<same role as in NodeSelector label key>"
| `net`
| `object`
@@ -112,11 +100,7 @@ Defaults to "machineconfiguration.openshift.io/role=<same role as in NodeSelecto
| `nodeSelector`
| `object (string)`
| NodeSelector defines the Node label to use in the NodeSelectors of resources like Tuned created by the operator.
It most likely should, but does not have to match the node label in the NodeSelector of the MachineConfigPool
which targets this performance profile.
In the case when machineConfigLabels or machineConfigPoolSelector are not set, we are expecting a certain NodeSelector format
<domain>/<role>: "" in order to be able to calculate the default values for the former mentioned fields.
| NodeSelector defines the Node label to use in the NodeSelectors of resources like Tuned created by the operator. It most likely should, but does not have to match the node label in the NodeSelector of the MachineConfigPool which targets this performance profile. In the case when machineConfigLabels or machineConfigPoolSelector are not set, we are expecting a certain NodeSelector format <domain>/<role>: "" in order to be able to calculate the default values for the former mentioned fields.
| `numa`
| `object`
@@ -128,8 +112,7 @@ In the case when machineConfigLabels or machineConfigPoolSelector are not set, w
| `workloadHints`
| `object`
| WorkloadHints defines hints for different types of workloads. It will allow defining exact set of tuned and
kernel arguments that should be applied on top of the node.
| WorkloadHints defines hints for different types of workloads. It will allow defining exact set of tuned and kernel arguments that should be applied on top of the node.
|===
=== .spec.cpu
@@ -154,22 +137,11 @@ Required::
| `balanceIsolated`
| `boolean`
| BalanceIsolated toggles whether or not the Isolated CPU set is eligible for load balancing work loads.
When this option is set to "false", the Isolated CPU set will be static, meaning workloads have to
explicitly assign each thread to a specific cpu in order to work across multiple CPUs.
Setting this to "true" allows workloads to be balanced across CPUs.
Setting this to "false" offers the most predictable performance for guaranteed workloads, but it
offloads the complexity of cpu load balancing to the application.
Defaults to "true"
| BalanceIsolated toggles whether or not the Isolated CPU set is eligible for load balancing work loads. When this option is set to "false", the Isolated CPU set will be static, meaning workloads have to explicitly assign each thread to a specific cpu in order to work across multiple CPUs. Setting this to "true" allows workloads to be balanced across CPUs. Setting this to "false" offers the most predictable performance for guaranteed workloads, but it offloads the complexity of cpu load balancing to the application. Defaults to "true"
| `isolated`
| `string`
| Isolated defines a set of CPUs that will be used to give to application threads the most execution time possible,
which means removing as many extraneous tasks off a CPU as possible.
It is important to notice the CPU manager can choose any CPU to run the workload
except the reserved CPUs. In order to guarantee that your workload will run on the isolated CPU:
1. The union of reserved CPUs and isolated CPUs should include all online CPUs
2. The isolated CPUs field should be the complementary to reserved CPUs field
| Isolated defines a set of CPUs that will be used to give to application threads the most execution time possible, which means removing as many extraneous tasks off a CPU as possible. It is important to notice the CPU manager can choose any CPU to run the workload except the reserved CPUs. In order to guarantee that your workload will run on the isolated CPU: 1. The union of reserved CPUs and isolated CPUs should include all online CPUs 2. The isolated CPUs field should be the complementary to reserved CPUs field
| `offlined`
| `string`
@@ -181,9 +153,7 @@ except the reserved CPUs. In order to guarantee that your workload will run on t
| `shared`
| `string`
| Shared defines a set of CPUs that will be shared among guaranteed workloads
that needs additional cpus which are not exclusive,
alongside the isolated, exclusive resources that are being used already by those workloads.
| Shared defines a set of CPUs that will be shared among guaranteed workloads that needs additional cpus which are not exclusive, alongside the isolated, exclusive resources that are being used already by those workloads.
|===
=== .spec.hardwareTuning
@@ -216,11 +186,7 @@ Type::
Description::
+
--
HugePages defines a set of huge pages related parameters.
It is possible to set huge pages with multiple size values at the same time.
For example, hugepages can be set with 1G and 2M, both values will be set on the node by the Performance Profile Controller.
It is important to notice that setting hugepages default size to 1G will remove all 2M related
folders from the node and it will be impossible to configure 2M hugepages under the node.
HugePages defines a set of huge pages related parameters. It is possible to set huge pages with multiple size values at the same time. For example, hugepages can be set with 1G and 2M, both values will be set on the node by the Performance Profile Controller. It is important to notice that setting hugepages default size to 1G will remove all 2M related folders from the node and it will be impossible to configure 2M hugepages under the node.
--
Type::
@@ -282,8 +248,7 @@ Type::
| `node`
| `integer`
| Node defines the NUMA node where hugepages will be allocated,
if not specified, pages will be allocated equally between NUMA nodes
| Node defines the NUMA node where hugepages will be allocated, if not specified, pages will be allocated equally between NUMA nodes
| `size`
| `string`
@@ -309,14 +274,11 @@ Type::
| `devices`
| `array`
| Devices contains a list of network device representations that will be
set with a netqueue count equal to CPU.Reserved .
If no devices are specified then the default is all devices.
| Devices contains a list of network device representations that will be set with a netqueue count equal to CPU.Reserved . If no devices are specified then the default is all devices.
| `devices[]`
| `object`
| Device defines a way to represent a network device in several options:
device name, vendor ID, model ID, PCI path and MAC address
| Device defines a way to represent a network device in several options: device name, vendor ID, model ID, PCI path and MAC address
| `userLevelNetworking`
| `boolean`
@@ -327,9 +289,7 @@ device name, vendor ID, model ID, PCI path and MAC address
Description::
+
--
Devices contains a list of network device representations that will be
set with a netqueue count equal to CPU.Reserved .
If no devices are specified then the default is all devices.
Devices contains a list of network device representations that will be set with a netqueue count equal to CPU.Reserved . If no devices are specified then the default is all devices.
--
Type::
@@ -342,8 +302,7 @@ Type::
Description::
+
--
Device defines a way to represent a network device in several options:
device name, vendor ID, model ID, PCI path and MAC address
Device defines a way to represent a network device in several options: device name, vendor ID, model ID, PCI path and MAC address
--
Type::
@@ -388,8 +347,7 @@ Type::
| `topologyPolicy`
| `string`
| Name of the policy applied when TopologyManager is enabled
Operator defaults to "best-effort"
| Name of the policy applied when TopologyManager is enabled Operator defaults to "best-effort"
|===
=== .spec.realTimeKernel
@@ -418,8 +376,7 @@ Type::
Description::
+
--
WorkloadHints defines hints for different types of workloads. It will allow defining exact set of tuned and
kernel arguments that should be applied on top of the node.
WorkloadHints defines hints for different types of workloads. It will allow defining exact set of tuned and kernel arguments that should be applied on top of the node.
--
Type::
@@ -434,18 +391,15 @@ Type::
| `highPowerConsumption`
| `boolean`
| HighPowerConsumption defines if the node should be configured in high power consumption mode.
The flag will affect the power consumption but will improve the CPUs latency. Defaults to false.
| HighPowerConsumption defines if the node should be configured in high power consumption mode. The flag will affect the power consumption but will improve the CPUs latency. Defaults to false.
| `mixedCpus`
| `boolean`
| MixedCpus enables the mixed-cpu-node-plugin on the node.
Defaults to false.
| MixedCpus enables the mixed-cpu-node-plugin on the node. Defaults to false.
| `perPodPowerManagement`
| `boolean`
| PerPodPowerManagement defines if the node should be configured in per pod power management.
PerPodPowerManagement and HighPowerConsumption hints can not be enabled together. Defaults to false.
| PerPodPowerManagement defines if the node should be configured in per pod power management. PerPodPowerManagement and HighPowerConsumption hints can not be enabled together. Defaults to false.
| `realTime`
| `boolean`
@@ -475,8 +429,7 @@ Type::
| `conditions[]`
| `object`
| Condition represents the state of the operator's
reconciliation functionality.
| Condition represents the state of the operator's reconciliation functionality.
| `runtimeClass`
| `string`
@@ -504,8 +457,7 @@ Type::
Description::
+
--
Condition represents the state of the operator's
reconciliation functionality.
Condition represents the state of the operator's reconciliation functionality.
--
Type::

View File

@@ -43,8 +43,7 @@ Type::
| `status`
| `object`
| ProfileStatus is the status for a Profile resource; the status is for internal use only
and its fields may be changed/removed in the future.
| ProfileStatus is the status for a Profile resource; the status is for internal use only and its fields may be changed/removed in the future.
|===
=== .spec
@@ -114,10 +113,6 @@ Required::
| `string`
| TuneD profile to apply
| `verbosity`
| `integer`
| klog logging verbosity
|===
=== .spec.config.tunedConfig
Description::
@@ -187,8 +182,7 @@ Required::
Description::
+
--
ProfileStatus is the status for a Profile resource; the status is for internal use only
and its fields may be changed/removed in the future.
ProfileStatus is the status for a Profile resource; the status is for internal use only and its fields may be changed/removed in the future.
--
Type::
@@ -256,8 +250,7 @@ Required::
| `message`
| `string`
| message provides additional information about the current condition.
This is only to be consumed by humans.
| message provides additional information about the current condition. This is only to be consumed by humans.
| `reason`
| `string`

View File

@@ -11,13 +11,7 @@ toc::[]
Description::
+
--
Tuned is a collection of rules that allows cluster-wide deployment
of node-level sysctls and more flexibility to add custom tuning
specified by user needs. These rules are translated and passed to all
containerized Tuned daemons running in the cluster in the format that
the daemons understand. The responsibility for applying the node-level
tuning then lies with the containerized Tuned daemons. More info:
https://github.com/openshift/cluster-node-tuning-operator
Tuned is a collection of rules that allows cluster-wide deployment of node-level sysctls and more flexibility to add custom tuning specified by user needs. These rules are translated and passed to all containerized Tuned daemons running in the cluster in the format that the daemons understand. The responsibility for applying the node-level tuning then lies with the containerized Tuned daemons. More info: https://github.com/openshift/cluster-node-tuning-operator
--
Type::
@@ -45,8 +39,7 @@ Type::
| `spec`
| `object`
| spec is the specification of the desired behavior of Tuned. More info:
https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status
| spec is the specification of the desired behavior of Tuned. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status
| `status`
| `object`
@@ -57,8 +50,7 @@ https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-stat
Description::
+
--
spec is the specification of the desired behavior of Tuned. More info:
https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status
spec is the specification of the desired behavior of Tuned. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status
--
Type::
@@ -73,9 +65,7 @@ Type::
| `managementState`
| `string`
| managementState indicates whether the registry instance represented
by this config instance is under operator management or not. Valid
values are Force, Managed, Unmanaged, and Removed.
| managementState indicates whether the registry instance represented by this config instance is under operator management or not. Valid values are Force, Managed, Unmanaged, and Removed.
| `profile`
| `array`
@@ -171,11 +161,7 @@ Required::
| `machineConfigLabels`
| `object (string)`
| MachineConfigLabels specifies the labels for a MachineConfig. The MachineConfig is created
automatically to apply additional host settings (e.g. kernel boot parameters) profile 'Profile'
needs and can only be applied by creating a MachineConfig. This involves finding all
MachineConfigPools with machineConfigSelector matching the MachineConfigLabels and setting the
profile 'Profile' on all nodes that match the MachineConfigPools' nodeSelectors.
| MachineConfigLabels specifies the labels for a MachineConfig. The MachineConfig is created automatically to apply additional host settings (e.g. kernel boot parameters) profile 'Profile' needs and can only be applied by creating a MachineConfig. This involves finding all MachineConfigPools with machineConfigSelector matching the MachineConfigLabels and setting the profile 'Profile' on all nodes that match the MachineConfigPools' nodeSelectors.
| `match`
| `array`
@@ -272,10 +258,6 @@ Type::
| `object`
| Global configuration for the TuneD daemon as defined in tuned-main.conf
| `verbosity`
| `integer`
| klog logging verbosity
|===
=== .spec.recommend[].operand.tunedConfig
Description::

View File

@@ -54,7 +54,7 @@ Type::
| Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
| `metadata`
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-ObjectMeta[`ObjectMeta`]
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-ObjectMeta_v2[`ObjectMeta_v2`]
| metadata is the standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
| `redirectURI`
@@ -124,7 +124,7 @@ Description::
|===
| HTTP code | Reponse body
| 200 - OK
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-Status[`Status`] schema
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-Status_v6[`Status_v6`] schema
| 401 - Unauthorized
| Empty
|===

View File

@@ -52,7 +52,7 @@ Type::
| Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
| `metadata`
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-ObjectMeta[`ObjectMeta`]
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-ObjectMeta_v2[`ObjectMeta_v2`]
| metadata is the standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
| `redirectURI`
@@ -122,7 +122,7 @@ Description::
|===
| HTTP code | Reponse body
| 200 - OK
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-Status[`Status`] schema
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-Status_v6[`Status_v6`] schema
| 401 - Unauthorized
| Empty
|===

View File

@@ -56,7 +56,7 @@ WARNING: existing tokens' timeout will not be affected (lowered) by changing thi
| Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
| `metadata`
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-ObjectMeta[`ObjectMeta`]
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-ObjectMeta_v2[`ObjectMeta_v2`]
| metadata is the standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
| `redirectURIs`
@@ -199,7 +199,7 @@ Description::
|===
| HTTP code | Reponse body
| 200 - OK
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-Status[`Status`] schema
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-Status_v6[`Status_v6`] schema
| 401 - Unauthorized
| Empty
|===
@@ -322,9 +322,9 @@ Description::
|===
| HTTP code | Reponse body
| 200 - OK
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-Status[`Status`] schema
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-Status_v6[`Status_v6`] schema
| 202 - Accepted
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-Status[`Status`] schema
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-Status_v6[`Status_v6`] schema
| 401 - Unauthorized
| Empty
|===

View File

@@ -40,7 +40,7 @@ Type::
| Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
| `metadata`
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-ObjectMeta[`ObjectMeta`]
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-ObjectMeta_v2[`ObjectMeta_v2`]
| metadata is the standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
| `scopes`
@@ -102,7 +102,7 @@ Description::
|===
| HTTP code | Reponse body
| 200 - OK
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-Status[`Status`] schema
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-Status_v6[`Status_v6`] schema
| 401 - Unauthorized
| Empty
|===
@@ -225,9 +225,9 @@ Description::
|===
| HTTP code | Reponse body
| 200 - OK
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-Status[`Status`] schema
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-Status_v6[`Status_v6`] schema
| 202 - Accepted
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-Status[`Status`] schema
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-Status_v6[`Status_v6`] schema
| 401 - Unauthorized
| Empty
|===

View File

@@ -50,7 +50,7 @@ Type::
| Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
| `metadata`
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-ObjectMeta[`ObjectMeta`]
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-ObjectMeta_v2[`ObjectMeta_v2`]
| metadata is the standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
| `redirectURI`
@@ -168,9 +168,9 @@ Description::
|===
| HTTP code | Reponse body
| 200 - OK
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-Status[`Status`] schema
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-Status_v6[`Status_v6`] schema
| 202 - Accepted
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-Status[`Status`] schema
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-Status_v6[`Status_v6`] schema
| 401 - Unauthorized
| Empty
|===

View File

@@ -2058,47 +2058,6 @@ Required::
|===
[id="io-cncf-cni-whereabouts-v1alpha1-NodeSlicePoolList"]
== io.cncf.cni.whereabouts.v1alpha1.NodeSlicePoolList schema
Description::
+
--
NodeSlicePoolList is a list of NodeSlicePool
--
Type::
`object`
Required::
- `items`
[discrete]
=== Schema
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `apiVersion`
| `string`
| APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
| `items`
| xref:../network_apis/nodeslicepool-whereabouts-cni-cncf-io-v1alpha1.adoc#nodeslicepool-whereabouts-cni-cncf-io-v1alpha1[`array (NodeSlicePool)`]
| List of nodeslicepools. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md
| `kind`
| `string`
| Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
| `metadata`
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-ListMeta[`ListMeta`]
| Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
|===
[id="io-cncf-cni-whereabouts-v1alpha1-OverlappingRangeIPReservationList"]
== io.cncf.cni.whereabouts.v1alpha1.OverlappingRangeIPReservationList schema
@@ -3370,7 +3329,7 @@ Type::
| `volumeAttributesClassName`
| `string`
| volumeAttributesClassName may be used to set the VolumeAttributesClass used by this claim. If specified, the CSI driver will create or update the volume with the attributes defined in the corresponding VolumeAttributesClass. This has a different purpose than storageClassName, it can be changed after the claim is created. An empty string value means that no VolumeAttributesClass will be applied to the claim but it's not allowed to reset this field to empty string once it is set. If unspecified and the PersistentVolumeClaim is unbound, the default VolumeAttributesClass will be set by the persistentvolume controller if it exists. If the resource referred to by volumeAttributesClass does not exist, this PersistentVolumeClaim will be set to a Pending state, as reflected by the modifyVolumeStatus field, until such as a resource exists. More info: https://kubernetes.io/docs/concepts/storage/volume-attributes-classes/ (Beta) Using this field requires the VolumeAttributesClass feature gate to be enabled (off by default).
| volumeAttributesClassName may be used to set the VolumeAttributesClass used by this claim. If specified, the CSI driver will create or update the volume with the attributes defined in the corresponding VolumeAttributesClass. This has a different purpose than storageClassName, it can be changed after the claim is created. An empty string value means that no VolumeAttributesClass will be applied to the claim but it's not allowed to reset this field to empty string once it is set. If unspecified and the PersistentVolumeClaim is unbound, the default VolumeAttributesClass will be set by the persistentvolume controller if it exists. If the resource referred to by volumeAttributesClass does not exist, this PersistentVolumeClaim will be set to a Pending state, as reflected by the modifyVolumeStatus field, until such as a resource exists. More info: https://kubernetes.io/docs/concepts/storage/volume-attributes-classes/ (Alpha) Using this field requires the VolumeAttributesClass feature gate to be enabled.
| `volumeMode`
| `string`
@@ -3566,7 +3525,7 @@ This is an alpha field and requires enabling RecoverVolumeExpansionFailure featu
| `currentVolumeAttributesClassName`
| `string`
| currentVolumeAttributesClassName is the current name of the VolumeAttributesClass the PVC is using. When unset, there is no VolumeAttributeClass applied to this PersistentVolumeClaim This is a beta field and requires enabling VolumeAttributesClass feature (off by default).
| currentVolumeAttributesClassName is the current name of the VolumeAttributesClass the PVC is using. When unset, there is no VolumeAttributeClass applied to this PersistentVolumeClaim This is an alpha field and requires enabling VolumeAttributesClass feature.
| `modifyVolumeStatus`
| `object`
@@ -3901,7 +3860,7 @@ Possible enum values:
| `volumeAttributesClassName`
| `string`
| Name of VolumeAttributesClass to which this persistent volume belongs. Empty value is not allowed. When this field is not set, it indicates that this volume does not belong to any VolumeAttributesClass. This field is mutable and can be changed by the CSI driver after a volume has been updated successfully to a new class. For an unbound PersistentVolume, the volumeAttributesClassName will be matched with unbound PersistentVolumeClaims during the binding process. This is a beta field and requires enabling VolumeAttributesClass feature (off by default).
| Name of VolumeAttributesClass to which this persistent volume belongs. Empty value is not allowed. When this field is not set, it indicates that this volume does not belong to any VolumeAttributesClass. This field is mutable and can be changed by the CSI driver after a volume has been updated successfully to a new class. For an unbound PersistentVolume, the volumeAttributesClassName will be matched with unbound PersistentVolumeClaims during the binding process. This is an alpha field and requires enabling VolumeAttributesClass feature.
| `volumeMode`
| `string`
@@ -5626,7 +5585,7 @@ Defaults to atomic for arrays.
| `x-kubernetes-validations`
| xref:../objects/index.adoc#io-k8s-apiextensions-apiserver-pkg-apis-apiextensions-v1-ValidationRule[`array (ValidationRule)`]
| x-kubernetes-validations describes a list of validation rules written in the CEL expression language.
| x-kubernetes-validations describes a list of validation rules written in the CEL expression language. This field is an alpha-level. Using this field requires the feature gate `CustomResourceValidationExpressions` to be enabled.
|===
@@ -5800,44 +5759,6 @@ Type::
[id="io-k8s-apimachinery-pkg-apis-meta-v1-FieldSelectorRequirement"]
== io.k8s.apimachinery.pkg.apis.meta.v1.FieldSelectorRequirement schema
Description::
+
--
FieldSelectorRequirement is a selector that contains values, a key, and an operator that relates the key and values.
--
Type::
`object`
Required::
- `key`
- `operator`
[discrete]
=== Schema
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `key`
| `string`
| key is the field selector key that the requirement applies to.
| `operator`
| `string`
| operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. The list of operators may grow in the future.
| `values`
| `array (string)`
| values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty.
|===
[id="io-k8s-apimachinery-pkg-apis-meta-v1-GroupVersionKind"]
== io.k8s.apimachinery.pkg.apis.meta.v1.GroupVersionKind schema
@@ -5939,44 +5860,6 @@ Type::
|===
[id="io-k8s-apimachinery-pkg-apis-meta-v1-LabelSelectorRequirement"]
== io.k8s.apimachinery.pkg.apis.meta.v1.LabelSelectorRequirement schema
Description::
+
--
A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
--
Type::
`object`
Required::
- `key`
- `operator`
[discrete]
=== Schema
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `key`
| `string`
| key is the label key that the selector applies to.
| `operator`
| `string`
| operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
| `values`
| `array (string)`
| values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
|===
[id="io-k8s-apimachinery-pkg-apis-meta-v1-ListMeta"]
== io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta schema
@@ -6280,6 +6163,116 @@ Type::
|===
[id="io-k8s-apimachinery-pkg-apis-meta-v1-Status_v10"]
== io.k8s.apimachinery.pkg.apis.meta.v1.Status_v10 schema
Description::
+
--
Status is a return value for calls that don't return other objects.
--
Type::
`object`
[discrete]
=== Schema
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `apiVersion`
| `string`
| APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
| `code`
| `integer`
| Suggested HTTP return code for this status, 0 if not set.
| `details`
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-StatusDetails_v2[`StatusDetails_v2`]
| Extended data associated with the reason. Each reason may define its own extended details. This field is optional and the data returned is not guaranteed to conform to any schema except that defined by the reason type.
| `kind`
| `string`
| Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
| `message`
| `string`
| A human-readable description of the status of this operation.
| `metadata`
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-ListMeta[`ListMeta`]
| Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
| `reason`
| `string`
| A machine-readable description of why this operation is in the "Failure" status. If this value is empty there is no information available. A Reason clarifies an HTTP status code but does not override it.
| `status`
| `string`
| Status of the operation. One of: "Success" or "Failure". More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
|===
[id="io-k8s-apimachinery-pkg-apis-meta-v1-Status_v11"]
== io.k8s.apimachinery.pkg.apis.meta.v1.Status_v11 schema
Description::
+
--
Status is a return value for calls that don't return other objects.
--
Type::
`object`
[discrete]
=== Schema
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `apiVersion`
| `string`
| APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
| `code`
| `integer`
| Suggested HTTP return code for this status, 0 if not set.
| `details`
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-StatusDetails_v2[`StatusDetails_v2`]
| Extended data associated with the reason. Each reason may define its own extended details. This field is optional and the data returned is not guaranteed to conform to any schema except that defined by the reason type.
| `kind`
| `string`
| Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
| `message`
| `string`
| A human-readable description of the status of this operation.
| `metadata`
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-ListMeta[`ListMeta`]
| Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
| `reason`
| `string`
| A machine-readable description of why this operation is in the "Failure" status. If this value is empty there is no information available. A Reason clarifies an HTTP status code but does not override it.
| `status`
| `string`
| Status of the operation. One of: "Success" or "Failure". More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
|===
[id="io-k8s-apimachinery-pkg-apis-meta-v1-Status_v2"]
== io.k8s.apimachinery.pkg.apis.meta.v1.Status_v2 schema
@@ -7537,47 +7530,6 @@ Required::
|===
[id="io-metal3-v1alpha1-HostUpdatePolicyList"]
== io.metal3.v1alpha1.HostUpdatePolicyList schema
Description::
+
--
HostUpdatePolicyList is a list of HostUpdatePolicy
--
Type::
`object`
Required::
- `items`
[discrete]
=== Schema
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `apiVersion`
| `string`
| APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
| `items`
| xref:../provisioning_apis/hostupdatepolicy-metal3-io-v1alpha1.adoc#hostupdatepolicy-metal3-io-v1alpha1[`array (HostUpdatePolicy)`]
| List of hostupdatepolicies. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md
| `kind`
| `string`
| Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
| `metadata`
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-ListMeta[`ListMeta`]
| Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
|===
[id="io-metal3-v1alpha1-PreprovisioningImageList"]
== io.metal3.v1alpha1.PreprovisioningImageList schema
@@ -10571,47 +10523,6 @@ Required::
|===
[id="io-openshift-operator-v1-OLMList"]
== io.openshift.operator.v1.OLMList schema
Description::
+
--
OLMList is a list of OLM
--
Type::
`object`
Required::
- `items`
[discrete]
=== Schema
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `apiVersion`
| `string`
| APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
| `items`
| xref:../operatorhub_apis/olm-operator-openshift-io-v1.adoc#olm-operator-openshift-io-v1[`array (OLM)`]
| List of olms. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md
| `kind`
| `string`
| Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
| `metadata`
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-ListMeta[`ListMeta`]
| Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
|===
[id="io-openshift-operator-v1-OpenShiftAPIServerList"]
== io.openshift.operator.v1.OpenShiftAPIServerList schema
@@ -11022,88 +10933,6 @@ Required::
|===
[id="io-operatorframework-olm-v1-ClusterCatalogList"]
== io.operatorframework.olm.v1.ClusterCatalogList schema
Description::
+
--
ClusterCatalogList is a list of ClusterCatalog
--
Type::
`object`
Required::
- `items`
[discrete]
=== Schema
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `apiVersion`
| `string`
| APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
| `items`
| xref:../operatorhub_apis/clustercatalog-olm-operatorframework-io-v1.adoc#clustercatalog-olm-operatorframework-io-v1[`array (ClusterCatalog)`]
| List of clustercatalogs. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md
| `kind`
| `string`
| Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
| `metadata`
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-ListMeta[`ListMeta`]
| Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
|===
[id="io-operatorframework-olm-v1-ClusterExtensionList"]
== io.operatorframework.olm.v1.ClusterExtensionList schema
Description::
+
--
ClusterExtensionList is a list of ClusterExtension
--
Type::
`object`
Required::
- `items`
[discrete]
=== Schema
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `apiVersion`
| `string`
| APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
| `items`
| xref:../operatorhub_apis/clusterextension-olm-operatorframework-io-v1.adoc#clusterextension-olm-operatorframework-io-v1[`array (ClusterExtension)`]
| List of clusterextensions. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md
| `kind`
| `string`
| Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
| `metadata`
| xref:../objects/index.adoc#io-k8s-apimachinery-pkg-apis-meta-v1-ListMeta[`ListMeta`]
| Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
|===
[id="io-x-k8s-cluster-infrastructure-v1beta1-Metal3RemediationList"]
== io.x-k8s.cluster.infrastructure.v1beta1.Metal3RemediationList schema

View File

@@ -11,9 +11,8 @@ toc::[]
Description::
+
--
Authentication provides information to configure an operator to manage authentication.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
Authentication provides information to configure an operator to manage authentication.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -69,11 +68,8 @@ Type::
| `logLevel`
| `string`
| logLevel is an intent based logging for an overall component. It does not give fine grained control, but it is a
simple way to manage coarse grained logging choices that operators have to interpret for their operands.
Valid values are: "Normal", "Debug", "Trace", "TraceAll".
Defaults to "Normal".
| logLevel is an intent based logging for an overall component. It does not give fine grained control, but it is a simple way to manage coarse grained logging choices that operators have to interpret for their operands.
Valid values are: "Normal", "Debug", "Trace", "TraceAll". Defaults to "Normal".
| `managementState`
| `string`
@@ -81,24 +77,16 @@ Defaults to "Normal".
| `observedConfig`
| ``
| observedConfig holds a sparse config that controller has observed from the cluster state. It exists in spec because
it is an input to the level for the operator
| observedConfig holds a sparse config that controller has observed from the cluster state. It exists in spec because it is an input to the level for the operator
| `operatorLogLevel`
| `string`
| operatorLogLevel is an intent based logging for the operator itself. It does not give fine grained control, but it is a
simple way to manage coarse grained logging choices that operators have to interpret for themselves.
Valid values are: "Normal", "Debug", "Trace", "TraceAll".
Defaults to "Normal".
| operatorLogLevel is an intent based logging for the operator itself. It does not give fine grained control, but it is a simple way to manage coarse grained logging choices that operators have to interpret for themselves.
Valid values are: "Normal", "Debug", "Trace", "TraceAll". Defaults to "Normal".
| `unsupportedConfigOverrides`
| ``
| unsupportedConfigOverrides overrides the final configuration that was computed by the operator.
Red Hat does not support the use of this field.
Misuse of this field could lead to unexpected behavior or conflict with other configuration options.
Seek guidance from the Red Hat support before using this field.
Use of this property blocks cluster upgrades, it must be removed before upgrading your cluster.
| unsupportedConfigOverrides overrides the final configuration that was computed by the operator. Red Hat does not support the use of this field. Misuse of this field could lead to unexpected behavior or conflict with other configuration options. Seek guidance from the Red Hat support before using this field. Use of this property blocks cluster upgrades, it must be removed before upgrading your cluster.
|===
=== .status
@@ -134,10 +122,6 @@ Type::
| `object`
| GenerationStatus keeps track of the generation for a given resource so that decisions about forced updates can be made.
| `latestAvailableRevision`
| `integer`
| latestAvailableRevision is the deploymentID of the most recent deployment
| `oauthAPIServer`
| `object`
| OAuthAPIServer holds status specific only to oauth-apiserver
@@ -179,8 +163,6 @@ Type::
`object`
Required::
- `lastTransitionTime`
- `status`
- `type`
@@ -191,8 +173,7 @@ Required::
| `lastTransitionTime`
| `string`
| lastTransitionTime is the last time the condition transitioned from one status to another.
This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
|
| `message`
| `string`
@@ -204,11 +185,11 @@ This should be when the underlying condition changed. If that is not known, the
| `status`
| `string`
| status of the condition, one of True, False, Unknown.
|
| `type`
| `string`
| type of condition in CamelCase or in foo.example.com/CamelCase.
|
|===
=== .status.generations
@@ -234,11 +215,6 @@ GenerationStatus keeps track of the generation for a given resource so that deci
Type::
`object`
Required::
- `group`
- `name`
- `namespace`
- `resource`
@@ -290,8 +266,7 @@ Type::
| `latestAvailableRevision`
| `integer`
| LatestAvailableRevision is the latest revision used as suffix of revisioned
secrets like encryption-config. A new revision causes a new deployment of pods.
| LatestAvailableRevision is the latest revision used as suffix of revisioned secrets like encryption-config. A new revision causes a new deployment of pods.
|===

View File

@@ -162,8 +162,6 @@ OperatorCondition is just the standard condition fields.
Type::
`object`
Required::
- `type`
@@ -215,11 +213,6 @@ GenerationStatus keeps track of the generation for a given resource so that deci
Type::
`object`
Required::
- `group`
- `name`
- `namespace`
- `resource`

View File

@@ -11,11 +11,8 @@ toc::[]
Description::
+
--
ClusterCSIDriver object allows management and configuration of a CSI driver operator
installed by default in OpenShift. Name of the object must be name of the CSI driver
it operates. See CSIDriverName type for list of allowed values.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
ClusterCSIDriver object allows management and configuration of a CSI driver operator installed by default in OpenShift. Name of the object must be name of the CSI driver it operates. See CSIDriverName type for list of allowed values.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -71,17 +68,12 @@ Type::
| `driverConfig`
| `object`
| driverConfig can be used to specify platform specific driver configuration.
When omitted, this means no opinion and the platform is left to choose reasonable
defaults. These defaults are subject to change over time.
| driverConfig can be used to specify platform specific driver configuration. When omitted, this means no opinion and the platform is left to choose reasonable defaults. These defaults are subject to change over time.
| `logLevel`
| `string`
| logLevel is an intent based logging for an overall component. It does not give fine grained control, but it is a
simple way to manage coarse grained logging choices that operators have to interpret for their operands.
Valid values are: "Normal", "Debug", "Trace", "TraceAll".
Defaults to "Normal".
| logLevel is an intent based logging for an overall component. It does not give fine grained control, but it is a simple way to manage coarse grained logging choices that operators have to interpret for their operands.
Valid values are: "Normal", "Debug", "Trace", "TraceAll". Defaults to "Normal".
| `managementState`
| `string`
@@ -89,45 +81,27 @@ Defaults to "Normal".
| `observedConfig`
| ``
| observedConfig holds a sparse config that controller has observed from the cluster state. It exists in spec because
it is an input to the level for the operator
| observedConfig holds a sparse config that controller has observed from the cluster state. It exists in spec because it is an input to the level for the operator
| `operatorLogLevel`
| `string`
| operatorLogLevel is an intent based logging for the operator itself. It does not give fine grained control, but it is a
simple way to manage coarse grained logging choices that operators have to interpret for themselves.
Valid values are: "Normal", "Debug", "Trace", "TraceAll".
Defaults to "Normal".
| operatorLogLevel is an intent based logging for the operator itself. It does not give fine grained control, but it is a simple way to manage coarse grained logging choices that operators have to interpret for themselves.
Valid values are: "Normal", "Debug", "Trace", "TraceAll". Defaults to "Normal".
| `storageClassState`
| `string`
| StorageClassState determines if CSI operator should create and manage storage classes.
If this field value is empty or Managed - CSI operator will continuously reconcile
storage class and create if necessary.
If this field value is Unmanaged - CSI operator will not reconcile any previously created
storage class.
If this field value is Removed - CSI operator will delete the storage class it created previously.
When omitted, this means the user has no opinion and the platform chooses a reasonable default,
which is subject to change over time.
The current default behaviour is Managed.
| StorageClassState determines if CSI operator should create and manage storage classes. If this field value is empty or Managed - CSI operator will continuously reconcile storage class and create if necessary. If this field value is Unmanaged - CSI operator will not reconcile any previously created storage class. If this field value is Removed - CSI operator will delete the storage class it created previously. When omitted, this means the user has no opinion and the platform chooses a reasonable default, which is subject to change over time. The current default behaviour is Managed.
| `unsupportedConfigOverrides`
| ``
| unsupportedConfigOverrides overrides the final configuration that was computed by the operator.
Red Hat does not support the use of this field.
Misuse of this field could lead to unexpected behavior or conflict with other configuration options.
Seek guidance from the Red Hat support before using this field.
Use of this property blocks cluster upgrades, it must be removed before upgrading your cluster.
| unsupportedConfigOverrides overrides the final configuration that was computed by the operator. Red Hat does not support the use of this field. Misuse of this field could lead to unexpected behavior or conflict with other configuration options. Seek guidance from the Red Hat support before using this field. Use of this property blocks cluster upgrades, it must be removed before upgrading your cluster.
|===
=== .spec.driverConfig
Description::
+
--
driverConfig can be used to specify platform specific driver configuration.
When omitted, this means no opinion and the platform is left to choose reasonable
defaults. These defaults are subject to change over time.
driverConfig can be used to specify platform specific driver configuration. When omitted, this means no opinion and the platform is left to choose reasonable defaults. These defaults are subject to change over time.
--
Type::
@@ -152,10 +126,7 @@ Required::
| `driverType`
| `string`
| driverType indicates type of CSI driver for which the
driverConfig is being applied to.
Valid values are: AWS, Azure, GCP, IBMCloud, vSphere and omitted.
Consumers should treat unknown values as a NO-OP.
| driverType indicates type of CSI driver for which the driverConfig is being applied to. Valid values are: AWS, Azure, GCP, IBMCloud, vSphere and omitted. Consumers should treat unknown values as a NO-OP.
| `gcp`
| `object`
@@ -193,9 +164,7 @@ Type::
| `kmsKeyARN`
| `string`
| kmsKeyARN sets the cluster default storage class to encrypt volumes with a user-defined KMS key,
rather than the default KMS key used by AWS.
The value may be either the ARN or Alias ARN of a KMS key.
| kmsKeyARN sets the cluster default storage class to encrypt volumes with a user-defined KMS key, rather than the default KMS key used by AWS. The value may be either the ARN or Alias ARN of a KMS key.
|===
=== .spec.driverConfig.aws.efsVolumeMetrics
@@ -219,24 +188,18 @@ Required::
| `recursiveWalk`
| `object`
| recursiveWalk provides additional configuration for collecting volume metrics in the AWS EFS CSI Driver
when the state is set to RecursiveWalk.
| recursiveWalk provides additional configuration for collecting volume metrics in the AWS EFS CSI Driver when the state is set to RecursiveWalk.
| `state`
| `string`
| state defines the state of metric collection in the AWS EFS CSI Driver.
This field is required and must be set to one of the following values: Disabled or RecursiveWalk.
Disabled means no metrics collection will be performed. This is the default value.
RecursiveWalk means the AWS EFS CSI Driver will recursively scan volumes to collect metrics.
This process may result in high CPU and memory usage, depending on the volume size.
| state defines the state of metric collection in the AWS EFS CSI Driver. This field is required and must be set to one of the following values: Disabled or RecursiveWalk. Disabled means no metrics collection will be performed. This is the default value. RecursiveWalk means the AWS EFS CSI Driver will recursively scan volumes to collect metrics. This process may result in high CPU and memory usage, depending on the volume size.
|===
=== .spec.driverConfig.aws.efsVolumeMetrics.recursiveWalk
Description::
+
--
recursiveWalk provides additional configuration for collecting volume metrics in the AWS EFS CSI Driver
when the state is set to RecursiveWalk.
recursiveWalk provides additional configuration for collecting volume metrics in the AWS EFS CSI Driver when the state is set to RecursiveWalk.
--
Type::
@@ -251,17 +214,11 @@ Type::
| `fsRateLimit`
| `integer`
| fsRateLimit defines the rate limit, in goroutines per file system, for processing volume metrics.
When omitted, this means no opinion and the platform is left to choose a reasonable
default, which is subject to change over time. The current default is 5.
The valid range is from 1 to 100 goroutines.
| fsRateLimit defines the rate limit, in goroutines per file system, for processing volume metrics. When omitted, this means no opinion and the platform is left to choose a reasonable default, which is subject to change over time. The current default is 5. The valid range is from 1 to 100 goroutines.
| `refreshPeriodMinutes`
| `integer`
| refreshPeriodMinutes specifies the frequency, in minutes, at which volume metrics are refreshed.
When omitted, this means no opinion and the platform is left to choose a reasonable
default, which is subject to change over time. The current default is 240.
The valid range is from 1 to 43200 minutes (30 days).
| refreshPeriodMinutes specifies the frequency, in minutes, at which volume metrics are refreshed. When omitted, this means no opinion and the platform is left to choose a reasonable default, which is subject to change over time. The current default is 240. The valid range is from 1 to 43200 minutes (30 days).
|===
=== .spec.driverConfig.azure
@@ -283,16 +240,14 @@ Type::
| `diskEncryptionSet`
| `object`
| diskEncryptionSet sets the cluster default storage class to encrypt volumes with a
customer-managed encryption set, rather than the default platform-managed keys.
| diskEncryptionSet sets the cluster default storage class to encrypt volumes with a customer-managed encryption set, rather than the default platform-managed keys.
|===
=== .spec.driverConfig.azure.diskEncryptionSet
Description::
+
--
diskEncryptionSet sets the cluster default storage class to encrypt volumes with a
customer-managed encryption set, rather than the default platform-managed keys.
diskEncryptionSet sets the cluster default storage class to encrypt volumes with a customer-managed encryption set, rather than the default platform-managed keys.
--
Type::
@@ -311,29 +266,15 @@ Required::
| `name`
| `string`
| name is the name of the disk encryption set that will be set on the default storage class.
The value should consist of only alphanumberic characters,
underscores (_), hyphens, and be at most 80 characters in length.
| name is the name of the disk encryption set that will be set on the default storage class. The value should consist of only alphanumberic characters, underscores (_), hyphens, and be at most 80 characters in length.
| `resourceGroup`
| `string`
| resourceGroup defines the Azure resource group that contains the disk encryption set.
The value should consist of only alphanumberic characters,
underscores (_), parentheses, hyphens and periods.
The value should not end in a period and be at most 90 characters in
length.
| resourceGroup defines the Azure resource group that contains the disk encryption set. The value should consist of only alphanumberic characters, underscores (_), parentheses, hyphens and periods. The value should not end in a period and be at most 90 characters in length.
| `subscriptionID`
| `string`
| subscriptionID defines the Azure subscription that contains the disk encryption set.
The value should meet the following conditions:
1. It should be a 128-bit number.
2. It should be 36 characters (32 hexadecimal characters and 4 hyphens) long.
3. It should be displayed in five groups separated by hyphens (-).
4. The first group should be 8 characters long.
5. The second, third, and fourth groups should be 4 characters long.
6. The fifth group should be 12 characters long.
An Example SubscrionID: f2007bbf-f802-4a47-9336-cf7c6b89b378
| subscriptionID defines the Azure subscription that contains the disk encryption set. The value should meet the following conditions: 1. It should be a 128-bit number. 2. It should be 36 characters (32 hexadecimal characters and 4 hyphens) long. 3. It should be displayed in five groups separated by hyphens (-). 4. The first group should be 8 characters long. 5. The second, third, and fourth groups should be 4 characters long. 6. The fifth group should be 12 characters long. An Example SubscrionID: f2007bbf-f802-4a47-9336-cf7c6b89b378
|===
=== .spec.driverConfig.gcp
@@ -355,16 +296,14 @@ Type::
| `kmsKey`
| `object`
| kmsKey sets the cluster default storage class to encrypt volumes with customer-supplied
encryption keys, rather than the default keys managed by GCP.
| kmsKey sets the cluster default storage class to encrypt volumes with customer-supplied encryption keys, rather than the default keys managed by GCP.
|===
=== .spec.driverConfig.gcp.kmsKey
Description::
+
--
kmsKey sets the cluster default storage class to encrypt volumes with customer-supplied
encryption keys, rather than the default keys managed by GCP.
kmsKey sets the cluster default storage class to encrypt volumes with customer-supplied encryption keys, rather than the default keys managed by GCP.
--
Type::
@@ -383,29 +322,19 @@ Required::
| `keyRing`
| `string`
| keyRing is the name of the KMS Key Ring which the KMS Key belongs to.
The value should correspond to an existing KMS key ring and should
consist of only alphanumeric characters, hyphens (-) and underscores (_),
and be at most 63 characters in length.
| keyRing is the name of the KMS Key Ring which the KMS Key belongs to. The value should correspond to an existing KMS key ring and should consist of only alphanumeric characters, hyphens (-) and underscores (_), and be at most 63 characters in length.
| `location`
| `string`
| location is the GCP location in which the Key Ring exists.
The value must match an existing GCP location, or "global".
Defaults to global, if not set.
| location is the GCP location in which the Key Ring exists. The value must match an existing GCP location, or "global". Defaults to global, if not set.
| `name`
| `string`
| name is the name of the customer-managed encryption key to be used for disk encryption.
The value should correspond to an existing KMS key and should
consist of only alphanumeric characters, hyphens (-) and underscores (_),
and be at most 63 characters in length.
| name is the name of the customer-managed encryption key to be used for disk encryption. The value should correspond to an existing KMS key and should consist of only alphanumeric characters, hyphens (-) and underscores (_), and be at most 63 characters in length.
| `projectID`
| `string`
| projectID is the ID of the Project in which the KMS Key Ring exists.
It must be 6 to 30 lowercase letters, digits, or hyphens.
It must start with a letter. Trailing hyphens are prohibited.
| projectID is the ID of the Project in which the KMS Key Ring exists. It must be 6 to 30 lowercase letters, digits, or hyphens. It must start with a letter. Trailing hyphens are prohibited.
|===
=== .spec.driverConfig.ibmcloud
@@ -429,8 +358,7 @@ Required::
| `encryptionKeyCRN`
| `string`
| encryptionKeyCRN is the IBM Cloud CRN of the customer-managed root key to use
for disk encryption of volumes for the default storage classes.
| encryptionKeyCRN is the IBM Cloud CRN of the customer-managed root key to use for disk encryption of volumes for the default storage classes.
|===
=== .spec.driverConfig.vSphere
@@ -452,31 +380,19 @@ Type::
| `globalMaxSnapshotsPerBlockVolume`
| `integer`
| globalMaxSnapshotsPerBlockVolume is a global configuration parameter that applies to volumes on all kinds of
datastores. If omitted, the platform chooses a default, which is subject to change over time, currently that default is 3.
Snapshots can not be disabled using this parameter.
Increasing number of snapshots above 3 can have negative impact on performance, for more details see: https://kb.vmware.com/s/article/1025279
Volume snapshot documentation: https://docs.vmware.com/en/VMware-vSphere-Container-Storage-Plug-in/3.0/vmware-vsphere-csp-getting-started/GUID-E0B41C69-7EEB-450F-A73D-5FD2FF39E891.html
| globalMaxSnapshotsPerBlockVolume is a global configuration parameter that applies to volumes on all kinds of datastores. If omitted, the platform chooses a default, which is subject to change over time, currently that default is 3. Snapshots can not be disabled using this parameter. Increasing number of snapshots above 3 can have negative impact on performance, for more details see: https://kb.vmware.com/s/article/1025279 Volume snapshot documentation: https://docs.vmware.com/en/VMware-vSphere-Container-Storage-Plug-in/3.0/vmware-vsphere-csp-getting-started/GUID-E0B41C69-7EEB-450F-A73D-5FD2FF39E891.html
| `granularMaxSnapshotsPerBlockVolumeInVSAN`
| `integer`
| granularMaxSnapshotsPerBlockVolumeInVSAN is a granular configuration parameter on vSAN datastore only. It
overrides GlobalMaxSnapshotsPerBlockVolume if set, while it falls back to the global constraint if unset.
Snapshots for VSAN can not be disabled using this parameter.
| granularMaxSnapshotsPerBlockVolumeInVSAN is a granular configuration parameter on vSAN datastore only. It overrides GlobalMaxSnapshotsPerBlockVolume if set, while it falls back to the global constraint if unset. Snapshots for VSAN can not be disabled using this parameter.
| `granularMaxSnapshotsPerBlockVolumeInVVOL`
| `integer`
| granularMaxSnapshotsPerBlockVolumeInVVOL is a granular configuration parameter on Virtual Volumes datastore only.
It overrides GlobalMaxSnapshotsPerBlockVolume if set, while it falls back to the global constraint if unset.
Snapshots for VVOL can not be disabled using this parameter.
| granularMaxSnapshotsPerBlockVolumeInVVOL is a granular configuration parameter on Virtual Volumes datastore only. It overrides GlobalMaxSnapshotsPerBlockVolume if set, while it falls back to the global constraint if unset. Snapshots for VVOL can not be disabled using this parameter.
| `topologyCategories`
| `array (string)`
| topologyCategories indicates tag categories with which
vcenter resources such as hostcluster or datacenter were tagged with.
If cluster Infrastructure object has a topology, values specified in
Infrastructure object will be used and modifications to topologyCategories
will be rejected.
| topologyCategories indicates tag categories with which vcenter resources such as hostcluster or datacenter were tagged with. If cluster Infrastructure object has a topology, values specified in Infrastructure object will be used and modifications to topologyCategories will be rejected.
|===
=== .status
@@ -512,10 +428,6 @@ Type::
| `object`
| GenerationStatus keeps track of the generation for a given resource so that decisions about forced updates can be made.
| `latestAvailableRevision`
| `integer`
| latestAvailableRevision is the deploymentID of the most recent deployment
| `observedGeneration`
| `integer`
| observedGeneration is the last generation change you've dealt with
@@ -553,8 +465,6 @@ Type::
`object`
Required::
- `lastTransitionTime`
- `status`
- `type`
@@ -565,8 +475,7 @@ Required::
| `lastTransitionTime`
| `string`
| lastTransitionTime is the last time the condition transitioned from one status to another.
This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
|
| `message`
| `string`
@@ -578,11 +487,11 @@ This should be when the underlying condition changed. If that is not known, the
| `status`
| `string`
| status of the condition, one of True, False, Unknown.
|
| `type`
| `string`
| type of condition in CamelCase or in foo.example.com/CamelCase.
|
|===
=== .status.generations
@@ -608,11 +517,6 @@ GenerationStatus keeps track of the generation for a given resource so that deci
Type::
`object`
Required::
- `group`
- `name`
- `namespace`
- `resource`

View File

@@ -11,10 +11,8 @@ toc::[]
Description::
+
--
Config specifies the behavior of the config operator which is responsible for creating the initial configuration of other components
on the cluster. The operator also handles installation, migration or synchronization of cloud configurations for AWS and Azure cloud based clusters
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
Config specifies the behavior of the config operator which is responsible for creating the initial configuration of other components on the cluster. The operator also handles installation, migration or synchronization of cloud configurations for AWS and Azure cloud based clusters
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -70,11 +68,8 @@ Type::
| `logLevel`
| `string`
| logLevel is an intent based logging for an overall component. It does not give fine grained control, but it is a
simple way to manage coarse grained logging choices that operators have to interpret for their operands.
Valid values are: "Normal", "Debug", "Trace", "TraceAll".
Defaults to "Normal".
| logLevel is an intent based logging for an overall component. It does not give fine grained control, but it is a simple way to manage coarse grained logging choices that operators have to interpret for their operands.
Valid values are: "Normal", "Debug", "Trace", "TraceAll". Defaults to "Normal".
| `managementState`
| `string`
@@ -82,24 +77,16 @@ Defaults to "Normal".
| `observedConfig`
| ``
| observedConfig holds a sparse config that controller has observed from the cluster state. It exists in spec because
it is an input to the level for the operator
| observedConfig holds a sparse config that controller has observed from the cluster state. It exists in spec because it is an input to the level for the operator
| `operatorLogLevel`
| `string`
| operatorLogLevel is an intent based logging for the operator itself. It does not give fine grained control, but it is a
simple way to manage coarse grained logging choices that operators have to interpret for themselves.
Valid values are: "Normal", "Debug", "Trace", "TraceAll".
Defaults to "Normal".
| operatorLogLevel is an intent based logging for the operator itself. It does not give fine grained control, but it is a simple way to manage coarse grained logging choices that operators have to interpret for themselves.
Valid values are: "Normal", "Debug", "Trace", "TraceAll". Defaults to "Normal".
| `unsupportedConfigOverrides`
| ``
| unsupportedConfigOverrides overrides the final configuration that was computed by the operator.
Red Hat does not support the use of this field.
Misuse of this field could lead to unexpected behavior or conflict with other configuration options.
Seek guidance from the Red Hat support before using this field.
Use of this property blocks cluster upgrades, it must be removed before upgrading your cluster.
| unsupportedConfigOverrides overrides the final configuration that was computed by the operator. Red Hat does not support the use of this field. Misuse of this field could lead to unexpected behavior or conflict with other configuration options. Seek guidance from the Red Hat support before using this field. Use of this property blocks cluster upgrades, it must be removed before upgrading your cluster.
|===
=== .status
@@ -135,10 +122,6 @@ Type::
| `object`
| GenerationStatus keeps track of the generation for a given resource so that decisions about forced updates can be made.
| `latestAvailableRevision`
| `integer`
| latestAvailableRevision is the deploymentID of the most recent deployment
| `observedGeneration`
| `integer`
| observedGeneration is the last generation change you've dealt with
@@ -176,8 +159,6 @@ Type::
`object`
Required::
- `lastTransitionTime`
- `status`
- `type`
@@ -188,8 +169,7 @@ Required::
| `lastTransitionTime`
| `string`
| lastTransitionTime is the last time the condition transitioned from one status to another.
This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
|
| `message`
| `string`
@@ -201,11 +181,11 @@ This should be when the underlying condition changed. If that is not known, the
| `status`
| `string`
| status of the condition, one of True, False, Unknown.
|
| `type`
| `string`
| type of condition in CamelCase or in foo.example.com/CamelCase.
|
|===
=== .status.generations
@@ -231,11 +211,6 @@ GenerationStatus keeps track of the generation for a given resource so that deci
Type::
`object`
Required::
- `group`
- `name`
- `namespace`
- `resource`

View File

@@ -11,9 +11,8 @@ toc::[]
Description::
+
--
Console provides a means to configure an operator to manage the console.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
Console provides a means to configure an operator to manage the console.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -69,22 +68,16 @@ Type::
| `customization`
| `object`
| customization is used to optionally provide a small set of
customization options to the web console.
| customization is used to optionally provide a small set of customization options to the web console.
| `ingress`
| `object`
| ingress allows to configure the alternative ingress for the console.
This field is intended for clusters without ingress capability,
where access to routes is not possible.
| ingress allows to configure the alternative ingress for the console. This field is intended for clusters without ingress capability, where access to routes is not possible.
| `logLevel`
| `string`
| logLevel is an intent based logging for an overall component. It does not give fine grained control, but it is a
simple way to manage coarse grained logging choices that operators have to interpret for their operands.
Valid values are: "Normal", "Debug", "Trace", "TraceAll".
Defaults to "Normal".
| logLevel is an intent based logging for an overall component. It does not give fine grained control, but it is a simple way to manage coarse grained logging choices that operators have to interpret for their operands.
Valid values are: "Normal", "Debug", "Trace", "TraceAll". Defaults to "Normal".
| `managementState`
| `string`
@@ -92,16 +85,12 @@ Defaults to "Normal".
| `observedConfig`
| ``
| observedConfig holds a sparse config that controller has observed from the cluster state. It exists in spec because
it is an input to the level for the operator
| observedConfig holds a sparse config that controller has observed from the cluster state. It exists in spec because it is an input to the level for the operator
| `operatorLogLevel`
| `string`
| operatorLogLevel is an intent based logging for the operator itself. It does not give fine grained control, but it is a
simple way to manage coarse grained logging choices that operators have to interpret for themselves.
Valid values are: "Normal", "Debug", "Trace", "TraceAll".
Defaults to "Normal".
| operatorLogLevel is an intent based logging for the operator itself. It does not give fine grained control, but it is a simple way to manage coarse grained logging choices that operators have to interpret for themselves.
Valid values are: "Normal", "Debug", "Trace", "TraceAll". Defaults to "Normal".
| `plugins`
| `array (string)`
@@ -113,32 +102,18 @@ Defaults to "Normal".
| `route`
| `object`
| route contains hostname and secret reference that contains the serving certificate.
If a custom route is specified, a new route will be created with the
provided hostname, under which console will be available.
In case of custom hostname uses the default routing suffix of the cluster,
the Secret specification for a serving certificate will not be needed.
In case of custom hostname points to an arbitrary domain, manual DNS configurations steps are necessary.
The default console route will be maintained to reserve the default hostname
for console if the custom route is removed.
If not specified, default route will be used.
DEPRECATED
| route contains hostname and secret reference that contains the serving certificate. If a custom route is specified, a new route will be created with the provided hostname, under which console will be available. In case of custom hostname uses the default routing suffix of the cluster, the Secret specification for a serving certificate will not be needed. In case of custom hostname points to an arbitrary domain, manual DNS configurations steps are necessary. The default console route will be maintained to reserve the default hostname for console if the custom route is removed. If not specified, default route will be used. DEPRECATED
| `unsupportedConfigOverrides`
| ``
| unsupportedConfigOverrides overrides the final configuration that was computed by the operator.
Red Hat does not support the use of this field.
Misuse of this field could lead to unexpected behavior or conflict with other configuration options.
Seek guidance from the Red Hat support before using this field.
Use of this property blocks cluster upgrades, it must be removed before upgrading your cluster.
| unsupportedConfigOverrides overrides the final configuration that was computed by the operator. Red Hat does not support the use of this field. Misuse of this field could lead to unexpected behavior or conflict with other configuration options. Seek guidance from the Red Hat support before using this field. Use of this property blocks cluster upgrades, it must be removed before upgrading your cluster.
|===
=== .spec.customization
Description::
+
--
customization is used to optionally provide a small set of
customization options to the web console.
customization is used to optionally provide a small set of customization options to the web console.
--
Type::
@@ -157,17 +132,11 @@ Type::
| `brand`
| `string`
| brand is the default branding of the web console which can be overridden by
providing the brand field. There is a limited set of specific brand options.
This field controls elements of the console such as the logo.
Invalid value will prevent a console rollout.
| brand is the default branding of the web console which can be overridden by providing the brand field. There is a limited set of specific brand options. This field controls elements of the console such as the logo. Invalid value will prevent a console rollout.
| `capabilities`
| `array`
| capabilities defines an array of capabilities that can be interacted with in the console UI.
Each capability defines a visual state that can be interacted with the console to render in the UI.
Available capabilities are LightspeedButton and GettingStartedBanner.
Each of the available capabilities may appear only once in the list.
| capabilities defines an array of capabilities that can be interacted with in the console UI. Each capability defines a visual state that can be interacted with the console to render in the UI. Available capabilities are LightspeedButton. Each of the available capabilities may appear only once in the list.
| `capabilities[]`
| `object`
@@ -175,20 +144,11 @@ Each of the available capabilities may appear only once in the list.
| `customLogoFile`
| `object`
| customLogoFile replaces the default OpenShift logo in the masthead and about dialog. It is a reference to a
ConfigMap in the openshift-config namespace. This can be created with a command like
'oc create configmap custom-logo --from-file=/path/to/file -n openshift-config'.
Image size must be less than 1 MB due to constraints on the ConfigMap size.
The ConfigMap key should include a file extension so that the console serves the file
with the correct MIME type.
Recommended logo specifications:
Dimensions: Max height of 68px and max width of 200px
SVG format preferred
| customLogoFile replaces the default OpenShift logo in the masthead and about dialog. It is a reference to a ConfigMap in the openshift-config namespace. This can be created with a command like 'oc create configmap custom-logo --from-file=/path/to/file -n openshift-config'. Image size must be less than 1 MB due to constraints on the ConfigMap size. The ConfigMap key should include a file extension so that the console serves the file with the correct MIME type. Recommended logo specifications: Dimensions: Max height of 68px and max width of 200px SVG format preferred
| `customProductName`
| `string`
| customProductName is the name that will be displayed in page titles, logo alt text, and the about dialog
instead of the normal OpenShift product name.
| customProductName is the name that will be displayed in page titles, logo alt text, and the about dialog instead of the normal OpenShift product name.
| `developerCatalog`
| `object`
@@ -196,10 +156,7 @@ instead of the normal OpenShift product name.
| `documentationBaseURL`
| `string`
| documentationBaseURL links to external documentation are shown in various sections
of the web console. Providing documentationBaseURL will override the default
documentation URL.
Invalid value will prevent a console rollout.
| documentationBaseURL links to external documentation are shown in various sections of the web console. Providing documentationBaseURL will override the default documentation URL. Invalid value will prevent a console rollout.
| `perspectives`
| `array`
@@ -211,9 +168,7 @@ Invalid value will prevent a console rollout.
| `projectAccess`
| `object`
| projectAccess allows customizing the available list of ClusterRoles in the Developer perspective
Project access page which can be used by a project admin to specify roles to other users and
restrict access within the project. If set, the list will replace the default ClusterRole options.
| projectAccess allows customizing the available list of ClusterRoles in the Developer perspective Project access page which can be used by a project admin to specify roles to other users and restrict access within the project. If set, the list will replace the default ClusterRole options.
| `quickStarts`
| `object`
@@ -239,18 +194,14 @@ Type::
| `disabledActions`
| `array (string)`
| disabledActions is a list of actions that are not shown to users.
Each action in the list is represented by its ID.
| disabledActions is a list of actions that are not shown to users. Each action in the list is represented by its ID.
|===
=== .spec.customization.capabilities
Description::
+
--
capabilities defines an array of capabilities that can be interacted with in the console UI.
Each capability defines a visual state that can be interacted with the console to render in the UI.
Available capabilities are LightspeedButton and GettingStartedBanner.
Each of the available capabilities may appear only once in the list.
capabilities defines an array of capabilities that can be interacted with in the console UI. Each capability defines a visual state that can be interacted with the console to render in the UI. Available capabilities are LightspeedButton. Each of the available capabilities may appear only once in the list.
--
Type::
@@ -281,8 +232,7 @@ Required::
| `name`
| `string`
| name is the unique name of a capability.
Available capabilities are LightspeedButton and GettingStartedBanner.
| name is the unique name of a capability. Available capabilities are LightspeedButton.
| `visibility`
| `object`
@@ -310,24 +260,14 @@ Required::
| `state`
| `string`
| state defines if the capability is enabled or disabled in the console UI.
Enabling the capability in the console UI is represented by the "Enabled" value.
Disabling the capability in the console UI is represented by the "Disabled" value.
| state defines if the capability is enabled or disabled in the console UI. Enabling the capability in the console UI is represented by the "Enabled" value. Disabling the capability in the console UI is represented by the "Disabled" value.
|===
=== .spec.customization.customLogoFile
Description::
+
--
customLogoFile replaces the default OpenShift logo in the masthead and about dialog. It is a reference to a
ConfigMap in the openshift-config namespace. This can be created with a command like
'oc create configmap custom-logo --from-file=/path/to/file -n openshift-config'.
Image size must be less than 1 MB due to constraints on the ConfigMap size.
The ConfigMap key should include a file extension so that the console serves the file
with the correct MIME type.
Recommended logo specifications:
Dimensions: Max height of 68px and max width of 200px
SVG format preferred
customLogoFile replaces the default OpenShift logo in the masthead and about dialog. It is a reference to a ConfigMap in the openshift-config namespace. This can be created with a command like 'oc create configmap custom-logo --from-file=/path/to/file -n openshift-config'. Image size must be less than 1 MB due to constraints on the ConfigMap size. The ConfigMap key should include a file extension so that the console serves the file with the correct MIME type. Recommended logo specifications: Dimensions: Max height of 68px and max width of 200px SVG format preferred
--
Type::
@@ -376,8 +316,7 @@ Type::
| `types`
| `object`
| types allows enabling or disabling of sub-catalog types that user can see in the Developer catalog.
When omitted, all the sub-catalog types will be shown.
| types allows enabling or disabling of sub-catalog types that user can see in the Developer catalog. When omitted, all the sub-catalog types will be shown.
|===
=== .spec.customization.developerCatalog.categories
@@ -415,8 +354,7 @@ Required::
| `id`
| `string`
| ID is an identifier used in the URL to enable deep linking in console.
ID is required and must have 1-32 URL safe (A-Z, a-z, 0-9, - and _) characters.
| ID is an identifier used in the URL to enable deep linking in console. ID is required and must have 1-32 URL safe (A-Z, a-z, 0-9, - and _) characters.
| `label`
| `string`
@@ -432,8 +370,7 @@ ID is required and must have 1-32 URL safe (A-Z, a-z, 0-9, - and _) characters.
| `tags`
| `array (string)`
| tags is a list of strings that will match the category. A selected category
show all items which has at least one overlapping tag between category and item.
| tags is a list of strings that will match the category. A selected category show all items which has at least one overlapping tag between category and item.
|===
=== .spec.customization.developerCatalog.categories[].subcategories
@@ -471,8 +408,7 @@ Required::
| `id`
| `string`
| ID is an identifier used in the URL to enable deep linking in console.
ID is required and must have 1-32 URL safe (A-Z, a-z, 0-9, - and _) characters.
| ID is an identifier used in the URL to enable deep linking in console. ID is required and must have 1-32 URL safe (A-Z, a-z, 0-9, - and _) characters.
| `label`
| `string`
@@ -480,16 +416,14 @@ ID is required and must have 1-32 URL safe (A-Z, a-z, 0-9, - and _) characters.
| `tags`
| `array (string)`
| tags is a list of strings that will match the category. A selected category
show all items which has at least one overlapping tag between category and item.
| tags is a list of strings that will match the category. A selected category show all items which has at least one overlapping tag between category and item.
|===
=== .spec.customization.developerCatalog.types
Description::
+
--
types allows enabling or disabling of sub-catalog types that user can see in the Developer catalog.
When omitted, all the sub-catalog types will be shown.
types allows enabling or disabling of sub-catalog types that user can see in the Developer catalog. When omitted, all the sub-catalog types will be shown.
--
Type::
@@ -506,20 +440,11 @@ Required::
| `disabled`
| `array (string)`
| disabled is a list of developer catalog types (sub-catalogs IDs) that are not shown to users.
Types (sub-catalogs) are added via console plugins, the available types (sub-catalog IDs) are available
in the console on the cluster configuration page, or when editing the YAML in the console.
Example: "Devfile", "HelmChart", "BuilderImage"
If the list is empty or all the available sub-catalog types are added, then the complete developer catalog should be hidden.
| disabled is a list of developer catalog types (sub-catalogs IDs) that are not shown to users. Types (sub-catalogs) are added via console plugins, the available types (sub-catalog IDs) are available in the console on the cluster configuration page, or when editing the YAML in the console. Example: "Devfile", "HelmChart", "BuilderImage" If the list is empty or all the available sub-catalog types are added, then the complete developer catalog should be hidden.
| `enabled`
| `array (string)`
| enabled is a list of developer catalog types (sub-catalogs IDs) that will be shown to users.
Types (sub-catalogs) are added via console plugins, the available types (sub-catalog IDs) are available
in the console on the cluster configuration page, or when editing the YAML in the console.
Example: "Devfile", "HelmChart", "BuilderImage"
If the list is non-empty, a new type will not be shown to the user until it is added to list.
If the list is empty the complete developer catalog will be shown.
| enabled is a list of developer catalog types (sub-catalogs IDs) that will be shown to users. Types (sub-catalogs) are added via console plugins, the available types (sub-catalog IDs) are available in the console on the cluster configuration page, or when editing the YAML in the console. Example: "Devfile", "HelmChart", "BuilderImage" If the list is non-empty, a new type will not be shown to the user until it is added to list. If the list is empty the complete developer catalog will be shown.
| `state`
| `string`
@@ -561,17 +486,11 @@ Required::
| `id`
| `string`
| id defines the id of the perspective.
Example: "dev", "admin".
The available perspective ids can be found in the code snippet section next to the yaml editor.
Incorrect or unknown ids will be ignored.
| id defines the id of the perspective. Example: "dev", "admin". The available perspective ids can be found in the code snippet section next to the yaml editor. Incorrect or unknown ids will be ignored.
| `pinnedResources`
| `array`
| pinnedResources defines the list of default pinned resources that users will see on the perspective navigation if they have not customized these pinned resources themselves.
The list of available Kubernetes resources could be read via `kubectl api-resources`.
The console will also provide a configuration UI and a YAML snippet that will list the available resources that can be pinned to the navigation.
Incorrect or unknown resources will be ignored.
| pinnedResources defines the list of default pinned resources that users will see on the perspective navigation if they have not customized these pinned resources themselves. The list of available Kubernetes resources could be read via `kubectl api-resources`. The console will also provide a configuration UI and a YAML snippet that will list the available resources that can be pinned to the navigation. Incorrect or unknown resources will be ignored.
| `pinnedResources[]`
| `object`
@@ -586,10 +505,7 @@ Incorrect or unknown resources will be ignored.
Description::
+
--
pinnedResources defines the list of default pinned resources that users will see on the perspective navigation if they have not customized these pinned resources themselves.
The list of available Kubernetes resources could be read via `kubectl api-resources`.
The console will also provide a configuration UI and a YAML snippet that will list the available resources that can be pinned to the navigation.
Incorrect or unknown resources will be ignored.
pinnedResources defines the list of default pinned resources that users will see on the perspective navigation if they have not customized these pinned resources themselves. The list of available Kubernetes resources could be read via `kubectl api-resources`. The console will also provide a configuration UI and a YAML snippet that will list the available resources that can be pinned to the navigation. Incorrect or unknown resources will be ignored.
--
Type::
@@ -621,23 +537,15 @@ Required::
| `group`
| `string`
| group is the API Group of the Resource.
Enter empty string for the core group.
This value should consist of only lowercase alphanumeric characters, hyphens and periods.
Example: "", "apps", "build.openshift.io", etc.
| group is the API Group of the Resource. Enter empty string for the core group. This value should consist of only lowercase alphanumeric characters, hyphens and periods. Example: "", "apps", "build.openshift.io", etc.
| `resource`
| `string`
| resource is the type that is being referenced.
It is normally the plural form of the resource kind in lowercase.
This value should consist of only lowercase alphanumeric characters and hyphens.
Example: "deployments", "deploymentconfigs", "pods", etc.
| resource is the type that is being referenced. It is normally the plural form of the resource kind in lowercase. This value should consist of only lowercase alphanumeric characters and hyphens. Example: "deployments", "deploymentconfigs", "pods", etc.
| `version`
| `string`
| version is the API Version of the Resource.
This value should consist of only lowercase alphanumeric characters.
Example: "v1", "v1beta1", etc.
| version is the API Version of the Resource. This value should consist of only lowercase alphanumeric characters. Example: "v1", "v1beta1", etc.
|===
=== .spec.customization.perspectives[].visibility
@@ -732,34 +640,17 @@ Type::
|===
| Property | Type | Description
| `fieldSelector`
| `object`
| fieldSelector describes the limitation on access based on field. It can only limit access, not broaden it.
This field is alpha-level. To use this field, you must enable the
`AuthorizeWithSelectors` feature gate (disabled by default).
| `group`
| `string`
| Group is the API Group of the Resource. "*" means all.
| `labelSelector`
| `object`
| labelSelector describes the limitation on access based on labels. It can only limit access, not broaden it.
This field is alpha-level. To use this field, you must enable the
`AuthorizeWithSelectors` feature gate (disabled by default).
| `name`
| `string`
| Name is the name of the resource being requested for a "get" or deleted for a "delete". "" (empty) means all.
| `namespace`
| `string`
| Namespace is the namespace of the action being requested. Currently, there is no distinction between no namespace and all namespaces
"" (empty) is defaulted for LocalSubjectAccessReviews
"" (empty) is empty for cluster-scoped resources
"" (empty) means "all" for namespace scoped resources from a SubjectAccessReview or SelfSubjectAccessReview
| Namespace is the namespace of the action being requested. Currently, there is no distinction between no namespace and all namespaces "" (empty) is defaulted for LocalSubjectAccessReviews "" (empty) is empty for cluster-scoped resources "" (empty) means "all" for namespace scoped resources from a SubjectAccessReview or SelfSubjectAccessReview
| `resource`
| `string`
@@ -777,196 +668,6 @@ This field is alpha-level. To use this field, you must enable the
| `string`
| Version is the API Version of the Resource. "*" means all.
|===
=== .spec.customization.perspectives[].visibility.accessReview.missing[].fieldSelector
Description::
+
--
fieldSelector describes the limitation on access based on field. It can only limit access, not broaden it.
This field is alpha-level. To use this field, you must enable the
`AuthorizeWithSelectors` feature gate (disabled by default).
--
Type::
`object`
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `rawSelector`
| `string`
| rawSelector is the serialization of a field selector that would be included in a query parameter.
Webhook implementations are encouraged to ignore rawSelector.
The kube-apiserver's *SubjectAccessReview will parse the rawSelector as long as the requirements are not present.
| `requirements`
| `array`
| requirements is the parsed interpretation of a field selector.
All requirements must be met for a resource instance to match the selector.
Webhook implementations should handle requirements, but how to handle them is up to the webhook.
Since requirements can only limit the request, it is safe to authorize as unlimited request if the requirements
are not understood.
| `requirements[]`
| `object`
| FieldSelectorRequirement is a selector that contains values, a key, and an operator that
relates the key and values.
|===
=== .spec.customization.perspectives[].visibility.accessReview.missing[].fieldSelector.requirements
Description::
+
--
requirements is the parsed interpretation of a field selector.
All requirements must be met for a resource instance to match the selector.
Webhook implementations should handle requirements, but how to handle them is up to the webhook.
Since requirements can only limit the request, it is safe to authorize as unlimited request if the requirements
are not understood.
--
Type::
`array`
=== .spec.customization.perspectives[].visibility.accessReview.missing[].fieldSelector.requirements[]
Description::
+
--
FieldSelectorRequirement is a selector that contains values, a key, and an operator that
relates the key and values.
--
Type::
`object`
Required::
- `key`
- `operator`
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `key`
| `string`
| key is the field selector key that the requirement applies to.
| `operator`
| `string`
| operator represents a key's relationship to a set of values.
Valid operators are In, NotIn, Exists, DoesNotExist.
The list of operators may grow in the future.
| `values`
| `array (string)`
| values is an array of string values.
If the operator is In or NotIn, the values array must be non-empty.
If the operator is Exists or DoesNotExist, the values array must be empty.
|===
=== .spec.customization.perspectives[].visibility.accessReview.missing[].labelSelector
Description::
+
--
labelSelector describes the limitation on access based on labels. It can only limit access, not broaden it.
This field is alpha-level. To use this field, you must enable the
`AuthorizeWithSelectors` feature gate (disabled by default).
--
Type::
`object`
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `rawSelector`
| `string`
| rawSelector is the serialization of a field selector that would be included in a query parameter.
Webhook implementations are encouraged to ignore rawSelector.
The kube-apiserver's *SubjectAccessReview will parse the rawSelector as long as the requirements are not present.
| `requirements`
| `array`
| requirements is the parsed interpretation of a label selector.
All requirements must be met for a resource instance to match the selector.
Webhook implementations should handle requirements, but how to handle them is up to the webhook.
Since requirements can only limit the request, it is safe to authorize as unlimited request if the requirements
are not understood.
| `requirements[]`
| `object`
| A label selector requirement is a selector that contains values, a key, and an operator that
relates the key and values.
|===
=== .spec.customization.perspectives[].visibility.accessReview.missing[].labelSelector.requirements
Description::
+
--
requirements is the parsed interpretation of a label selector.
All requirements must be met for a resource instance to match the selector.
Webhook implementations should handle requirements, but how to handle them is up to the webhook.
Since requirements can only limit the request, it is safe to authorize as unlimited request if the requirements
are not understood.
--
Type::
`array`
=== .spec.customization.perspectives[].visibility.accessReview.missing[].labelSelector.requirements[]
Description::
+
--
A label selector requirement is a selector that contains values, a key, and an operator that
relates the key and values.
--
Type::
`object`
Required::
- `key`
- `operator`
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `key`
| `string`
| key is the label key that the selector applies to.
| `operator`
| `string`
| operator represents a key's relationship to a set of values.
Valid operators are In, NotIn, Exists and DoesNotExist.
| `values`
| `array (string)`
| values is an array of string values. If the operator is In or NotIn,
the values array must be non-empty. If the operator is Exists or DoesNotExist,
the values array must be empty. This array is replaced during a strategic
merge patch.
|===
=== .spec.customization.perspectives[].visibility.accessReview.required
Description::
@@ -998,34 +699,17 @@ Type::
|===
| Property | Type | Description
| `fieldSelector`
| `object`
| fieldSelector describes the limitation on access based on field. It can only limit access, not broaden it.
This field is alpha-level. To use this field, you must enable the
`AuthorizeWithSelectors` feature gate (disabled by default).
| `group`
| `string`
| Group is the API Group of the Resource. "*" means all.
| `labelSelector`
| `object`
| labelSelector describes the limitation on access based on labels. It can only limit access, not broaden it.
This field is alpha-level. To use this field, you must enable the
`AuthorizeWithSelectors` feature gate (disabled by default).
| `name`
| `string`
| Name is the name of the resource being requested for a "get" or deleted for a "delete". "" (empty) means all.
| `namespace`
| `string`
| Namespace is the namespace of the action being requested. Currently, there is no distinction between no namespace and all namespaces
"" (empty) is defaulted for LocalSubjectAccessReviews
"" (empty) is empty for cluster-scoped resources
"" (empty) means "all" for namespace scoped resources from a SubjectAccessReview or SelfSubjectAccessReview
| Namespace is the namespace of the action being requested. Currently, there is no distinction between no namespace and all namespaces "" (empty) is defaulted for LocalSubjectAccessReviews "" (empty) is empty for cluster-scoped resources "" (empty) means "all" for namespace scoped resources from a SubjectAccessReview or SelfSubjectAccessReview
| `resource`
| `string`
@@ -1043,204 +727,12 @@ This field is alpha-level. To use this field, you must enable the
| `string`
| Version is the API Version of the Resource. "*" means all.
|===
=== .spec.customization.perspectives[].visibility.accessReview.required[].fieldSelector
Description::
+
--
fieldSelector describes the limitation on access based on field. It can only limit access, not broaden it.
This field is alpha-level. To use this field, you must enable the
`AuthorizeWithSelectors` feature gate (disabled by default).
--
Type::
`object`
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `rawSelector`
| `string`
| rawSelector is the serialization of a field selector that would be included in a query parameter.
Webhook implementations are encouraged to ignore rawSelector.
The kube-apiserver's *SubjectAccessReview will parse the rawSelector as long as the requirements are not present.
| `requirements`
| `array`
| requirements is the parsed interpretation of a field selector.
All requirements must be met for a resource instance to match the selector.
Webhook implementations should handle requirements, but how to handle them is up to the webhook.
Since requirements can only limit the request, it is safe to authorize as unlimited request if the requirements
are not understood.
| `requirements[]`
| `object`
| FieldSelectorRequirement is a selector that contains values, a key, and an operator that
relates the key and values.
|===
=== .spec.customization.perspectives[].visibility.accessReview.required[].fieldSelector.requirements
Description::
+
--
requirements is the parsed interpretation of a field selector.
All requirements must be met for a resource instance to match the selector.
Webhook implementations should handle requirements, but how to handle them is up to the webhook.
Since requirements can only limit the request, it is safe to authorize as unlimited request if the requirements
are not understood.
--
Type::
`array`
=== .spec.customization.perspectives[].visibility.accessReview.required[].fieldSelector.requirements[]
Description::
+
--
FieldSelectorRequirement is a selector that contains values, a key, and an operator that
relates the key and values.
--
Type::
`object`
Required::
- `key`
- `operator`
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `key`
| `string`
| key is the field selector key that the requirement applies to.
| `operator`
| `string`
| operator represents a key's relationship to a set of values.
Valid operators are In, NotIn, Exists, DoesNotExist.
The list of operators may grow in the future.
| `values`
| `array (string)`
| values is an array of string values.
If the operator is In or NotIn, the values array must be non-empty.
If the operator is Exists or DoesNotExist, the values array must be empty.
|===
=== .spec.customization.perspectives[].visibility.accessReview.required[].labelSelector
Description::
+
--
labelSelector describes the limitation on access based on labels. It can only limit access, not broaden it.
This field is alpha-level. To use this field, you must enable the
`AuthorizeWithSelectors` feature gate (disabled by default).
--
Type::
`object`
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `rawSelector`
| `string`
| rawSelector is the serialization of a field selector that would be included in a query parameter.
Webhook implementations are encouraged to ignore rawSelector.
The kube-apiserver's *SubjectAccessReview will parse the rawSelector as long as the requirements are not present.
| `requirements`
| `array`
| requirements is the parsed interpretation of a label selector.
All requirements must be met for a resource instance to match the selector.
Webhook implementations should handle requirements, but how to handle them is up to the webhook.
Since requirements can only limit the request, it is safe to authorize as unlimited request if the requirements
are not understood.
| `requirements[]`
| `object`
| A label selector requirement is a selector that contains values, a key, and an operator that
relates the key and values.
|===
=== .spec.customization.perspectives[].visibility.accessReview.required[].labelSelector.requirements
Description::
+
--
requirements is the parsed interpretation of a label selector.
All requirements must be met for a resource instance to match the selector.
Webhook implementations should handle requirements, but how to handle them is up to the webhook.
Since requirements can only limit the request, it is safe to authorize as unlimited request if the requirements
are not understood.
--
Type::
`array`
=== .spec.customization.perspectives[].visibility.accessReview.required[].labelSelector.requirements[]
Description::
+
--
A label selector requirement is a selector that contains values, a key, and an operator that
relates the key and values.
--
Type::
`object`
Required::
- `key`
- `operator`
[cols="1,1,1",options="header"]
|===
| Property | Type | Description
| `key`
| `string`
| key is the label key that the selector applies to.
| `operator`
| `string`
| operator represents a key's relationship to a set of values.
Valid operators are In, NotIn, Exists and DoesNotExist.
| `values`
| `array (string)`
| values is an array of string values. If the operator is In or NotIn,
the values array must be non-empty. If the operator is Exists or DoesNotExist,
the values array must be empty. This array is replaced during a strategic
merge patch.
|===
=== .spec.customization.projectAccess
Description::
+
--
projectAccess allows customizing the available list of ClusterRoles in the Developer perspective
Project access page which can be used by a project admin to specify roles to other users and
restrict access within the project. If set, the list will replace the default ClusterRole options.
projectAccess allows customizing the available list of ClusterRoles in the Developer perspective Project access page which can be used by a project admin to specify roles to other users and restrict access within the project. If set, the list will replace the default ClusterRole options.
--
Type::
@@ -1255,8 +747,7 @@ Type::
| `availableClusterRoles`
| `array (string)`
| availableClusterRoles is the list of ClusterRole names that are assignable to users
through the project access tab.
| availableClusterRoles is the list of ClusterRole names that are assignable to users through the project access tab.
|===
=== .spec.customization.quickStarts
@@ -1285,9 +776,7 @@ Type::
Description::
+
--
ingress allows to configure the alternative ingress for the console.
This field is intended for clusters without ingress capability,
where access to routes is not possible.
ingress allows to configure the alternative ingress for the console. This field is intended for clusters without ingress capability, where access to routes is not possible.
--
Type::
@@ -1302,24 +791,11 @@ Type::
| `clientDownloadsURL`
| `string`
| clientDownloadsURL is a URL to be used as the address to download client binaries.
If not specified, the downloads route hostname will be used.
This field is required for clusters without ingress capability,
where access to routes is not possible.
The console operator will monitor the URL and may go degraded
if it's unreachable for an extended period.
Must use the HTTPS scheme.
| clientDownloadsURL is a URL to be used as the address to download client binaries. If not specified, the downloads route hostname will be used. This field is required for clusters without ingress capability, where access to routes is not possible. The console operator will monitor the URL and may go degraded if it's unreachable for an extended period. Must use the HTTPS scheme.
| `consoleURL`
| `string`
| consoleURL is a URL to be used as the base console address.
If not specified, the console route hostname will be used.
This field is required for clusters without ingress capability,
where access to routes is not possible.
Make sure that appropriate ingress is set up at this URL.
The console operator will monitor the URL and may go degraded
if it's unreachable for an extended period.
Must use the HTTPS scheme.
| consoleURL is a URL to be used as the base console address. If not specified, the console route hostname will be used. This field is required for clusters without ingress capability, where access to routes is not possible. Make sure that appropriate ingress is set up at this URL. The console operator will monitor the URL and may go degraded if it's unreachable for an extended period. Must use the HTTPS scheme.
|===
=== .spec.providers
@@ -1370,16 +846,7 @@ Type::
Description::
+
--
route contains hostname and secret reference that contains the serving certificate.
If a custom route is specified, a new route will be created with the
provided hostname, under which console will be available.
In case of custom hostname uses the default routing suffix of the cluster,
the Secret specification for a serving certificate will not be needed.
In case of custom hostname points to an arbitrary domain, manual DNS configurations steps are necessary.
The default console route will be maintained to reserve the default hostname
for console if the custom route is removed.
If not specified, default route will be used.
DEPRECATED
route contains hostname and secret reference that contains the serving certificate. If a custom route is specified, a new route will be created with the provided hostname, under which console will be available. In case of custom hostname uses the default routing suffix of the cluster, the Secret specification for a serving certificate will not be needed. In case of custom hostname points to an arbitrary domain, manual DNS configurations steps are necessary. The default console route will be maintained to reserve the default hostname for console if the custom route is removed. If not specified, default route will be used. DEPRECATED
--
Type::
@@ -1398,26 +865,14 @@ Type::
| `secret`
| `object`
| secret points to secret in the openshift-config namespace that contains custom
certificate and key and needs to be created manually by the cluster admin.
Referenced Secret is required to contain following key value pairs:
- "tls.crt" - to specifies custom certificate
- "tls.key" - to specifies private key of the custom certificate
If the custom hostname uses the default routing suffix of the cluster,
the Secret specification for a serving certificate will not be needed.
| secret points to secret in the openshift-config namespace that contains custom certificate and key and needs to be created manually by the cluster admin. Referenced Secret is required to contain following key value pairs: - "tls.crt" - to specifies custom certificate - "tls.key" - to specifies private key of the custom certificate If the custom hostname uses the default routing suffix of the cluster, the Secret specification for a serving certificate will not be needed.
|===
=== .spec.route.secret
Description::
+
--
secret points to secret in the openshift-config namespace that contains custom
certificate and key and needs to be created manually by the cluster admin.
Referenced Secret is required to contain following key value pairs:
- "tls.crt" - to specifies custom certificate
- "tls.key" - to specifies private key of the custom certificate
If the custom hostname uses the default routing suffix of the cluster,
the Secret specification for a serving certificate will not be needed.
secret points to secret in the openshift-config namespace that contains custom certificate and key and needs to be created manually by the cluster admin. Referenced Secret is required to contain following key value pairs: - "tls.crt" - to specifies custom certificate - "tls.key" - to specifies private key of the custom certificate If the custom hostname uses the default routing suffix of the cluster, the Secret specification for a serving certificate will not be needed.
--
Type::
@@ -1470,10 +925,6 @@ Type::
| `object`
| GenerationStatus keeps track of the generation for a given resource so that decisions about forced updates can be made.
| `latestAvailableRevision`
| `integer`
| latestAvailableRevision is the deploymentID of the most recent deployment
| `observedGeneration`
| `integer`
| observedGeneration is the last generation change you've dealt with
@@ -1511,8 +962,6 @@ Type::
`object`
Required::
- `lastTransitionTime`
- `status`
- `type`
@@ -1523,8 +972,7 @@ Required::
| `lastTransitionTime`
| `string`
| lastTransitionTime is the last time the condition transitioned from one status to another.
This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
|
| `message`
| `string`
@@ -1536,11 +984,11 @@ This should be when the underlying condition changed. If that is not known, the
| `status`
| `string`
| status of the condition, one of True, False, Unknown.
|
| `type`
| `string`
| type of condition in CamelCase or in foo.example.com/CamelCase.
|
|===
=== .status.generations
@@ -1566,11 +1014,6 @@ GenerationStatus keeps track of the generation for a given resource so that deci
Type::
`object`
Required::
- `group`
- `name`
- `namespace`
- `resource`

View File

@@ -11,9 +11,8 @@ toc::[]
Description::
+
--
CSISnapshotController provides a means to configure an operator to manage the CSI snapshots. `cluster` is the canonical name.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
CSISnapshotController provides a means to configure an operator to manage the CSI snapshots. `cluster` is the canonical name.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -69,11 +68,8 @@ Type::
| `logLevel`
| `string`
| logLevel is an intent based logging for an overall component. It does not give fine grained control, but it is a
simple way to manage coarse grained logging choices that operators have to interpret for their operands.
Valid values are: "Normal", "Debug", "Trace", "TraceAll".
Defaults to "Normal".
| logLevel is an intent based logging for an overall component. It does not give fine grained control, but it is a simple way to manage coarse grained logging choices that operators have to interpret for their operands.
Valid values are: "Normal", "Debug", "Trace", "TraceAll". Defaults to "Normal".
| `managementState`
| `string`
@@ -81,24 +77,16 @@ Defaults to "Normal".
| `observedConfig`
| ``
| observedConfig holds a sparse config that controller has observed from the cluster state. It exists in spec because
it is an input to the level for the operator
| observedConfig holds a sparse config that controller has observed from the cluster state. It exists in spec because it is an input to the level for the operator
| `operatorLogLevel`
| `string`
| operatorLogLevel is an intent based logging for the operator itself. It does not give fine grained control, but it is a
simple way to manage coarse grained logging choices that operators have to interpret for themselves.
Valid values are: "Normal", "Debug", "Trace", "TraceAll".
Defaults to "Normal".
| operatorLogLevel is an intent based logging for the operator itself. It does not give fine grained control, but it is a simple way to manage coarse grained logging choices that operators have to interpret for themselves.
Valid values are: "Normal", "Debug", "Trace", "TraceAll". Defaults to "Normal".
| `unsupportedConfigOverrides`
| ``
| unsupportedConfigOverrides overrides the final configuration that was computed by the operator.
Red Hat does not support the use of this field.
Misuse of this field could lead to unexpected behavior or conflict with other configuration options.
Seek guidance from the Red Hat support before using this field.
Use of this property blocks cluster upgrades, it must be removed before upgrading your cluster.
| unsupportedConfigOverrides overrides the final configuration that was computed by the operator. Red Hat does not support the use of this field. Misuse of this field could lead to unexpected behavior or conflict with other configuration options. Seek guidance from the Red Hat support before using this field. Use of this property blocks cluster upgrades, it must be removed before upgrading your cluster.
|===
=== .status
@@ -134,10 +122,6 @@ Type::
| `object`
| GenerationStatus keeps track of the generation for a given resource so that decisions about forced updates can be made.
| `latestAvailableRevision`
| `integer`
| latestAvailableRevision is the deploymentID of the most recent deployment
| `observedGeneration`
| `integer`
| observedGeneration is the last generation change you've dealt with
@@ -174,10 +158,6 @@ OperatorCondition is just the standard condition fields.
Type::
`object`
Required::
- `lastTransitionTime`
- `status`
- `type`
@@ -187,8 +167,7 @@ Required::
| `lastTransitionTime`
| `string`
| lastTransitionTime is the last time the condition transitioned from one status to another.
This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
|
| `message`
| `string`
@@ -200,11 +179,11 @@ This should be when the underlying condition changed. If that is not known, the
| `status`
| `string`
| status of the condition, one of True, False, Unknown.
|
| `type`
| `string`
| type of condition in CamelCase or in foo.example.com/CamelCase.
|
|===
=== .status.generations
@@ -230,11 +209,6 @@ GenerationStatus keeps track of the generation for a given resource so that deci
Type::
`object`
Required::
- `group`
- `name`
- `namespace`
- `resource`

View File

@@ -11,16 +11,10 @@ toc::[]
Description::
+
--
DNSRecord is a DNS record managed in the zones defined by
dns.config.openshift.io/cluster .spec.publicZone and .spec.privateZone.
Cluster admin manipulation of this resource is not supported. This resource
is only for internal communication of OpenShift operators.
If DNSManagementPolicy is "Unmanaged", the operator will not be responsible
for managing the DNS records on the cloud provider.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
DNSRecord is a DNS record managed in the zones defined by dns.config.openshift.io/cluster .spec.publicZone and .spec.privateZone.
Cluster admin manipulation of this resource is not supported. This resource is only for internal communication of OpenShift operators.
If DNSManagementPolicy is "Unmanaged", the operator will not be responsible for managing the DNS records on the cloud provider.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -80,16 +74,8 @@ Required::
| `dnsManagementPolicy`
| `string`
| dnsManagementPolicy denotes the current policy applied on the DNS
record. Records that have policy set as "Unmanaged" are ignored by
the ingress operator. This means that the DNS record on the cloud
provider is not managed by the operator, and the "Published" status
condition will be updated to "Unknown" status, since it is externally
managed. Any existing record on the cloud provider can be deleted at
the discretion of the cluster admin.
This field defaults to Managed. Valid values are "Managed" and
"Unmanaged".
| dnsManagementPolicy denotes the current policy applied on the DNS record. Records that have policy set as "Unmanaged" are ignored by the ingress operator. This means that the DNS record on the cloud provider is not managed by the operator, and the "Published" status condition will be updated to "Unknown" status, since it is externally managed. Any existing record on the cloud provider can be deleted at the discretion of the cluster admin.
This field defaults to Managed. Valid values are "Managed" and "Unmanaged".
| `dnsName`
| `string`
@@ -97,9 +83,7 @@ This field defaults to Managed. Valid values are "Managed" and
| `recordTTL`
| `integer`
| recordTTL is the record TTL in seconds. If zero, the default is 30.
RecordTTL will not be used in AWS regions Alias targets, but
will be used in CNAME targets, per AWS API contract.
| recordTTL is the record TTL in seconds. If zero, the default is 30. RecordTTL will not be used in AWS regions Alias targets, but will be used in CNAME targets, per AWS API contract.
| `recordType`
| `string`
@@ -129,12 +113,7 @@ Type::
| `observedGeneration`
| `integer`
| observedGeneration is the most recently observed generation of the
DNSRecord. When the DNSRecord is updated, the controller updates the
corresponding record in each managed zone. If an update for a
particular zone fails, that failure is recorded in the status
condition for the zone so that the controller can determine that it
needs to retry the update for that specific zone.
| observedGeneration is the most recently observed generation of the DNSRecord. When the DNSRecord is updated, the controller updates the corresponding record in each managed zone. If an update for a particular zone fails, that failure is recorded in the status condition for the zone so that the controller can determine that it needs to retry the update for that specific zone.
| `zones`
| `array`
@@ -177,11 +156,8 @@ Type::
| `conditions`
| `array`
| conditions are any conditions associated with the record in the zone.
If publishing the record succeeds, the "Published" condition will be
set with status "True" and upon failure it will be set to "False" along
with the reason and message describing the cause of the failure.
| conditions are any conditions associated with the record in the zone.
If publishing the record succeeds, the "Published" condition will be set with status "True" and upon failure it will be set to "False" along with the reason and message describing the cause of the failure.
| `conditions[]`
| `object`
@@ -196,11 +172,8 @@ with the reason and message describing the cause of the failure.
Description::
+
--
conditions are any conditions associated with the record in the zone.
If publishing the record succeeds, the "Published" condition will be
set with status "True" and upon failure it will be set to "False" along
with the reason and message describing the cause of the failure.
conditions are any conditions associated with the record in the zone.
If publishing the record succeeds, the "Published" condition will be set with status "True" and upon failure it will be set to "False" along with the reason and message describing the cause of the failure.
--
Type::
@@ -269,23 +242,15 @@ Type::
| `id`
| `string`
| id is the identifier that can be used to find the DNS hosted zone.
on AWS zone can be fetched using `ID` as id in [1]
on Azure zone can be fetched using `ID` as a pre-determined name in [2],
on GCP zone can be fetched using `ID` as a pre-determined name in [3].
[1]: https://docs.aws.amazon.com/cli/latest/reference/route53/get-hosted-zone.html#options
[2]: https://docs.microsoft.com/en-us/cli/azure/network/dns/zone?view=azure-cli-latest#az-network-dns-zone-show
[3]: https://cloud.google.com/dns/docs/reference/v1/managedZones/get
| id is the identifier that can be used to find the DNS hosted zone.
on AWS zone can be fetched using `ID` as id in [1] on Azure zone can be fetched using `ID` as a pre-determined name in [2], on GCP zone can be fetched using `ID` as a pre-determined name in [3].
[1]: https://docs.aws.amazon.com/cli/latest/reference/route53/get-hosted-zone.html#options [2]: https://docs.microsoft.com/en-us/cli/azure/network/dns/zone?view=azure-cli-latest#az-network-dns-zone-show [3]: https://cloud.google.com/dns/docs/reference/v1/managedZones/get
| `tags`
| `object (string)`
| tags can be used to query the DNS hosted zone.
on AWS, resourcegroupstaggingapi [1] can be used to fetch a zone using `Tags` as tag-filters,
[1]: https://docs.aws.amazon.com/cli/latest/reference/resourcegroupstaggingapi/get-resources.html#options
| tags can be used to query the DNS hosted zone.
on AWS, resourcegroupstaggingapi [1] can be used to fetch a zone using `Tags` as tag-filters,
[1]: https://docs.aws.amazon.com/cli/latest/reference/resourcegroupstaggingapi/get-resources.html#options
|===

View File

@@ -11,9 +11,8 @@ toc::[]
Description::
+
--
Etcd provides information to configure an operator to manage etcd.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
Etcd provides information to configure an operator to manage etcd.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -69,31 +68,20 @@ Type::
| `controlPlaneHardwareSpeed`
| `string`
| HardwareSpeed allows user to change the etcd tuning profile which configures
the latency parameters for heartbeat interval and leader election timeouts
allowing the cluster to tolerate longer round-trip-times between etcd members.
Valid values are "", "Standard" and "Slower".
"" means no opinion and the platform is left to choose a reasonable default
which is subject to change without notice.
| HardwareSpeed allows user to change the etcd tuning profile which configures the latency parameters for heartbeat interval and leader election timeouts allowing the cluster to tolerate longer round-trip-times between etcd members. Valid values are "", "Standard" and "Slower". "" means no opinion and the platform is left to choose a reasonable default which is subject to change without notice.
| `failedRevisionLimit`
| `integer`
| failedRevisionLimit is the number of failed static pod installer revisions to keep on disk and in the api
-1 = unlimited, 0 or unset = 5 (default)
| failedRevisionLimit is the number of failed static pod installer revisions to keep on disk and in the api -1 = unlimited, 0 or unset = 5 (default)
| `forceRedeploymentReason`
| `string`
| forceRedeploymentReason can be used to force the redeployment of the operand by providing a unique string.
This provides a mechanism to kick a previously failed deployment and provide a reason why you think it will work
this time instead of failing again on the same config.
| forceRedeploymentReason can be used to force the redeployment of the operand by providing a unique string. This provides a mechanism to kick a previously failed deployment and provide a reason why you think it will work this time instead of failing again on the same config.
| `logLevel`
| `string`
| logLevel is an intent based logging for an overall component. It does not give fine grained control, but it is a
simple way to manage coarse grained logging choices that operators have to interpret for their operands.
Valid values are: "Normal", "Debug", "Trace", "TraceAll".
Defaults to "Normal".
| logLevel is an intent based logging for an overall component. It does not give fine grained control, but it is a simple way to manage coarse grained logging choices that operators have to interpret for their operands.
Valid values are: "Normal", "Debug", "Trace", "TraceAll". Defaults to "Normal".
| `managementState`
| `string`
@@ -101,29 +89,20 @@ Defaults to "Normal".
| `observedConfig`
| ``
| observedConfig holds a sparse config that controller has observed from the cluster state. It exists in spec because
it is an input to the level for the operator
| observedConfig holds a sparse config that controller has observed from the cluster state. It exists in spec because it is an input to the level for the operator
| `operatorLogLevel`
| `string`
| operatorLogLevel is an intent based logging for the operator itself. It does not give fine grained control, but it is a
simple way to manage coarse grained logging choices that operators have to interpret for themselves.
Valid values are: "Normal", "Debug", "Trace", "TraceAll".
Defaults to "Normal".
| operatorLogLevel is an intent based logging for the operator itself. It does not give fine grained control, but it is a simple way to manage coarse grained logging choices that operators have to interpret for themselves.
Valid values are: "Normal", "Debug", "Trace", "TraceAll". Defaults to "Normal".
| `succeededRevisionLimit`
| `integer`
| succeededRevisionLimit is the number of successful static pod installer revisions to keep on disk and in the api
-1 = unlimited, 0 or unset = 5 (default)
| succeededRevisionLimit is the number of successful static pod installer revisions to keep on disk and in the api -1 = unlimited, 0 or unset = 5 (default)
| `unsupportedConfigOverrides`
| ``
| unsupportedConfigOverrides overrides the final configuration that was computed by the operator.
Red Hat does not support the use of this field.
Misuse of this field could lead to unexpected behavior or conflict with other configuration options.
Seek guidance from the Red Hat support before using this field.
Use of this property blocks cluster upgrades, it must be removed before upgrading your cluster.
| unsupportedConfigOverrides overrides the final configuration that was computed by the operator. Red Hat does not support the use of this field. Misuse of this field could lead to unexpected behavior or conflict with other configuration options. Seek guidance from the Red Hat support before using this field. Use of this property blocks cluster upgrades, it must be removed before upgrading your cluster.
|===
=== .status
@@ -216,8 +195,6 @@ Type::
`object`
Required::
- `lastTransitionTime`
- `status`
- `type`
@@ -228,8 +205,7 @@ Required::
| `lastTransitionTime`
| `string`
| lastTransitionTime is the last time the condition transitioned from one status to another.
This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
|
| `message`
| `string`
@@ -241,11 +217,11 @@ This should be when the underlying condition changed. If that is not known, the
| `status`
| `string`
| status of the condition, one of True, False, Unknown.
|
| `type`
| `string`
| type of condition in CamelCase or in foo.example.com/CamelCase.
|
|===
=== .status.generations
@@ -271,11 +247,6 @@ GenerationStatus keeps track of the generation for a given resource so that deci
Type::
`object`
Required::
- `group`
- `name`
- `namespace`
- `resource`

View File

@@ -11,10 +11,8 @@ toc::[]
Description::
+
--
ImageContentSourcePolicy holds cluster-wide information about how to handle registry mirror rules.
When multiple policies are defined, the outcome of the behavior is defined on each field.
Compatibility level 4: No compatibility is provided, the API can change at any point for any reason. These capabilities should not be used by applications needing long term support.
ImageContentSourcePolicy holds cluster-wide information about how to handle registry mirror rules. When multiple policies are defined, the outcome of the behavior is defined on each field.
Compatibility level 4: No compatibility is provided, the API can change at any point for any reason. These capabilities should not be used by applications needing long term support.
--
Type::
@@ -66,49 +64,22 @@ Type::
| `repositoryDigestMirrors`
| `array`
| repositoryDigestMirrors allows images referenced by image digests in pods to be
pulled from alternative mirrored repository locations. The image pull specification
provided to the pod will be compared to the source locations described in RepositoryDigestMirrors
and the image may be pulled down from any of the mirrors in the list instead of the
specified repository allowing administrators to choose a potentially faster mirror.
Only image pull specifications that have an image digest will have this behavior applied
to them - tags will continue to be pulled from the specified repository in the pull spec.
Each “source” repository is treated independently; configurations for different “source”
repositories dont interact.
When multiple policies are defined for the same “source” repository, the sets of defined
mirrors will be merged together, preserving the relative order of the mirrors, if possible.
For example, if policy A has mirrors `a, b, c` and policy B has mirrors `c, d, e`, the
mirrors will be used in the order `a, b, c, d, e`. If the orders of mirror entries conflict
(e.g. `a, b` vs. `b, a`) the configuration is not rejected but the resulting order is unspecified.
| repositoryDigestMirrors allows images referenced by image digests in pods to be pulled from alternative mirrored repository locations. The image pull specification provided to the pod will be compared to the source locations described in RepositoryDigestMirrors and the image may be pulled down from any of the mirrors in the list instead of the specified repository allowing administrators to choose a potentially faster mirror. Only image pull specifications that have an image digest will have this behavior applied to them - tags will continue to be pulled from the specified repository in the pull spec.
Each “source” repository is treated independently; configurations for different “source” repositories dont interact.
When multiple policies are defined for the same “source” repository, the sets of defined mirrors will be merged together, preserving the relative order of the mirrors, if possible. For example, if policy A has mirrors `a, b, c` and policy B has mirrors `c, d, e`, the mirrors will be used in the order `a, b, c, d, e`. If the orders of mirror entries conflict (e.g. `a, b` vs. `b, a`) the configuration is not rejected but the resulting order is unspecified.
| `repositoryDigestMirrors[]`
| `object`
| RepositoryDigestMirrors holds cluster-wide information about how to handle mirros in the registries config.
Note: the mirrors only work when pulling the images that are referenced by their digests.
| RepositoryDigestMirrors holds cluster-wide information about how to handle mirros in the registries config. Note: the mirrors only work when pulling the images that are referenced by their digests.
|===
=== .spec.repositoryDigestMirrors
Description::
+
--
repositoryDigestMirrors allows images referenced by image digests in pods to be
pulled from alternative mirrored repository locations. The image pull specification
provided to the pod will be compared to the source locations described in RepositoryDigestMirrors
and the image may be pulled down from any of the mirrors in the list instead of the
specified repository allowing administrators to choose a potentially faster mirror.
Only image pull specifications that have an image digest will have this behavior applied
to them - tags will continue to be pulled from the specified repository in the pull spec.
Each “source” repository is treated independently; configurations for different “source”
repositories dont interact.
When multiple policies are defined for the same “source” repository, the sets of defined
mirrors will be merged together, preserving the relative order of the mirrors, if possible.
For example, if policy A has mirrors `a, b, c` and policy B has mirrors `c, d, e`, the
mirrors will be used in the order `a, b, c, d, e`. If the orders of mirror entries conflict
(e.g. `a, b` vs. `b, a`) the configuration is not rejected but the resulting order is unspecified.
repositoryDigestMirrors allows images referenced by image digests in pods to be pulled from alternative mirrored repository locations. The image pull specification provided to the pod will be compared to the source locations described in RepositoryDigestMirrors and the image may be pulled down from any of the mirrors in the list instead of the specified repository allowing administrators to choose a potentially faster mirror. Only image pull specifications that have an image digest will have this behavior applied to them - tags will continue to be pulled from the specified repository in the pull spec.
Each “source” repository is treated independently; configurations for different “source” repositories dont interact.
When multiple policies are defined for the same “source” repository, the sets of defined mirrors will be merged together, preserving the relative order of the mirrors, if possible. For example, if policy A has mirrors `a, b, c` and policy B has mirrors `c, d, e`, the mirrors will be used in the order `a, b, c, d, e`. If the orders of mirror entries conflict (e.g. `a, b` vs. `b, a`) the configuration is not rejected but the resulting order is unspecified.
--
Type::
@@ -121,8 +92,7 @@ Type::
Description::
+
--
RepositoryDigestMirrors holds cluster-wide information about how to handle mirros in the registries config.
Note: the mirrors only work when pulling the images that are referenced by their digests.
RepositoryDigestMirrors holds cluster-wide information about how to handle mirros in the registries config. Note: the mirrors only work when pulling the images that are referenced by their digests.
--
Type::
@@ -139,12 +109,7 @@ Required::
| `mirrors`
| `array (string)`
| mirrors is one or more repositories that may also contain the same images.
The order of mirrors in this list is treated as the user's desired priority, while source
is by default considered lower priority than all mirrors. Other cluster configuration,
including (but not limited to) other repositoryDigestMirrors objects,
may impact the exact order mirrors are contacted in, or some mirrors may be contacted
in parallel, so this should be considered a preference rather than a guarantee of ordering.
| mirrors is one or more repositories that may also contain the same images. The order of mirrors in this list is treated as the user's desired priority, while source is by default considered lower priority than all mirrors. Other cluster configuration, including (but not limited to) other repositoryDigestMirrors objects, may impact the exact order mirrors are contacted in, or some mirrors may be contacted in parallel, so this should be considered a preference rather than a guarantee of ordering.
| `source`
| `string`

View File

@@ -11,9 +11,8 @@ toc::[]
Description::
+
--
KubeAPIServer provides information to configure an operator to manage kube-apiserver.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
KubeAPIServer provides information to configure an operator to manage kube-apiserver.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -69,22 +68,16 @@ Type::
| `failedRevisionLimit`
| `integer`
| failedRevisionLimit is the number of failed static pod installer revisions to keep on disk and in the api
-1 = unlimited, 0 or unset = 5 (default)
| failedRevisionLimit is the number of failed static pod installer revisions to keep on disk and in the api -1 = unlimited, 0 or unset = 5 (default)
| `forceRedeploymentReason`
| `string`
| forceRedeploymentReason can be used to force the redeployment of the operand by providing a unique string.
This provides a mechanism to kick a previously failed deployment and provide a reason why you think it will work
this time instead of failing again on the same config.
| forceRedeploymentReason can be used to force the redeployment of the operand by providing a unique string. This provides a mechanism to kick a previously failed deployment and provide a reason why you think it will work this time instead of failing again on the same config.
| `logLevel`
| `string`
| logLevel is an intent based logging for an overall component. It does not give fine grained control, but it is a
simple way to manage coarse grained logging choices that operators have to interpret for their operands.
Valid values are: "Normal", "Debug", "Trace", "TraceAll".
Defaults to "Normal".
| logLevel is an intent based logging for an overall component. It does not give fine grained control, but it is a simple way to manage coarse grained logging choices that operators have to interpret for their operands.
Valid values are: "Normal", "Debug", "Trace", "TraceAll". Defaults to "Normal".
| `managementState`
| `string`
@@ -92,29 +85,20 @@ Defaults to "Normal".
| `observedConfig`
| ``
| observedConfig holds a sparse config that controller has observed from the cluster state. It exists in spec because
it is an input to the level for the operator
| observedConfig holds a sparse config that controller has observed from the cluster state. It exists in spec because it is an input to the level for the operator
| `operatorLogLevel`
| `string`
| operatorLogLevel is an intent based logging for the operator itself. It does not give fine grained control, but it is a
simple way to manage coarse grained logging choices that operators have to interpret for themselves.
Valid values are: "Normal", "Debug", "Trace", "TraceAll".
Defaults to "Normal".
| operatorLogLevel is an intent based logging for the operator itself. It does not give fine grained control, but it is a simple way to manage coarse grained logging choices that operators have to interpret for themselves.
Valid values are: "Normal", "Debug", "Trace", "TraceAll". Defaults to "Normal".
| `succeededRevisionLimit`
| `integer`
| succeededRevisionLimit is the number of successful static pod installer revisions to keep on disk and in the api
-1 = unlimited, 0 or unset = 5 (default)
| succeededRevisionLimit is the number of successful static pod installer revisions to keep on disk and in the api -1 = unlimited, 0 or unset = 5 (default)
| `unsupportedConfigOverrides`
| ``
| unsupportedConfigOverrides overrides the final configuration that was computed by the operator.
Red Hat does not support the use of this field.
Misuse of this field could lead to unexpected behavior or conflict with other configuration options.
Seek guidance from the Red Hat support before using this field.
Use of this property blocks cluster upgrades, it must be removed before upgrading your cluster.
| unsupportedConfigOverrides overrides the final configuration that was computed by the operator. Red Hat does not support the use of this field. Misuse of this field could lead to unexpected behavior or conflict with other configuration options. Seek guidance from the Red Hat support before using this field. Use of this property blocks cluster upgrades, it must be removed before upgrading your cluster.
|===
=== .status
@@ -176,11 +160,7 @@ Type::
| `serviceAccountIssuers`
| `array`
| serviceAccountIssuers tracks history of used service account issuers.
The item without expiration time represents the currently used service account issuer.
The other items represents service account issuers that were used previously and are still being trusted.
The default expiration for the items is set by the platform and it defaults to 24h.
see: https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/#service-account-token-volume-projection
| serviceAccountIssuers tracks history of used service account issuers. The item without expiration time represents the currently used service account issuer. The other items represents service account issuers that were used previously and are still being trusted. The default expiration for the items is set by the platform and it defaults to 24h. see: https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/#service-account-token-volume-projection
| `serviceAccountIssuers[]`
| `object`
@@ -215,8 +195,6 @@ Type::
`object`
Required::
- `lastTransitionTime`
- `status`
- `type`
@@ -227,8 +205,7 @@ Required::
| `lastTransitionTime`
| `string`
| lastTransitionTime is the last time the condition transitioned from one status to another.
This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
|
| `message`
| `string`
@@ -240,11 +217,11 @@ This should be when the underlying condition changed. If that is not known, the
| `status`
| `string`
| status of the condition, one of True, False, Unknown.
|
| `type`
| `string`
| type of condition in CamelCase or in foo.example.com/CamelCase.
|
|===
=== .status.generations
@@ -270,11 +247,6 @@ GenerationStatus keeps track of the generation for a given resource so that deci
Type::
`object`
Required::
- `group`
- `name`
- `namespace`
- `resource`
@@ -380,11 +352,7 @@ Required::
Description::
+
--
serviceAccountIssuers tracks history of used service account issuers.
The item without expiration time represents the currently used service account issuer.
The other items represents service account issuers that were used previously and are still being trusted.
The default expiration for the items is set by the platform and it defaults to 24h.
see: https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/#service-account-token-volume-projection
serviceAccountIssuers tracks history of used service account issuers. The item without expiration time represents the currently used service account issuer. The other items represents service account issuers that were used previously and are still being trusted. The default expiration for the items is set by the platform and it defaults to 24h. see: https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/#service-account-token-volume-projection
--
Type::
@@ -412,12 +380,11 @@ Type::
| `expirationTime`
| `string`
| expirationTime is the time after which this service account issuer will be pruned and removed from the trusted list
of service account issuers.
| expirationTime is the time after which this service account issuer will be pruned and removed from the trusted list of service account issuers.
| `name`
| `string`
| name is the name of the service account issuer
| name is the name of the service account issuer ---
|===

View File

@@ -11,9 +11,8 @@ toc::[]
Description::
+
--
KubeControllerManager provides information to configure an operator to manage kube-controller-manager.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
KubeControllerManager provides information to configure an operator to manage kube-controller-manager.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -69,22 +68,16 @@ Type::
| `failedRevisionLimit`
| `integer`
| failedRevisionLimit is the number of failed static pod installer revisions to keep on disk and in the api
-1 = unlimited, 0 or unset = 5 (default)
| failedRevisionLimit is the number of failed static pod installer revisions to keep on disk and in the api -1 = unlimited, 0 or unset = 5 (default)
| `forceRedeploymentReason`
| `string`
| forceRedeploymentReason can be used to force the redeployment of the operand by providing a unique string.
This provides a mechanism to kick a previously failed deployment and provide a reason why you think it will work
this time instead of failing again on the same config.
| forceRedeploymentReason can be used to force the redeployment of the operand by providing a unique string. This provides a mechanism to kick a previously failed deployment and provide a reason why you think it will work this time instead of failing again on the same config.
| `logLevel`
| `string`
| logLevel is an intent based logging for an overall component. It does not give fine grained control, but it is a
simple way to manage coarse grained logging choices that operators have to interpret for their operands.
Valid values are: "Normal", "Debug", "Trace", "TraceAll".
Defaults to "Normal".
| logLevel is an intent based logging for an overall component. It does not give fine grained control, but it is a simple way to manage coarse grained logging choices that operators have to interpret for their operands.
Valid values are: "Normal", "Debug", "Trace", "TraceAll". Defaults to "Normal".
| `managementState`
| `string`
@@ -92,37 +85,24 @@ Defaults to "Normal".
| `observedConfig`
| ``
| observedConfig holds a sparse config that controller has observed from the cluster state. It exists in spec because
it is an input to the level for the operator
| observedConfig holds a sparse config that controller has observed from the cluster state. It exists in spec because it is an input to the level for the operator
| `operatorLogLevel`
| `string`
| operatorLogLevel is an intent based logging for the operator itself. It does not give fine grained control, but it is a
simple way to manage coarse grained logging choices that operators have to interpret for themselves.
Valid values are: "Normal", "Debug", "Trace", "TraceAll".
Defaults to "Normal".
| operatorLogLevel is an intent based logging for the operator itself. It does not give fine grained control, but it is a simple way to manage coarse grained logging choices that operators have to interpret for themselves.
Valid values are: "Normal", "Debug", "Trace", "TraceAll". Defaults to "Normal".
| `succeededRevisionLimit`
| `integer`
| succeededRevisionLimit is the number of successful static pod installer revisions to keep on disk and in the api
-1 = unlimited, 0 or unset = 5 (default)
| succeededRevisionLimit is the number of successful static pod installer revisions to keep on disk and in the api -1 = unlimited, 0 or unset = 5 (default)
| `unsupportedConfigOverrides`
| ``
| unsupportedConfigOverrides overrides the final configuration that was computed by the operator.
Red Hat does not support the use of this field.
Misuse of this field could lead to unexpected behavior or conflict with other configuration options.
Seek guidance from the Red Hat support before using this field.
Use of this property blocks cluster upgrades, it must be removed before upgrading your cluster.
| unsupportedConfigOverrides overrides the final configuration that was computed by the operator. Red Hat does not support the use of this field. Misuse of this field could lead to unexpected behavior or conflict with other configuration options. Seek guidance from the Red Hat support before using this field. Use of this property blocks cluster upgrades, it must be removed before upgrading your cluster.
| `useMoreSecureServiceCA`
| `boolean`
| useMoreSecureServiceCA indicates that the service-ca.crt provided in SA token volumes should include only
enough certificates to validate service serving certificates.
Once set to true, it cannot be set to false.
Even if someone finds a way to set it back to false, the service-ca.crt files that previously existed will
only have the more secure content.
| useMoreSecureServiceCA indicates that the service-ca.crt provided in SA token volumes should include only enough certificates to validate service serving certificates. Once set to true, it cannot be set to false. Even if someone finds a way to set it back to false, the service-ca.crt files that previously existed will only have the more secure content.
|===
=== .status
@@ -211,8 +191,6 @@ Type::
`object`
Required::
- `lastTransitionTime`
- `status`
- `type`
@@ -223,8 +201,7 @@ Required::
| `lastTransitionTime`
| `string`
| lastTransitionTime is the last time the condition transitioned from one status to another.
This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
|
| `message`
| `string`
@@ -236,11 +213,11 @@ This should be when the underlying condition changed. If that is not known, the
| `status`
| `string`
| status of the condition, one of True, False, Unknown.
|
| `type`
| `string`
| type of condition in CamelCase or in foo.example.com/CamelCase.
|
|===
=== .status.generations
@@ -266,11 +243,6 @@ GenerationStatus keeps track of the generation for a given resource so that deci
Type::
`object`
Required::
- `group`
- `name`
- `namespace`
- `resource`

View File

@@ -11,9 +11,8 @@ toc::[]
Description::
+
--
KubeScheduler provides information to configure an operator to manage scheduler.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
KubeScheduler provides information to configure an operator to manage scheduler.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -69,22 +68,16 @@ Type::
| `failedRevisionLimit`
| `integer`
| failedRevisionLimit is the number of failed static pod installer revisions to keep on disk and in the api
-1 = unlimited, 0 or unset = 5 (default)
| failedRevisionLimit is the number of failed static pod installer revisions to keep on disk and in the api -1 = unlimited, 0 or unset = 5 (default)
| `forceRedeploymentReason`
| `string`
| forceRedeploymentReason can be used to force the redeployment of the operand by providing a unique string.
This provides a mechanism to kick a previously failed deployment and provide a reason why you think it will work
this time instead of failing again on the same config.
| forceRedeploymentReason can be used to force the redeployment of the operand by providing a unique string. This provides a mechanism to kick a previously failed deployment and provide a reason why you think it will work this time instead of failing again on the same config.
| `logLevel`
| `string`
| logLevel is an intent based logging for an overall component. It does not give fine grained control, but it is a
simple way to manage coarse grained logging choices that operators have to interpret for their operands.
Valid values are: "Normal", "Debug", "Trace", "TraceAll".
Defaults to "Normal".
| logLevel is an intent based logging for an overall component. It does not give fine grained control, but it is a simple way to manage coarse grained logging choices that operators have to interpret for their operands.
Valid values are: "Normal", "Debug", "Trace", "TraceAll". Defaults to "Normal".
| `managementState`
| `string`
@@ -92,29 +85,20 @@ Defaults to "Normal".
| `observedConfig`
| ``
| observedConfig holds a sparse config that controller has observed from the cluster state. It exists in spec because
it is an input to the level for the operator
| observedConfig holds a sparse config that controller has observed from the cluster state. It exists in spec because it is an input to the level for the operator
| `operatorLogLevel`
| `string`
| operatorLogLevel is an intent based logging for the operator itself. It does not give fine grained control, but it is a
simple way to manage coarse grained logging choices that operators have to interpret for themselves.
Valid values are: "Normal", "Debug", "Trace", "TraceAll".
Defaults to "Normal".
| operatorLogLevel is an intent based logging for the operator itself. It does not give fine grained control, but it is a simple way to manage coarse grained logging choices that operators have to interpret for themselves.
Valid values are: "Normal", "Debug", "Trace", "TraceAll". Defaults to "Normal".
| `succeededRevisionLimit`
| `integer`
| succeededRevisionLimit is the number of successful static pod installer revisions to keep on disk and in the api
-1 = unlimited, 0 or unset = 5 (default)
| succeededRevisionLimit is the number of successful static pod installer revisions to keep on disk and in the api -1 = unlimited, 0 or unset = 5 (default)
| `unsupportedConfigOverrides`
| ``
| unsupportedConfigOverrides overrides the final configuration that was computed by the operator.
Red Hat does not support the use of this field.
Misuse of this field could lead to unexpected behavior or conflict with other configuration options.
Seek guidance from the Red Hat support before using this field.
Use of this property blocks cluster upgrades, it must be removed before upgrading your cluster.
| unsupportedConfigOverrides overrides the final configuration that was computed by the operator. Red Hat does not support the use of this field. Misuse of this field could lead to unexpected behavior or conflict with other configuration options. Seek guidance from the Red Hat support before using this field. Use of this property blocks cluster upgrades, it must be removed before upgrading your cluster.
|===
=== .status
@@ -203,8 +187,6 @@ Type::
`object`
Required::
- `lastTransitionTime`
- `status`
- `type`
@@ -215,8 +197,7 @@ Required::
| `lastTransitionTime`
| `string`
| lastTransitionTime is the last time the condition transitioned from one status to another.
This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
|
| `message`
| `string`
@@ -228,11 +209,11 @@ This should be when the underlying condition changed. If that is not known, the
| `status`
| `string`
| status of the condition, one of True, False, Unknown.
|
| `type`
| `string`
| type of condition in CamelCase or in foo.example.com/CamelCase.
|
|===
=== .status.generations
@@ -258,11 +239,6 @@ GenerationStatus keeps track of the generation for a given resource so that deci
Type::
`object`
Required::
- `group`
- `name`
- `namespace`
- `resource`

View File

@@ -11,9 +11,8 @@ toc::[]
Description::
+
--
MachineConfiguration provides information to configure an operator to manage Machine Configuration.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
MachineConfiguration provides information to configure an operator to manage Machine Configuration.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -69,30 +68,20 @@ Type::
| `failedRevisionLimit`
| `integer`
| failedRevisionLimit is the number of failed static pod installer revisions to keep on disk and in the api
-1 = unlimited, 0 or unset = 5 (default)
| failedRevisionLimit is the number of failed static pod installer revisions to keep on disk and in the api -1 = unlimited, 0 or unset = 5 (default)
| `forceRedeploymentReason`
| `string`
| forceRedeploymentReason can be used to force the redeployment of the operand by providing a unique string.
This provides a mechanism to kick a previously failed deployment and provide a reason why you think it will work
this time instead of failing again on the same config.
| forceRedeploymentReason can be used to force the redeployment of the operand by providing a unique string. This provides a mechanism to kick a previously failed deployment and provide a reason why you think it will work this time instead of failing again on the same config.
| `logLevel`
| `string`
| logLevel is an intent based logging for an overall component. It does not give fine grained control, but it is a
simple way to manage coarse grained logging choices that operators have to interpret for their operands.
Valid values are: "Normal", "Debug", "Trace", "TraceAll".
Defaults to "Normal".
| logLevel is an intent based logging for an overall component. It does not give fine grained control, but it is a simple way to manage coarse grained logging choices that operators have to interpret for their operands.
Valid values are: "Normal", "Debug", "Trace", "TraceAll". Defaults to "Normal".
| `managedBootImages`
| `object`
| managedBootImages allows configuration for the management of boot images for machine
resources within the cluster. This configuration allows users to select resources that should
be updated to the latest boot images during cluster upgrades, ensuring that new machines
always boot with the current cluster version's boot image. When omitted, no boot images
will be updated.
| managedBootImages allows configuration for the management of boot images for machine resources within the cluster. This configuration allows users to select resources that should be updated to the latest boot images during cluster upgrades, ensuring that new machines always boot with the current cluster version's boot image. When omitted, no boot images will be updated.
| `managementState`
| `string`
@@ -100,47 +89,31 @@ will be updated.
| `nodeDisruptionPolicy`
| `object`
| nodeDisruptionPolicy allows an admin to set granular node disruption actions for
MachineConfig-based updates, such as drains, service reloads, etc. Specifying this will allow
for less downtime when doing small configuration updates to the cluster. This configuration
has no effect on cluster upgrades which will still incur node disruption where required.
| nodeDisruptionPolicy allows an admin to set granular node disruption actions for MachineConfig-based updates, such as drains, service reloads, etc. Specifying this will allow for less downtime when doing small configuration updates to the cluster. This configuration has no effect on cluster upgrades which will still incur node disruption where required.
| `observedConfig`
| ``
| observedConfig holds a sparse config that controller has observed from the cluster state. It exists in spec because
it is an input to the level for the operator
| observedConfig holds a sparse config that controller has observed from the cluster state. It exists in spec because it is an input to the level for the operator
| `operatorLogLevel`
| `string`
| operatorLogLevel is an intent based logging for the operator itself. It does not give fine grained control, but it is a
simple way to manage coarse grained logging choices that operators have to interpret for themselves.
Valid values are: "Normal", "Debug", "Trace", "TraceAll".
Defaults to "Normal".
| operatorLogLevel is an intent based logging for the operator itself. It does not give fine grained control, but it is a simple way to manage coarse grained logging choices that operators have to interpret for themselves.
Valid values are: "Normal", "Debug", "Trace", "TraceAll". Defaults to "Normal".
| `succeededRevisionLimit`
| `integer`
| succeededRevisionLimit is the number of successful static pod installer revisions to keep on disk and in the api
-1 = unlimited, 0 or unset = 5 (default)
| succeededRevisionLimit is the number of successful static pod installer revisions to keep on disk and in the api -1 = unlimited, 0 or unset = 5 (default)
| `unsupportedConfigOverrides`
| ``
| unsupportedConfigOverrides overrides the final configuration that was computed by the operator.
Red Hat does not support the use of this field.
Misuse of this field could lead to unexpected behavior or conflict with other configuration options.
Seek guidance from the Red Hat support before using this field.
Use of this property blocks cluster upgrades, it must be removed before upgrading your cluster.
| unsupportedConfigOverrides overrides the final configuration that was computed by the operator. Red Hat does not support the use of this field. Misuse of this field could lead to unexpected behavior or conflict with other configuration options. Seek guidance from the Red Hat support before using this field. Use of this property blocks cluster upgrades, it must be removed before upgrading your cluster.
|===
=== .spec.managedBootImages
Description::
+
--
managedBootImages allows configuration for the management of boot images for machine
resources within the cluster. This configuration allows users to select resources that should
be updated to the latest boot images during cluster upgrades, ensuring that new machines
always boot with the current cluster version's boot image. When omitted, no boot images
will be updated.
managedBootImages allows configuration for the management of boot images for machine resources within the cluster. This configuration allows users to select resources that should be updated to the latest boot images during cluster upgrades, ensuring that new machines always boot with the current cluster version's boot image. When omitted, no boot images will be updated.
--
Type::
@@ -155,21 +128,18 @@ Type::
| `machineManagers`
| `array`
| machineManagers can be used to register machine management resources for boot image updates. The Machine Config Operator
will watch for changes to this list. Only one entry is permitted per type of machine management resource.
| machineManagers can be used to register machine management resources for boot image updates. The Machine Config Operator will watch for changes to this list. Only one entry is permitted per type of machine management resource.
| `machineManagers[]`
| `object`
| MachineManager describes a target machine resource that is registered for boot image updates. It stores identifying information
such as the resource type and the API Group of the resource. It also provides granular control via the selection field.
| MachineManager describes a target machine resource that is registered for boot image updates. It stores identifying information such as the resource type and the API Group of the resource. It also provides granular control via the selection field.
|===
=== .spec.managedBootImages.machineManagers
Description::
+
--
machineManagers can be used to register machine management resources for boot image updates. The Machine Config Operator
will watch for changes to this list. Only one entry is permitted per type of machine management resource.
machineManagers can be used to register machine management resources for boot image updates. The Machine Config Operator will watch for changes to this list. Only one entry is permitted per type of machine management resource.
--
Type::
@@ -182,8 +152,7 @@ Type::
Description::
+
--
MachineManager describes a target machine resource that is registered for boot image updates. It stores identifying information
such as the resource type and the API Group of the resource. It also provides granular control via the selection field.
MachineManager describes a target machine resource that is registered for boot image updates. It stores identifying information such as the resource type and the API Group of the resource. It also provides granular control via the selection field.
--
Type::
@@ -202,15 +171,11 @@ Required::
| `apiGroup`
| `string`
| apiGroup is name of the APIGroup that the machine management resource belongs to.
The only current valid value is machine.openshift.io.
machine.openshift.io means that the machine manager will only register resources that belong to OpenShift machine API group.
| apiGroup is name of the APIGroup that the machine management resource belongs to. The only current valid value is machine.openshift.io. machine.openshift.io means that the machine manager will only register resources that belong to OpenShift machine API group.
| `resource`
| `string`
| resource is the machine management resource's type.
The only current valid value is machinesets.
machinesets means that the machine manager will only register resources of the kind MachineSet.
| resource is the machine management resource's type. The only current valid value is machinesets. machinesets means that the machine manager will only register resources of the kind MachineSet.
| `selection`
| `object`
@@ -238,23 +203,18 @@ Required::
| `mode`
| `string`
| mode determines how machine managers will be selected for updates.
Valid values are All and Partial.
All means that every resource matched by the machine manager will be updated.
Partial requires specified selector(s) and allows customisation of which resources matched by the machine manager will be updated.
| mode determines how machine managers will be selected for updates. Valid values are All and Partial. All means that every resource matched by the machine manager will be updated. Partial requires specified selector(s) and allows customisation of which resources matched by the machine manager will be updated.
| `partial`
| `object`
| partial provides label selector(s) that can be used to match machine management resources.
Only permitted when mode is set to "Partial".
| partial provides label selector(s) that can be used to match machine management resources. Only permitted when mode is set to "Partial".
|===
=== .spec.managedBootImages.machineManagers[].selection.partial
Description::
+
--
partial provides label selector(s) that can be used to match machine management resources.
Only permitted when mode is set to "Partial".
partial provides label selector(s) that can be used to match machine management resources. Only permitted when mode is set to "Partial".
--
Type::
@@ -297,14 +257,11 @@ Type::
| `matchExpressions[]`
| `object`
| A label selector requirement is a selector that contains values, a key, and an operator that
relates the key and values.
| A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
| `matchLabels`
| `object (string)`
| matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
map is equivalent to an element of matchExpressions, whose key field is "key", the
operator is "In", and the values array contains only "value". The requirements are ANDed.
| matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
|===
=== .spec.managedBootImages.machineManagers[].selection.partial.machineResourceSelector.matchExpressions
@@ -324,8 +281,7 @@ Type::
Description::
+
--
A label selector requirement is a selector that contains values, a key, and an operator that
relates the key and values.
A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
--
Type::
@@ -347,25 +303,18 @@ Required::
| `operator`
| `string`
| operator represents a key's relationship to a set of values.
Valid operators are In, NotIn, Exists and DoesNotExist.
| operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
| `values`
| `array (string)`
| values is an array of string values. If the operator is In or NotIn,
the values array must be non-empty. If the operator is Exists or DoesNotExist,
the values array must be empty. This array is replaced during a strategic
merge patch.
| values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
|===
=== .spec.nodeDisruptionPolicy
Description::
+
--
nodeDisruptionPolicy allows an admin to set granular node disruption actions for
MachineConfig-based updates, such as drains, service reloads, etc. Specifying this will allow
for less downtime when doing small configuration updates to the cluster. This configuration
has no effect on cluster upgrades which will still incur node disruption where required.
nodeDisruptionPolicy allows an admin to set granular node disruption actions for MachineConfig-based updates, such as drains, service reloads, etc. Specifying this will allow for less downtime when doing small configuration updates to the cluster. This configuration has no effect on cluster upgrades which will still incur node disruption where required.
--
Type::
@@ -380,8 +329,7 @@ Type::
| `files`
| `array`
| files is a list of MachineConfig file definitions and actions to take to changes on those paths
This list supports a maximum of 50 entries.
| files is a list of MachineConfig file definitions and actions to take to changes on those paths This list supports a maximum of 50 entries.
| `files[]`
| `object`
@@ -389,13 +337,11 @@ This list supports a maximum of 50 entries.
| `sshkey`
| `object`
| sshkey maps to the ignition.sshkeys field in the MachineConfig object, definition an action for this
will apply to all sshkey changes in the cluster
| sshkey maps to the ignition.sshkeys field in the MachineConfig object, definition an action for this will apply to all sshkey changes in the cluster
| `units`
| `array`
| units is a list MachineConfig unit definitions and actions to take on changes to those services
This list supports a maximum of 50 entries.
| units is a list MachineConfig unit definitions and actions to take on changes to those services This list supports a maximum of 50 entries.
| `units[]`
| `object`
@@ -406,8 +352,7 @@ This list supports a maximum of 50 entries.
Description::
+
--
files is a list of MachineConfig file definitions and actions to take to changes on those paths
This list supports a maximum of 50 entries.
files is a list of MachineConfig file definitions and actions to take to changes on those paths This list supports a maximum of 50 entries.
--
Type::
@@ -438,13 +383,7 @@ Required::
| `actions`
| `array`
| actions represents the series of commands to be executed on changes to the file at
the corresponding file path. Actions will be applied in the order that
they are set in this list. If there are other incoming changes to other MachineConfig
entries in the same update that require a reboot, the reboot will supercede these actions.
Valid actions are Reboot, Drain, Reload, DaemonReload and None.
The Reboot action and the None action cannot be used in conjunction with any of the other actions.
This list supports a maximum of 10 entries.
| actions represents the series of commands to be executed on changes to the file at the corresponding file path. Actions will be applied in the order that they are set in this list. If there are other incoming changes to other MachineConfig entries in the same update that require a reboot, the reboot will supercede these actions. Valid actions are Reboot, Drain, Reload, DaemonReload and None. The Reboot action and the None action cannot be used in conjunction with any of the other actions. This list supports a maximum of 10 entries.
| `actions[]`
| `object`
@@ -452,21 +391,14 @@ This list supports a maximum of 10 entries.
| `path`
| `string`
| path is the location of a file being managed through a MachineConfig.
The Actions in the policy will apply to changes to the file at this path.
| path is the location of a file being managed through a MachineConfig. The Actions in the policy will apply to changes to the file at this path.
|===
=== .spec.nodeDisruptionPolicy.files[].actions
Description::
+
--
actions represents the series of commands to be executed on changes to the file at
the corresponding file path. Actions will be applied in the order that
they are set in this list. If there are other incoming changes to other MachineConfig
entries in the same update that require a reboot, the reboot will supercede these actions.
Valid actions are Reboot, Drain, Reload, DaemonReload and None.
The Reboot action and the None action cannot be used in conjunction with any of the other actions.
This list supports a maximum of 10 entries.
actions represents the series of commands to be executed on changes to the file at the corresponding file path. Actions will be applied in the order that they are set in this list. If there are other incoming changes to other MachineConfig entries in the same update that require a reboot, the reboot will supercede these actions. Valid actions are Reboot, Drain, Reload, DaemonReload and None. The Reboot action and the None action cannot be used in conjunction with any of the other actions. This list supports a maximum of 10 entries.
--
Type::
@@ -504,10 +436,7 @@ Required::
| `type`
| `string`
| type represents the commands that will be carried out if this NodeDisruptionPolicySpecActionType is executed
Valid values are Reboot, Drain, Reload, Restart, DaemonReload and None.
reload/restart requires a corresponding service target specified in the reload/restart field.
Other values require no further configuration
| type represents the commands that will be carried out if this NodeDisruptionPolicySpecActionType is executed Valid values are Reboot, Drain, Reload, Restart, DaemonReload and None. reload/restart requires a corresponding service target specified in the reload/restart field. Other values require no further configuration
|===
=== .spec.nodeDisruptionPolicy.files[].actions[].reload
@@ -531,10 +460,7 @@ Required::
| `serviceName`
| `string`
| serviceName is the full name (e.g. crio.service) of the service to be reloaded
Service names should be of the format ${NAME}${SERVICETYPE} and can up to 255 characters long.
${NAME} must be atleast 1 character long and can only consist of alphabets, digits, ":", "-", "_", ".", and "\".
${SERVICETYPE} must be one of ".service", ".socket", ".device", ".mount", ".automount", ".swap", ".target", ".path", ".timer", ".snapshot", ".slice" or ".scope".
| serviceName is the full name (e.g. crio.service) of the service to be reloaded Service names should be of the format ${NAME}${SERVICETYPE} and can up to 255 characters long. ${NAME} must be atleast 1 character long and can only consist of alphabets, digits, ":", "-", "_", ".", and "\". ${SERVICETYPE} must be one of ".service", ".socket", ".device", ".mount", ".automount", ".swap", ".target", ".path", ".timer", ".snapshot", ".slice" or ".scope".
|===
=== .spec.nodeDisruptionPolicy.files[].actions[].restart
@@ -558,18 +484,14 @@ Required::
| `serviceName`
| `string`
| serviceName is the full name (e.g. crio.service) of the service to be restarted
Service names should be of the format ${NAME}${SERVICETYPE} and can up to 255 characters long.
${NAME} must be atleast 1 character long and can only consist of alphabets, digits, ":", "-", "_", ".", and "\".
${SERVICETYPE} must be one of ".service", ".socket", ".device", ".mount", ".automount", ".swap", ".target", ".path", ".timer", ".snapshot", ".slice" or ".scope".
| serviceName is the full name (e.g. crio.service) of the service to be restarted Service names should be of the format ${NAME}${SERVICETYPE} and can up to 255 characters long. ${NAME} must be atleast 1 character long and can only consist of alphabets, digits, ":", "-", "_", ".", and "\". ${SERVICETYPE} must be one of ".service", ".socket", ".device", ".mount", ".automount", ".swap", ".target", ".path", ".timer", ".snapshot", ".slice" or ".scope".
|===
=== .spec.nodeDisruptionPolicy.sshkey
Description::
+
--
sshkey maps to the ignition.sshkeys field in the MachineConfig object, definition an action for this
will apply to all sshkey changes in the cluster
sshkey maps to the ignition.sshkeys field in the MachineConfig object, definition an action for this will apply to all sshkey changes in the cluster
--
Type::
@@ -586,13 +508,7 @@ Required::
| `actions`
| `array`
| actions represents the series of commands to be executed on changes to the file at
the corresponding file path. Actions will be applied in the order that
they are set in this list. If there are other incoming changes to other MachineConfig
entries in the same update that require a reboot, the reboot will supercede these actions.
Valid actions are Reboot, Drain, Reload, DaemonReload and None.
The Reboot action and the None action cannot be used in conjunction with any of the other actions.
This list supports a maximum of 10 entries.
| actions represents the series of commands to be executed on changes to the file at the corresponding file path. Actions will be applied in the order that they are set in this list. If there are other incoming changes to other MachineConfig entries in the same update that require a reboot, the reboot will supercede these actions. Valid actions are Reboot, Drain, Reload, DaemonReload and None. The Reboot action and the None action cannot be used in conjunction with any of the other actions. This list supports a maximum of 10 entries.
| `actions[]`
| `object`
@@ -603,13 +519,7 @@ This list supports a maximum of 10 entries.
Description::
+
--
actions represents the series of commands to be executed on changes to the file at
the corresponding file path. Actions will be applied in the order that
they are set in this list. If there are other incoming changes to other MachineConfig
entries in the same update that require a reboot, the reboot will supercede these actions.
Valid actions are Reboot, Drain, Reload, DaemonReload and None.
The Reboot action and the None action cannot be used in conjunction with any of the other actions.
This list supports a maximum of 10 entries.
actions represents the series of commands to be executed on changes to the file at the corresponding file path. Actions will be applied in the order that they are set in this list. If there are other incoming changes to other MachineConfig entries in the same update that require a reboot, the reboot will supercede these actions. Valid actions are Reboot, Drain, Reload, DaemonReload and None. The Reboot action and the None action cannot be used in conjunction with any of the other actions. This list supports a maximum of 10 entries.
--
Type::
@@ -647,10 +557,7 @@ Required::
| `type`
| `string`
| type represents the commands that will be carried out if this NodeDisruptionPolicySpecActionType is executed
Valid values are Reboot, Drain, Reload, Restart, DaemonReload and None.
reload/restart requires a corresponding service target specified in the reload/restart field.
Other values require no further configuration
| type represents the commands that will be carried out if this NodeDisruptionPolicySpecActionType is executed Valid values are Reboot, Drain, Reload, Restart, DaemonReload and None. reload/restart requires a corresponding service target specified in the reload/restart field. Other values require no further configuration
|===
=== .spec.nodeDisruptionPolicy.sshkey.actions[].reload
@@ -674,10 +581,7 @@ Required::
| `serviceName`
| `string`
| serviceName is the full name (e.g. crio.service) of the service to be reloaded
Service names should be of the format ${NAME}${SERVICETYPE} and can up to 255 characters long.
${NAME} must be atleast 1 character long and can only consist of alphabets, digits, ":", "-", "_", ".", and "\".
${SERVICETYPE} must be one of ".service", ".socket", ".device", ".mount", ".automount", ".swap", ".target", ".path", ".timer", ".snapshot", ".slice" or ".scope".
| serviceName is the full name (e.g. crio.service) of the service to be reloaded Service names should be of the format ${NAME}${SERVICETYPE} and can up to 255 characters long. ${NAME} must be atleast 1 character long and can only consist of alphabets, digits, ":", "-", "_", ".", and "\". ${SERVICETYPE} must be one of ".service", ".socket", ".device", ".mount", ".automount", ".swap", ".target", ".path", ".timer", ".snapshot", ".slice" or ".scope".
|===
=== .spec.nodeDisruptionPolicy.sshkey.actions[].restart
@@ -701,18 +605,14 @@ Required::
| `serviceName`
| `string`
| serviceName is the full name (e.g. crio.service) of the service to be restarted
Service names should be of the format ${NAME}${SERVICETYPE} and can up to 255 characters long.
${NAME} must be atleast 1 character long and can only consist of alphabets, digits, ":", "-", "_", ".", and "\".
${SERVICETYPE} must be one of ".service", ".socket", ".device", ".mount", ".automount", ".swap", ".target", ".path", ".timer", ".snapshot", ".slice" or ".scope".
| serviceName is the full name (e.g. crio.service) of the service to be restarted Service names should be of the format ${NAME}${SERVICETYPE} and can up to 255 characters long. ${NAME} must be atleast 1 character long and can only consist of alphabets, digits, ":", "-", "_", ".", and "\". ${SERVICETYPE} must be one of ".service", ".socket", ".device", ".mount", ".automount", ".swap", ".target", ".path", ".timer", ".snapshot", ".slice" or ".scope".
|===
=== .spec.nodeDisruptionPolicy.units
Description::
+
--
units is a list MachineConfig unit definitions and actions to take on changes to those services
This list supports a maximum of 50 entries.
units is a list MachineConfig unit definitions and actions to take on changes to those services This list supports a maximum of 50 entries.
--
Type::
@@ -743,13 +643,7 @@ Required::
| `actions`
| `array`
| actions represents the series of commands to be executed on changes to the file at
the corresponding file path. Actions will be applied in the order that
they are set in this list. If there are other incoming changes to other MachineConfig
entries in the same update that require a reboot, the reboot will supercede these actions.
Valid actions are Reboot, Drain, Reload, DaemonReload and None.
The Reboot action and the None action cannot be used in conjunction with any of the other actions.
This list supports a maximum of 10 entries.
| actions represents the series of commands to be executed on changes to the file at the corresponding file path. Actions will be applied in the order that they are set in this list. If there are other incoming changes to other MachineConfig entries in the same update that require a reboot, the reboot will supercede these actions. Valid actions are Reboot, Drain, Reload, DaemonReload and None. The Reboot action and the None action cannot be used in conjunction with any of the other actions. This list supports a maximum of 10 entries.
| `actions[]`
| `object`
@@ -757,24 +651,14 @@ This list supports a maximum of 10 entries.
| `name`
| `string`
| name represents the service name of a systemd service managed through a MachineConfig
Actions specified will be applied for changes to the named service.
Service names should be of the format ${NAME}${SERVICETYPE} and can up to 255 characters long.
${NAME} must be atleast 1 character long and can only consist of alphabets, digits, ":", "-", "_", ".", and "\".
${SERVICETYPE} must be one of ".service", ".socket", ".device", ".mount", ".automount", ".swap", ".target", ".path", ".timer", ".snapshot", ".slice" or ".scope".
| name represents the service name of a systemd service managed through a MachineConfig Actions specified will be applied for changes to the named service. Service names should be of the format ${NAME}${SERVICETYPE} and can up to 255 characters long. ${NAME} must be atleast 1 character long and can only consist of alphabets, digits, ":", "-", "_", ".", and "\". ${SERVICETYPE} must be one of ".service", ".socket", ".device", ".mount", ".automount", ".swap", ".target", ".path", ".timer", ".snapshot", ".slice" or ".scope".
|===
=== .spec.nodeDisruptionPolicy.units[].actions
Description::
+
--
actions represents the series of commands to be executed on changes to the file at
the corresponding file path. Actions will be applied in the order that
they are set in this list. If there are other incoming changes to other MachineConfig
entries in the same update that require a reboot, the reboot will supercede these actions.
Valid actions are Reboot, Drain, Reload, DaemonReload and None.
The Reboot action and the None action cannot be used in conjunction with any of the other actions.
This list supports a maximum of 10 entries.
actions represents the series of commands to be executed on changes to the file at the corresponding file path. Actions will be applied in the order that they are set in this list. If there are other incoming changes to other MachineConfig entries in the same update that require a reboot, the reboot will supercede these actions. Valid actions are Reboot, Drain, Reload, DaemonReload and None. The Reboot action and the None action cannot be used in conjunction with any of the other actions. This list supports a maximum of 10 entries.
--
Type::
@@ -812,10 +696,7 @@ Required::
| `type`
| `string`
| type represents the commands that will be carried out if this NodeDisruptionPolicySpecActionType is executed
Valid values are Reboot, Drain, Reload, Restart, DaemonReload and None.
reload/restart requires a corresponding service target specified in the reload/restart field.
Other values require no further configuration
| type represents the commands that will be carried out if this NodeDisruptionPolicySpecActionType is executed Valid values are Reboot, Drain, Reload, Restart, DaemonReload and None. reload/restart requires a corresponding service target specified in the reload/restart field. Other values require no further configuration
|===
=== .spec.nodeDisruptionPolicy.units[].actions[].reload
@@ -839,10 +720,7 @@ Required::
| `serviceName`
| `string`
| serviceName is the full name (e.g. crio.service) of the service to be reloaded
Service names should be of the format ${NAME}${SERVICETYPE} and can up to 255 characters long.
${NAME} must be atleast 1 character long and can only consist of alphabets, digits, ":", "-", "_", ".", and "\".
${SERVICETYPE} must be one of ".service", ".socket", ".device", ".mount", ".automount", ".swap", ".target", ".path", ".timer", ".snapshot", ".slice" or ".scope".
| serviceName is the full name (e.g. crio.service) of the service to be reloaded Service names should be of the format ${NAME}${SERVICETYPE} and can up to 255 characters long. ${NAME} must be atleast 1 character long and can only consist of alphabets, digits, ":", "-", "_", ".", and "\". ${SERVICETYPE} must be one of ".service", ".socket", ".device", ".mount", ".automount", ".swap", ".target", ".path", ".timer", ".snapshot", ".slice" or ".scope".
|===
=== .spec.nodeDisruptionPolicy.units[].actions[].restart
@@ -866,10 +744,7 @@ Required::
| `serviceName`
| `string`
| serviceName is the full name (e.g. crio.service) of the service to be restarted
Service names should be of the format ${NAME}${SERVICETYPE} and can up to 255 characters long.
${NAME} must be atleast 1 character long and can only consist of alphabets, digits, ":", "-", "_", ".", and "\".
${SERVICETYPE} must be one of ".service", ".socket", ".device", ".mount", ".automount", ".swap", ".target", ".path", ".timer", ".snapshot", ".slice" or ".scope".
| serviceName is the full name (e.g. crio.service) of the service to be restarted Service names should be of the format ${NAME}${SERVICETYPE} and can up to 255 characters long. ${NAME} must be atleast 1 character long and can only consist of alphabets, digits, ":", "-", "_", ".", and "\". ${SERVICETYPE} must be one of ".service", ".socket", ".device", ".mount", ".automount", ".swap", ".target", ".path", ".timer", ".snapshot", ".slice" or ".scope".
|===
=== .status
@@ -895,12 +770,13 @@ Type::
| `conditions[]`
| `object`
| Condition contains details for one aspect of the current state of this API Resource.
| Condition contains details for one aspect of the current state of this API Resource. --- This struct is intended for direct use as an array at the field path .status.conditions. For example,
type FooStatus struct{ // Represents the observations of a foo's current state. // Known .status.conditions.type are: "Available", "Progressing", and "Degraded" // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"`
// other fields }
| `nodeDisruptionPolicyStatus`
| `object`
| nodeDisruptionPolicyStatus status reflects what the latest cluster-validated policies are,
and will be used by the Machine Config Daemon during future node updates.
| nodeDisruptionPolicyStatus status reflects what the latest cluster-validated policies are, and will be used by the Machine Config Daemon during future node updates.
| `observedGeneration`
| `integer`
@@ -924,7 +800,9 @@ Type::
Description::
+
--
Condition contains details for one aspect of the current state of this API Resource.
Condition contains details for one aspect of the current state of this API Resource. --- This struct is intended for direct use as an array at the field path .status.conditions. For example,
type FooStatus struct{ // Represents the observations of a foo's current state. // Known .status.conditions.type are: "Available", "Progressing", and "Degraded" // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"`
// other fields }
--
Type::
@@ -945,27 +823,19 @@ Required::
| `lastTransitionTime`
| `string`
| lastTransitionTime is the last time the condition transitioned from one status to another.
This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
| lastTransitionTime is the last time the condition transitioned from one status to another. This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
| `message`
| `string`
| message is a human readable message indicating details about the transition.
This may be an empty string.
| message is a human readable message indicating details about the transition. This may be an empty string.
| `observedGeneration`
| `integer`
| observedGeneration represents the .metadata.generation that the condition was set based upon.
For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date
with respect to the current state of the instance.
| observedGeneration represents the .metadata.generation that the condition was set based upon. For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date with respect to the current state of the instance.
| `reason`
| `string`
| reason contains a programmatic identifier indicating the reason for the condition's last transition.
Producers of specific condition types may define expected values and meanings for this field,
and whether the values are considered a guaranteed API.
The value should be a CamelCase string.
This field may not be empty.
| reason contains a programmatic identifier indicating the reason for the condition's last transition. Producers of specific condition types may define expected values and meanings for this field, and whether the values are considered a guaranteed API. The value should be a CamelCase string. This field may not be empty.
| `status`
| `string`
@@ -973,15 +843,14 @@ This field may not be empty.
| `type`
| `string`
| type of condition in CamelCase or in foo.example.com/CamelCase.
| type of condition in CamelCase or in foo.example.com/CamelCase. --- Many .condition.type values are consistent across resources like Available, but because arbitrary conditions can be useful (see .node.status.conditions), the ability to deconflict is important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
|===
=== .status.nodeDisruptionPolicyStatus
Description::
+
--
nodeDisruptionPolicyStatus status reflects what the latest cluster-validated policies are,
and will be used by the Machine Config Daemon during future node updates.
nodeDisruptionPolicyStatus status reflects what the latest cluster-validated policies are, and will be used by the Machine Config Daemon during future node updates.
--
Type::
@@ -1072,13 +941,7 @@ Required::
| `actions`
| `array`
| actions represents the series of commands to be executed on changes to the file at
the corresponding file path. Actions will be applied in the order that
they are set in this list. If there are other incoming changes to other MachineConfig
entries in the same update that require a reboot, the reboot will supercede these actions.
Valid actions are Reboot, Drain, Reload, DaemonReload and None.
The Reboot action and the None action cannot be used in conjunction with any of the other actions.
This list supports a maximum of 10 entries.
| actions represents the series of commands to be executed on changes to the file at the corresponding file path. Actions will be applied in the order that they are set in this list. If there are other incoming changes to other MachineConfig entries in the same update that require a reboot, the reboot will supercede these actions. Valid actions are Reboot, Drain, Reload, DaemonReload and None. The Reboot action and the None action cannot be used in conjunction with any of the other actions. This list supports a maximum of 10 entries.
| `actions[]`
| `object`
@@ -1086,21 +949,14 @@ This list supports a maximum of 10 entries.
| `path`
| `string`
| path is the location of a file being managed through a MachineConfig.
The Actions in the policy will apply to changes to the file at this path.
| path is the location of a file being managed through a MachineConfig. The Actions in the policy will apply to changes to the file at this path.
|===
=== .status.nodeDisruptionPolicyStatus.clusterPolicies.files[].actions
Description::
+
--
actions represents the series of commands to be executed on changes to the file at
the corresponding file path. Actions will be applied in the order that
they are set in this list. If there are other incoming changes to other MachineConfig
entries in the same update that require a reboot, the reboot will supercede these actions.
Valid actions are Reboot, Drain, Reload, DaemonReload and None.
The Reboot action and the None action cannot be used in conjunction with any of the other actions.
This list supports a maximum of 10 entries.
actions represents the series of commands to be executed on changes to the file at the corresponding file path. Actions will be applied in the order that they are set in this list. If there are other incoming changes to other MachineConfig entries in the same update that require a reboot, the reboot will supercede these actions. Valid actions are Reboot, Drain, Reload, DaemonReload and None. The Reboot action and the None action cannot be used in conjunction with any of the other actions. This list supports a maximum of 10 entries.
--
Type::
@@ -1138,10 +994,7 @@ Required::
| `type`
| `string`
| type represents the commands that will be carried out if this NodeDisruptionPolicyStatusActionType is executed
Valid values are Reboot, Drain, Reload, Restart, DaemonReload, None and Special.
reload/restart requires a corresponding service target specified in the reload/restart field.
Other values require no further configuration
| type represents the commands that will be carried out if this NodeDisruptionPolicyStatusActionType is executed Valid values are Reboot, Drain, Reload, Restart, DaemonReload, None and Special. reload/restart requires a corresponding service target specified in the reload/restart field. Other values require no further configuration
|===
=== .status.nodeDisruptionPolicyStatus.clusterPolicies.files[].actions[].reload
@@ -1165,10 +1018,7 @@ Required::
| `serviceName`
| `string`
| serviceName is the full name (e.g. crio.service) of the service to be reloaded
Service names should be of the format ${NAME}${SERVICETYPE} and can up to 255 characters long.
${NAME} must be atleast 1 character long and can only consist of alphabets, digits, ":", "-", "_", ".", and "\".
${SERVICETYPE} must be one of ".service", ".socket", ".device", ".mount", ".automount", ".swap", ".target", ".path", ".timer", ".snapshot", ".slice" or ".scope".
| serviceName is the full name (e.g. crio.service) of the service to be reloaded Service names should be of the format ${NAME}${SERVICETYPE} and can up to 255 characters long. ${NAME} must be atleast 1 character long and can only consist of alphabets, digits, ":", "-", "_", ".", and "\". ${SERVICETYPE} must be one of ".service", ".socket", ".device", ".mount", ".automount", ".swap", ".target", ".path", ".timer", ".snapshot", ".slice" or ".scope".
|===
=== .status.nodeDisruptionPolicyStatus.clusterPolicies.files[].actions[].restart
@@ -1192,10 +1042,7 @@ Required::
| `serviceName`
| `string`
| serviceName is the full name (e.g. crio.service) of the service to be restarted
Service names should be of the format ${NAME}${SERVICETYPE} and can up to 255 characters long.
${NAME} must be atleast 1 character long and can only consist of alphabets, digits, ":", "-", "_", ".", and "\".
${SERVICETYPE} must be one of ".service", ".socket", ".device", ".mount", ".automount", ".swap", ".target", ".path", ".timer", ".snapshot", ".slice" or ".scope".
| serviceName is the full name (e.g. crio.service) of the service to be restarted Service names should be of the format ${NAME}${SERVICETYPE} and can up to 255 characters long. ${NAME} must be atleast 1 character long and can only consist of alphabets, digits, ":", "-", "_", ".", and "\". ${SERVICETYPE} must be one of ".service", ".socket", ".device", ".mount", ".automount", ".swap", ".target", ".path", ".timer", ".snapshot", ".slice" or ".scope".
|===
=== .status.nodeDisruptionPolicyStatus.clusterPolicies.sshkey
@@ -1219,13 +1066,7 @@ Required::
| `actions`
| `array`
| actions represents the series of commands to be executed on changes to the file at
the corresponding file path. Actions will be applied in the order that
they are set in this list. If there are other incoming changes to other MachineConfig
entries in the same update that require a reboot, the reboot will supercede these actions.
Valid actions are Reboot, Drain, Reload, DaemonReload and None.
The Reboot action and the None action cannot be used in conjunction with any of the other actions.
This list supports a maximum of 10 entries.
| actions represents the series of commands to be executed on changes to the file at the corresponding file path. Actions will be applied in the order that they are set in this list. If there are other incoming changes to other MachineConfig entries in the same update that require a reboot, the reboot will supercede these actions. Valid actions are Reboot, Drain, Reload, DaemonReload and None. The Reboot action and the None action cannot be used in conjunction with any of the other actions. This list supports a maximum of 10 entries.
| `actions[]`
| `object`
@@ -1236,13 +1077,7 @@ This list supports a maximum of 10 entries.
Description::
+
--
actions represents the series of commands to be executed on changes to the file at
the corresponding file path. Actions will be applied in the order that
they are set in this list. If there are other incoming changes to other MachineConfig
entries in the same update that require a reboot, the reboot will supercede these actions.
Valid actions are Reboot, Drain, Reload, DaemonReload and None.
The Reboot action and the None action cannot be used in conjunction with any of the other actions.
This list supports a maximum of 10 entries.
actions represents the series of commands to be executed on changes to the file at the corresponding file path. Actions will be applied in the order that they are set in this list. If there are other incoming changes to other MachineConfig entries in the same update that require a reboot, the reboot will supercede these actions. Valid actions are Reboot, Drain, Reload, DaemonReload and None. The Reboot action and the None action cannot be used in conjunction with any of the other actions. This list supports a maximum of 10 entries.
--
Type::
@@ -1280,10 +1115,7 @@ Required::
| `type`
| `string`
| type represents the commands that will be carried out if this NodeDisruptionPolicyStatusActionType is executed
Valid values are Reboot, Drain, Reload, Restart, DaemonReload, None and Special.
reload/restart requires a corresponding service target specified in the reload/restart field.
Other values require no further configuration
| type represents the commands that will be carried out if this NodeDisruptionPolicyStatusActionType is executed Valid values are Reboot, Drain, Reload, Restart, DaemonReload, None and Special. reload/restart requires a corresponding service target specified in the reload/restart field. Other values require no further configuration
|===
=== .status.nodeDisruptionPolicyStatus.clusterPolicies.sshkey.actions[].reload
@@ -1307,10 +1139,7 @@ Required::
| `serviceName`
| `string`
| serviceName is the full name (e.g. crio.service) of the service to be reloaded
Service names should be of the format ${NAME}${SERVICETYPE} and can up to 255 characters long.
${NAME} must be atleast 1 character long and can only consist of alphabets, digits, ":", "-", "_", ".", and "\".
${SERVICETYPE} must be one of ".service", ".socket", ".device", ".mount", ".automount", ".swap", ".target", ".path", ".timer", ".snapshot", ".slice" or ".scope".
| serviceName is the full name (e.g. crio.service) of the service to be reloaded Service names should be of the format ${NAME}${SERVICETYPE} and can up to 255 characters long. ${NAME} must be atleast 1 character long and can only consist of alphabets, digits, ":", "-", "_", ".", and "\". ${SERVICETYPE} must be one of ".service", ".socket", ".device", ".mount", ".automount", ".swap", ".target", ".path", ".timer", ".snapshot", ".slice" or ".scope".
|===
=== .status.nodeDisruptionPolicyStatus.clusterPolicies.sshkey.actions[].restart
@@ -1334,10 +1163,7 @@ Required::
| `serviceName`
| `string`
| serviceName is the full name (e.g. crio.service) of the service to be restarted
Service names should be of the format ${NAME}${SERVICETYPE} and can up to 255 characters long.
${NAME} must be atleast 1 character long and can only consist of alphabets, digits, ":", "-", "_", ".", and "\".
${SERVICETYPE} must be one of ".service", ".socket", ".device", ".mount", ".automount", ".swap", ".target", ".path", ".timer", ".snapshot", ".slice" or ".scope".
| serviceName is the full name (e.g. crio.service) of the service to be restarted Service names should be of the format ${NAME}${SERVICETYPE} and can up to 255 characters long. ${NAME} must be atleast 1 character long and can only consist of alphabets, digits, ":", "-", "_", ".", and "\". ${SERVICETYPE} must be one of ".service", ".socket", ".device", ".mount", ".automount", ".swap", ".target", ".path", ".timer", ".snapshot", ".slice" or ".scope".
|===
=== .status.nodeDisruptionPolicyStatus.clusterPolicies.units
@@ -1375,13 +1201,7 @@ Required::
| `actions`
| `array`
| actions represents the series of commands to be executed on changes to the file at
the corresponding file path. Actions will be applied in the order that
they are set in this list. If there are other incoming changes to other MachineConfig
entries in the same update that require a reboot, the reboot will supercede these actions.
Valid actions are Reboot, Drain, Reload, DaemonReload and None.
The Reboot action and the None action cannot be used in conjunction with any of the other actions.
This list supports a maximum of 10 entries.
| actions represents the series of commands to be executed on changes to the file at the corresponding file path. Actions will be applied in the order that they are set in this list. If there are other incoming changes to other MachineConfig entries in the same update that require a reboot, the reboot will supercede these actions. Valid actions are Reboot, Drain, Reload, DaemonReload and None. The Reboot action and the None action cannot be used in conjunction with any of the other actions. This list supports a maximum of 10 entries.
| `actions[]`
| `object`
@@ -1389,24 +1209,14 @@ This list supports a maximum of 10 entries.
| `name`
| `string`
| name represents the service name of a systemd service managed through a MachineConfig
Actions specified will be applied for changes to the named service.
Service names should be of the format ${NAME}${SERVICETYPE} and can up to 255 characters long.
${NAME} must be atleast 1 character long and can only consist of alphabets, digits, ":", "-", "_", ".", and "\".
${SERVICETYPE} must be one of ".service", ".socket", ".device", ".mount", ".automount", ".swap", ".target", ".path", ".timer", ".snapshot", ".slice" or ".scope".
| name represents the service name of a systemd service managed through a MachineConfig Actions specified will be applied for changes to the named service. Service names should be of the format ${NAME}${SERVICETYPE} and can up to 255 characters long. ${NAME} must be atleast 1 character long and can only consist of alphabets, digits, ":", "-", "_", ".", and "\". ${SERVICETYPE} must be one of ".service", ".socket", ".device", ".mount", ".automount", ".swap", ".target", ".path", ".timer", ".snapshot", ".slice" or ".scope".
|===
=== .status.nodeDisruptionPolicyStatus.clusterPolicies.units[].actions
Description::
+
--
actions represents the series of commands to be executed on changes to the file at
the corresponding file path. Actions will be applied in the order that
they are set in this list. If there are other incoming changes to other MachineConfig
entries in the same update that require a reboot, the reboot will supercede these actions.
Valid actions are Reboot, Drain, Reload, DaemonReload and None.
The Reboot action and the None action cannot be used in conjunction with any of the other actions.
This list supports a maximum of 10 entries.
actions represents the series of commands to be executed on changes to the file at the corresponding file path. Actions will be applied in the order that they are set in this list. If there are other incoming changes to other MachineConfig entries in the same update that require a reboot, the reboot will supercede these actions. Valid actions are Reboot, Drain, Reload, DaemonReload and None. The Reboot action and the None action cannot be used in conjunction with any of the other actions. This list supports a maximum of 10 entries.
--
Type::
@@ -1444,10 +1254,7 @@ Required::
| `type`
| `string`
| type represents the commands that will be carried out if this NodeDisruptionPolicyStatusActionType is executed
Valid values are Reboot, Drain, Reload, Restart, DaemonReload, None and Special.
reload/restart requires a corresponding service target specified in the reload/restart field.
Other values require no further configuration
| type represents the commands that will be carried out if this NodeDisruptionPolicyStatusActionType is executed Valid values are Reboot, Drain, Reload, Restart, DaemonReload, None and Special. reload/restart requires a corresponding service target specified in the reload/restart field. Other values require no further configuration
|===
=== .status.nodeDisruptionPolicyStatus.clusterPolicies.units[].actions[].reload
@@ -1471,10 +1278,7 @@ Required::
| `serviceName`
| `string`
| serviceName is the full name (e.g. crio.service) of the service to be reloaded
Service names should be of the format ${NAME}${SERVICETYPE} and can up to 255 characters long.
${NAME} must be atleast 1 character long and can only consist of alphabets, digits, ":", "-", "_", ".", and "\".
${SERVICETYPE} must be one of ".service", ".socket", ".device", ".mount", ".automount", ".swap", ".target", ".path", ".timer", ".snapshot", ".slice" or ".scope".
| serviceName is the full name (e.g. crio.service) of the service to be reloaded Service names should be of the format ${NAME}${SERVICETYPE} and can up to 255 characters long. ${NAME} must be atleast 1 character long and can only consist of alphabets, digits, ":", "-", "_", ".", and "\". ${SERVICETYPE} must be one of ".service", ".socket", ".device", ".mount", ".automount", ".swap", ".target", ".path", ".timer", ".snapshot", ".slice" or ".scope".
|===
=== .status.nodeDisruptionPolicyStatus.clusterPolicies.units[].actions[].restart
@@ -1498,10 +1302,7 @@ Required::
| `serviceName`
| `string`
| serviceName is the full name (e.g. crio.service) of the service to be restarted
Service names should be of the format ${NAME}${SERVICETYPE} and can up to 255 characters long.
${NAME} must be atleast 1 character long and can only consist of alphabets, digits, ":", "-", "_", ".", and "\".
${SERVICETYPE} must be one of ".service", ".socket", ".device", ".mount", ".automount", ".swap", ".target", ".path", ".timer", ".snapshot", ".slice" or ".scope".
| serviceName is the full name (e.g. crio.service) of the service to be restarted Service names should be of the format ${NAME}${SERVICETYPE} and can up to 255 characters long. ${NAME} must be atleast 1 character long and can only consist of alphabets, digits, ":", "-", "_", ".", and "\". ${SERVICETYPE} must be one of ".service", ".socket", ".device", ".mount", ".automount", ".swap", ".target", ".path", ".timer", ".snapshot", ".slice" or ".scope".
|===

File diff suppressed because it is too large Load Diff

View File

@@ -11,9 +11,8 @@ toc::[]
Description::
+
--
OpenShiftAPIServer provides information to configure an operator to manage openshift-apiserver.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
OpenShiftAPIServer provides information to configure an operator to manage openshift-apiserver.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -69,11 +68,8 @@ Type::
| `logLevel`
| `string`
| logLevel is an intent based logging for an overall component. It does not give fine grained control, but it is a
simple way to manage coarse grained logging choices that operators have to interpret for their operands.
Valid values are: "Normal", "Debug", "Trace", "TraceAll".
Defaults to "Normal".
| logLevel is an intent based logging for an overall component. It does not give fine grained control, but it is a simple way to manage coarse grained logging choices that operators have to interpret for their operands.
Valid values are: "Normal", "Debug", "Trace", "TraceAll". Defaults to "Normal".
| `managementState`
| `string`
@@ -81,24 +77,16 @@ Defaults to "Normal".
| `observedConfig`
| ``
| observedConfig holds a sparse config that controller has observed from the cluster state. It exists in spec because
it is an input to the level for the operator
| observedConfig holds a sparse config that controller has observed from the cluster state. It exists in spec because it is an input to the level for the operator
| `operatorLogLevel`
| `string`
| operatorLogLevel is an intent based logging for the operator itself. It does not give fine grained control, but it is a
simple way to manage coarse grained logging choices that operators have to interpret for themselves.
Valid values are: "Normal", "Debug", "Trace", "TraceAll".
Defaults to "Normal".
| operatorLogLevel is an intent based logging for the operator itself. It does not give fine grained control, but it is a simple way to manage coarse grained logging choices that operators have to interpret for themselves.
Valid values are: "Normal", "Debug", "Trace", "TraceAll". Defaults to "Normal".
| `unsupportedConfigOverrides`
| ``
| unsupportedConfigOverrides overrides the final configuration that was computed by the operator.
Red Hat does not support the use of this field.
Misuse of this field could lead to unexpected behavior or conflict with other configuration options.
Seek guidance from the Red Hat support before using this field.
Use of this property blocks cluster upgrades, it must be removed before upgrading your cluster.
| unsupportedConfigOverrides overrides the final configuration that was computed by the operator. Red Hat does not support the use of this field. Misuse of this field could lead to unexpected behavior or conflict with other configuration options. Seek guidance from the Red Hat support before using this field. Use of this property blocks cluster upgrades, it must be removed before upgrading your cluster.
|===
=== .status
@@ -136,7 +124,7 @@ Type::
| `latestAvailableRevision`
| `integer`
| latestAvailableRevision is the deploymentID of the most recent deployment
| latestAvailableRevision is the latest revision used as suffix of revisioned secrets like encryption-config. A new revision causes a new deployment of pods.
| `observedGeneration`
| `integer`
@@ -175,8 +163,6 @@ Type::
`object`
Required::
- `lastTransitionTime`
- `status`
- `type`
@@ -187,8 +173,7 @@ Required::
| `lastTransitionTime`
| `string`
| lastTransitionTime is the last time the condition transitioned from one status to another.
This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
|
| `message`
| `string`
@@ -200,11 +185,11 @@ This should be when the underlying condition changed. If that is not known, the
| `status`
| `string`
| status of the condition, one of True, False, Unknown.
|
| `type`
| `string`
| type of condition in CamelCase or in foo.example.com/CamelCase.
|
|===
=== .status.generations
@@ -230,11 +215,6 @@ GenerationStatus keeps track of the generation for a given resource so that deci
Type::
`object`
Required::
- `group`
- `name`
- `namespace`
- `resource`

View File

@@ -11,9 +11,8 @@ toc::[]
Description::
+
--
OpenShiftControllerManager provides information to configure an operator to manage openshift-controller-manager.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
OpenShiftControllerManager provides information to configure an operator to manage openshift-controller-manager.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -69,11 +68,8 @@ Type::
| `logLevel`
| `string`
| logLevel is an intent based logging for an overall component. It does not give fine grained control, but it is a
simple way to manage coarse grained logging choices that operators have to interpret for their operands.
Valid values are: "Normal", "Debug", "Trace", "TraceAll".
Defaults to "Normal".
| logLevel is an intent based logging for an overall component. It does not give fine grained control, but it is a simple way to manage coarse grained logging choices that operators have to interpret for their operands.
Valid values are: "Normal", "Debug", "Trace", "TraceAll". Defaults to "Normal".
| `managementState`
| `string`
@@ -81,24 +77,16 @@ Defaults to "Normal".
| `observedConfig`
| ``
| observedConfig holds a sparse config that controller has observed from the cluster state. It exists in spec because
it is an input to the level for the operator
| observedConfig holds a sparse config that controller has observed from the cluster state. It exists in spec because it is an input to the level for the operator
| `operatorLogLevel`
| `string`
| operatorLogLevel is an intent based logging for the operator itself. It does not give fine grained control, but it is a
simple way to manage coarse grained logging choices that operators have to interpret for themselves.
Valid values are: "Normal", "Debug", "Trace", "TraceAll".
Defaults to "Normal".
| operatorLogLevel is an intent based logging for the operator itself. It does not give fine grained control, but it is a simple way to manage coarse grained logging choices that operators have to interpret for themselves.
Valid values are: "Normal", "Debug", "Trace", "TraceAll". Defaults to "Normal".
| `unsupportedConfigOverrides`
| ``
| unsupportedConfigOverrides overrides the final configuration that was computed by the operator.
Red Hat does not support the use of this field.
Misuse of this field could lead to unexpected behavior or conflict with other configuration options.
Seek guidance from the Red Hat support before using this field.
Use of this property blocks cluster upgrades, it must be removed before upgrading your cluster.
| unsupportedConfigOverrides overrides the final configuration that was computed by the operator. Red Hat does not support the use of this field. Misuse of this field could lead to unexpected behavior or conflict with other configuration options. Seek guidance from the Red Hat support before using this field. Use of this property blocks cluster upgrades, it must be removed before upgrading your cluster.
|===
=== .status
@@ -134,10 +122,6 @@ Type::
| `object`
| GenerationStatus keeps track of the generation for a given resource so that decisions about forced updates can be made.
| `latestAvailableRevision`
| `integer`
| latestAvailableRevision is the deploymentID of the most recent deployment
| `observedGeneration`
| `integer`
| observedGeneration is the last generation change you've dealt with
@@ -175,8 +159,6 @@ Type::
`object`
Required::
- `lastTransitionTime`
- `status`
- `type`
@@ -187,8 +169,7 @@ Required::
| `lastTransitionTime`
| `string`
| lastTransitionTime is the last time the condition transitioned from one status to another.
This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
|
| `message`
| `string`
@@ -200,11 +181,11 @@ This should be when the underlying condition changed. If that is not known, the
| `status`
| `string`
| status of the condition, one of True, False, Unknown.
|
| `type`
| `string`
| type of condition in CamelCase or in foo.example.com/CamelCase.
|
|===
=== .status.generations
@@ -230,11 +211,6 @@ GenerationStatus keeps track of the generation for a given resource so that deci
Type::
`object`
Required::
- `group`
- `name`
- `namespace`
- `resource`

View File

@@ -12,9 +12,8 @@ toc::[]
Description::
+
--
Authentication provides information to configure an operator to manage authentication.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
Authentication provides information to configure an operator to manage authentication.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -37,11 +36,8 @@ Type::
Description::
+
--
ClusterCSIDriver object allows management and configuration of a CSI driver operator
installed by default in OpenShift. Name of the object must be name of the CSI driver
it operates. See CSIDriverName type for list of allowed values.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
ClusterCSIDriver object allows management and configuration of a CSI driver operator installed by default in OpenShift. Name of the object must be name of the CSI driver it operates. See CSIDriverName type for list of allowed values.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -52,9 +48,8 @@ Type::
Description::
+
--
Console provides a means to configure an operator to manage the console.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
Console provides a means to configure an operator to manage the console.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -65,10 +60,8 @@ Type::
Description::
+
--
Config specifies the behavior of the config operator which is responsible for creating the initial configuration of other components
on the cluster. The operator also handles installation, migration or synchronization of cloud configurations for AWS and Azure cloud based clusters
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
Config specifies the behavior of the config operator which is responsible for creating the initial configuration of other components on the cluster. The operator also handles installation, migration or synchronization of cloud configurations for AWS and Azure cloud based clusters
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -103,9 +96,8 @@ Type::
Description::
+
--
CSISnapshotController provides a means to configure an operator to manage the CSI snapshots. `cluster` is the canonical name.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
CSISnapshotController provides a means to configure an operator to manage the CSI snapshots. `cluster` is the canonical name.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -130,16 +122,10 @@ Type::
Description::
+
--
DNSRecord is a DNS record managed in the zones defined by
dns.config.openshift.io/cluster .spec.publicZone and .spec.privateZone.
Cluster admin manipulation of this resource is not supported. This resource
is only for internal communication of OpenShift operators.
If DNSManagementPolicy is "Unmanaged", the operator will not be responsible
for managing the DNS records on the cloud provider.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
DNSRecord is a DNS record managed in the zones defined by dns.config.openshift.io/cluster .spec.publicZone and .spec.privateZone.
Cluster admin manipulation of this resource is not supported. This resource is only for internal communication of OpenShift operators.
If DNSManagementPolicy is "Unmanaged", the operator will not be responsible for managing the DNS records on the cloud provider.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -150,9 +136,8 @@ Type::
Description::
+
--
Etcd provides information to configure an operator to manage etcd.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
Etcd provides information to configure an operator to manage etcd.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -163,10 +148,8 @@ Type::
Description::
+
--
ImageContentSourcePolicy holds cluster-wide information about how to handle registry mirror rules.
When multiple policies are defined, the outcome of the behavior is defined on each field.
Compatibility level 4: No compatibility is provided, the API can change at any point for any reason. These capabilities should not be used by applications needing long term support.
ImageContentSourcePolicy holds cluster-wide information about how to handle registry mirror rules. When multiple policies are defined, the outcome of the behavior is defined on each field.
Compatibility level 4: No compatibility is provided, the API can change at any point for any reason. These capabilities should not be used by applications needing long term support.
--
Type::
@@ -189,21 +172,11 @@ Type::
Description::
+
--
IngressController describes a managed ingress controller for the cluster. The
controller can service OpenShift Route and Kubernetes Ingress resources.
When an IngressController is created, a new ingress controller deployment is
created to allow external traffic to reach the services that expose Ingress
or Route resources. Updating this resource may lead to disruption for public
facing network connections as a new ingress controller revision may be rolled
out.
https://kubernetes.io/docs/concepts/services-networking/ingress-controllers
Whenever possible, sensible defaults for the platform are used. See each
field for more details.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
IngressController describes a managed ingress controller for the cluster. The controller can service OpenShift Route and Kubernetes Ingress resources.
When an IngressController is created, a new ingress controller deployment is created to allow external traffic to reach the services that expose Ingress or Route resources. Updating this resource may lead to disruption for public facing network connections as a new ingress controller revision may be rolled out.
https://kubernetes.io/docs/concepts/services-networking/ingress-controllers
Whenever possible, sensible defaults for the platform are used. See each field for more details.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -226,9 +199,8 @@ Type::
Description::
+
--
KubeAPIServer provides information to configure an operator to manage kube-apiserver.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
KubeAPIServer provides information to configure an operator to manage kube-apiserver.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -239,9 +211,8 @@ Type::
Description::
+
--
KubeControllerManager provides information to configure an operator to manage kube-controller-manager.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
KubeControllerManager provides information to configure an operator to manage kube-controller-manager.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -252,9 +223,8 @@ Type::
Description::
+
--
KubeScheduler provides information to configure an operator to manage scheduler.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
KubeScheduler provides information to configure an operator to manage scheduler.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -277,9 +247,8 @@ Type::
Description::
+
--
MachineConfiguration provides information to configure an operator to manage Machine Configuration.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
MachineConfiguration provides information to configure an operator to manage Machine Configuration.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -290,10 +259,8 @@ Type::
Description::
+
--
Network describes the cluster's desired network configuration. It is
consumed by the cluster-network-operator.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
Network describes the cluster's desired network configuration. It is consumed by the cluster-network-operator.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -304,9 +271,8 @@ Type::
Description::
+
--
OpenShiftAPIServer provides information to configure an operator to manage openshift-apiserver.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
OpenShiftAPIServer provides information to configure an operator to manage openshift-apiserver.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -317,9 +283,8 @@ Type::
Description::
+
--
OpenShiftControllerManager provides information to configure an operator to manage openshift-controller-manager.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
OpenShiftControllerManager provides information to configure an operator to manage openshift-controller-manager.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::
@@ -335,22 +300,28 @@ use - rather, it is internal to the network operator. The CNO creates a CA and
a certificate signed by that CA. The certificate has both ClientAuth
and ServerAuth extended usages enabled.
More specifically, given an OperatorPKI with <name>, the CNO will manage:
- A Secret called <name>-ca with two data keys:
- tls.key - the private key
- tls.crt - the CA certificate
- A ConfigMap called <name>-ca with a single data key:
- cabundle.crt - the CA certificate(s)
- A Secret called <name>-cert with two data keys:
- tls.key - the private key
- tls.crt - the certificate, signed by the CA
The CA certificate will have a validity of 10 years, rotated after 9.
The target certificate will have a validity of 6 months, rotated after 3
The CA certificate will have a CommonName of "<namespace>_<name>-ca@<timestamp>", where
<timestamp> is the last rotation time.
--
@@ -375,9 +346,8 @@ Type::
Description::
+
--
Storage provides a means to configure an operator to manage the cluster storage operator. `cluster` is the canonical name.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
Storage provides a means to configure an operator to manage the cluster storage operator. `cluster` is the canonical name.
Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).
--
Type::

View File

@@ -16,22 +16,28 @@ use - rather, it is internal to the network operator. The CNO creates a CA and
a certificate signed by that CA. The certificate has both ClientAuth
and ServerAuth extended usages enabled.
More specifically, given an OperatorPKI with <name>, the CNO will manage:
- A Secret called <name>-ca with two data keys:
- tls.key - the private key
- tls.crt - the CA certificate
- A ConfigMap called <name>-ca with a single data key:
- cabundle.crt - the CA certificate(s)
- A Secret called <name>-cert with two data keys:
- tls.key - the private key
- tls.crt - the certificate, signed by the CA
The CA certificate will have a validity of 10 years, rotated after 9.
The target certificate will have a validity of 6 months, rotated after 3
The CA certificate will have a CommonName of "<namespace>_<name>-ca@<timestamp>", where
<timestamp> is the last rotation time.
--

Some files were not shown because too many files have changed in this diff Show More