diff --git a/features.md b/features.md
index bb6bbde0379..dff045c51e5 100644
--- a/features.md
+++ b/features.md
@@ -58,7 +58,6 @@
| ConfigurablePKI| | | Enabled | Enabled | | | Enabled | Enabled |
| DNSNameResolver| | | Enabled | Enabled | | | Enabled | Enabled |
| DyanmicServiceEndpointIBMCloud| | | Enabled | Enabled | | | Enabled | Enabled |
-| EtcdBackendQuota| | | Enabled | Enabled | | | Enabled | Enabled |
| Example| | | Enabled | Enabled | | | Enabled | Enabled |
| ExternalOIDCExternalClaimsSourcing| | | Enabled | Enabled | | | Enabled | Enabled |
| ExternalOIDCWithUpstreamParity| | | Enabled | Enabled | | | Enabled | Enabled |
@@ -103,6 +102,7 @@
| BuildCSIVolumes| Enabled | Enabled | Enabled | Enabled | Enabled | Enabled | Enabled | Enabled |
| DualReplica| Enabled | Enabled | Enabled | Enabled | Enabled | Enabled | Enabled | Enabled |
| EVPN| Enabled | Enabled | Enabled | Enabled | Enabled | Enabled | Enabled | Enabled |
+| EtcdBackendQuota| Enabled | Enabled | Enabled | Enabled | Enabled | Enabled | Enabled | Enabled |
| EventTTL| Enabled | Enabled | Enabled | Enabled | Enabled | Enabled | Enabled | Enabled |
| ExternalOIDC| Enabled | Enabled | Enabled | Enabled | Enabled | Enabled | Enabled | Enabled |
| ExternalOIDCWithUIDAndExtraClaimMappings| Enabled | Enabled | Enabled | Enabled | Enabled | Enabled | Enabled | Enabled |
diff --git a/features/features.go b/features/features.go
index bfa951e0889..856522aba1c 100644
--- a/features/features.go
+++ b/features/features.go
@@ -222,8 +222,8 @@ var (
reportProblemsToJiraComponent("etcd").
contactPerson("hasbro17").
productScope(ocpSpecific).
- enhancementPR(legacyFeatureGateWithoutEnhancement).
- enable(inTechPreviewNoUpgrade(), inDevPreviewNoUpgrade()).
+ enhancementPR("https://github.com/openshift/enhancements/pull/2031").
+ enable(inDefault(), inOKD(), inTechPreviewNoUpgrade(), inDevPreviewNoUpgrade()).
mustRegister()
FeatureGateAutomatedEtcdBackup = newFeatureGate("AutomatedEtcdBackup").
@@ -673,7 +673,7 @@ var (
enhancementPR("https://github.com/openshift/enhancements/pull/2033").
enable(inDevPreviewNoUpgrade(), inTechPreviewNoUpgrade()).
mustRegister()
-
+
FeatureGateIngressControllerMultipleHAProxyVersions = newFeatureGate("IngressControllerMultipleHAProxyVersions").
reportProblemsToJiraComponent("Networking/router").
contactPerson("miciah").
diff --git a/operator/v1/zz_generated.crd-manifests/0000_12_etcd_01_etcds-Default.crd.yaml b/operator/v1/zz_generated.crd-manifests/0000_12_etcd_01_etcds-Default.crd.yaml
deleted file mode 100644
index 23e6bdc63f2..00000000000
--- a/operator/v1/zz_generated.crd-manifests/0000_12_etcd_01_etcds-Default.crd.yaml
+++ /dev/null
@@ -1,331 +0,0 @@
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- annotations:
- api-approved.openshift.io: https://github.com/openshift/api/pull/752
- api.openshift.io/merged-by-featuregates: "true"
- include.release.openshift.io/ibm-cloud-managed: "true"
- include.release.openshift.io/self-managed-high-availability: "true"
- release.openshift.io/feature-set: Default
- name: etcds.operator.openshift.io
-spec:
- group: operator.openshift.io
- names:
- categories:
- - coreoperators
- kind: Etcd
- listKind: EtcdList
- plural: etcds
- singular: etcd
- scope: Cluster
- versions:
- - name: v1
- schema:
- openAPIV3Schema:
- 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).
- properties:
- apiVersion:
- description: |-
- 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
- type: string
- kind:
- description: |-
- 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
- type: string
- metadata:
- type: object
- spec:
- properties:
- controlPlaneHardwareSpeed:
- description: "HardwareSpeed allows user to change the etcd tuning
- profile which configures\nthe latency parameters for heartbeat interval
- and leader election timeouts\nallowing the cluster to tolerate longer
- round-trip-times between etcd members.\nValid values are \"\", \"Standard\"
- and \"Slower\".\n\t\"\" means no opinion and the platform is left
- to choose a reasonable default\n\twhich is subject to change without
- notice."
- enum:
- - ""
- - Standard
- - Slower
- type: string
- failedRevisionLimit:
- description: |-
- 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)
- format: int32
- type: integer
- forceRedeploymentReason:
- description: |-
- 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.
- type: string
- logLevel:
- default: Normal
- description: |-
- 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".
- enum:
- - ""
- - Normal
- - Debug
- - Trace
- - TraceAll
- type: string
- managementState:
- description: managementState indicates whether and how the operator
- should manage the component
- pattern: ^(Managed|Unmanaged|Force|Removed)$
- type: string
- observedConfig:
- description: |-
- 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
- nullable: true
- type: object
- x-kubernetes-preserve-unknown-fields: true
- operatorLogLevel:
- default: Normal
- description: |-
- 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".
- enum:
- - ""
- - Normal
- - Debug
- - Trace
- - TraceAll
- type: string
- succeededRevisionLimit:
- description: |-
- 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)
- format: int32
- type: integer
- unsupportedConfigOverrides:
- description: |-
- 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.
- nullable: true
- type: object
- x-kubernetes-preserve-unknown-fields: true
- type: object
- status:
- properties:
- conditions:
- description: conditions is a list of conditions and their status
- items:
- description: OperatorCondition is just the standard condition fields.
- properties:
- lastTransitionTime:
- description: |-
- 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.
- format: date-time
- type: string
- message:
- type: string
- reason:
- type: string
- status:
- description: status of the condition, one of True, False, Unknown.
- enum:
- - "True"
- - "False"
- - Unknown
- type: string
- type:
- description: type of condition in CamelCase or in foo.example.com/CamelCase.
- maxLength: 316
- pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
- type: string
- required:
- - lastTransitionTime
- - status
- - type
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - type
- x-kubernetes-list-type: map
- controlPlaneHardwareSpeed:
- description: ControlPlaneHardwareSpeed declares valid hardware speed
- tolerance levels
- enum:
- - ""
- - Standard
- - Slower
- type: string
- generations:
- description: generations are used to determine when an item needs
- to be reconciled or has changed in a way that needs a reaction.
- items:
- description: GenerationStatus keeps track of the generation for
- a given resource so that decisions about forced updates can be
- made.
- properties:
- group:
- description: group is the group of the thing you're tracking
- type: string
- hash:
- description: hash is an optional field set for resources without
- generation that are content sensitive like secrets and configmaps
- type: string
- lastGeneration:
- description: lastGeneration is the last generation of the workload
- controller involved
- format: int64
- type: integer
- name:
- description: name is the name of the thing you're tracking
- type: string
- namespace:
- description: namespace is where the thing you're tracking is
- type: string
- resource:
- description: resource is the resource type of the thing you're
- tracking
- type: string
- required:
- - group
- - name
- - namespace
- - resource
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - group
- - resource
- - namespace
- - name
- x-kubernetes-list-type: map
- latestAvailableRevision:
- description: latestAvailableRevision is the deploymentID of the most
- recent deployment
- format: int32
- type: integer
- x-kubernetes-validations:
- - message: must only increase
- rule: self >= oldSelf
- latestAvailableRevisionReason:
- description: latestAvailableRevisionReason describe the detailed reason
- for the most recent deployment
- type: string
- nodeStatuses:
- description: nodeStatuses track the deployment values and errors across
- individual nodes
- items:
- description: NodeStatus provides information about the current state
- of a particular node managed by this operator.
- properties:
- currentRevision:
- description: |-
- currentRevision is the generation of the most recently successful deployment.
- Can not be set on creation of a nodeStatus. Updates must only increase the value.
- format: int32
- type: integer
- x-kubernetes-validations:
- - message: must only increase
- rule: self >= oldSelf
- lastFailedCount:
- description: lastFailedCount is how often the installer pod
- of the last failed revision failed.
- type: integer
- lastFailedReason:
- description: lastFailedReason is a machine readable failure
- reason string.
- type: string
- lastFailedRevision:
- description: lastFailedRevision is the generation of the deployment
- we tried and failed to deploy.
- format: int32
- type: integer
- lastFailedRevisionErrors:
- description: lastFailedRevisionErrors is a list of human readable
- errors during the failed deployment referenced in lastFailedRevision.
- items:
- type: string
- type: array
- x-kubernetes-list-type: atomic
- lastFailedTime:
- description: lastFailedTime is the time the last failed revision
- failed the last time.
- format: date-time
- type: string
- lastFallbackCount:
- description: lastFallbackCount is how often a fallback to a
- previous revision happened.
- type: integer
- nodeName:
- description: nodeName is the name of the node
- type: string
- targetRevision:
- description: |-
- targetRevision is the generation of the deployment we're trying to apply.
- Can not be set on creation of a nodeStatus.
- format: int32
- type: integer
- required:
- - nodeName
- type: object
- x-kubernetes-validations:
- - fieldPath: .currentRevision
- message: cannot be unset once set
- rule: has(self.currentRevision) || !has(oldSelf.currentRevision)
- - fieldPath: .currentRevision
- message: currentRevision can not be set on creation of a nodeStatus
- optionalOldSelf: true
- rule: oldSelf.hasValue() || !has(self.currentRevision)
- - fieldPath: .targetRevision
- message: targetRevision can not be set on creation of a nodeStatus
- optionalOldSelf: true
- rule: oldSelf.hasValue() || !has(self.targetRevision)
- type: array
- x-kubernetes-list-map-keys:
- - nodeName
- x-kubernetes-list-type: map
- x-kubernetes-validations:
- - message: no more than 1 node status may have a nonzero targetRevision
- rule: size(self.filter(status, status.?targetRevision.orValue(0)
- != 0)) <= 1
- observedGeneration:
- description: observedGeneration is the last generation change you've
- dealt with
- format: int64
- type: integer
- readyReplicas:
- description: readyReplicas indicates how many replicas are ready and
- at the desired state
- format: int32
- type: integer
- version:
- description: version is the level this availability applies to
- type: string
- type: object
- required:
- - spec
- type: object
- served: true
- storage: true
- subresources:
- status: {}
diff --git a/operator/v1/zz_generated.crd-manifests/0000_12_etcd_01_etcds-DevPreviewNoUpgrade.crd.yaml b/operator/v1/zz_generated.crd-manifests/0000_12_etcd_01_etcds-DevPreviewNoUpgrade.crd.yaml
deleted file mode 100644
index 2c32b9c9648..00000000000
--- a/operator/v1/zz_generated.crd-manifests/0000_12_etcd_01_etcds-DevPreviewNoUpgrade.crd.yaml
+++ /dev/null
@@ -1,344 +0,0 @@
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- annotations:
- api-approved.openshift.io: https://github.com/openshift/api/pull/752
- api.openshift.io/merged-by-featuregates: "true"
- include.release.openshift.io/ibm-cloud-managed: "true"
- include.release.openshift.io/self-managed-high-availability: "true"
- release.openshift.io/feature-set: DevPreviewNoUpgrade
- name: etcds.operator.openshift.io
-spec:
- group: operator.openshift.io
- names:
- categories:
- - coreoperators
- kind: Etcd
- listKind: EtcdList
- plural: etcds
- singular: etcd
- scope: Cluster
- versions:
- - name: v1
- schema:
- openAPIV3Schema:
- 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).
- properties:
- apiVersion:
- description: |-
- 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
- type: string
- kind:
- description: |-
- 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
- type: string
- metadata:
- type: object
- spec:
- properties:
- backendQuotaGiB:
- default: 8
- description: |-
- backendQuotaGiB sets the etcd backend storage size limit in gibibytes.
- The value should be an integer not less than 8 and not more than 16.
- When not specified, the default value is 8.
- format: int32
- maximum: 16
- minimum: 8
- type: integer
- x-kubernetes-validations:
- - message: etcd backendQuotaGiB may not be decreased
- rule: self>=oldSelf
- controlPlaneHardwareSpeed:
- description: "HardwareSpeed allows user to change the etcd tuning
- profile which configures\nthe latency parameters for heartbeat interval
- and leader election timeouts\nallowing the cluster to tolerate longer
- round-trip-times between etcd members.\nValid values are \"\", \"Standard\"
- and \"Slower\".\n\t\"\" means no opinion and the platform is left
- to choose a reasonable default\n\twhich is subject to change without
- notice."
- enum:
- - ""
- - Standard
- - Slower
- type: string
- failedRevisionLimit:
- description: |-
- 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)
- format: int32
- type: integer
- forceRedeploymentReason:
- description: |-
- 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.
- type: string
- logLevel:
- default: Normal
- description: |-
- 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".
- enum:
- - ""
- - Normal
- - Debug
- - Trace
- - TraceAll
- type: string
- managementState:
- description: managementState indicates whether and how the operator
- should manage the component
- pattern: ^(Managed|Unmanaged|Force|Removed)$
- type: string
- observedConfig:
- description: |-
- 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
- nullable: true
- type: object
- x-kubernetes-preserve-unknown-fields: true
- operatorLogLevel:
- default: Normal
- description: |-
- 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".
- enum:
- - ""
- - Normal
- - Debug
- - Trace
- - TraceAll
- type: string
- succeededRevisionLimit:
- description: |-
- 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)
- format: int32
- type: integer
- unsupportedConfigOverrides:
- description: |-
- 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.
- nullable: true
- type: object
- x-kubernetes-preserve-unknown-fields: true
- type: object
- status:
- properties:
- conditions:
- description: conditions is a list of conditions and their status
- items:
- description: OperatorCondition is just the standard condition fields.
- properties:
- lastTransitionTime:
- description: |-
- 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.
- format: date-time
- type: string
- message:
- type: string
- reason:
- type: string
- status:
- description: status of the condition, one of True, False, Unknown.
- enum:
- - "True"
- - "False"
- - Unknown
- type: string
- type:
- description: type of condition in CamelCase or in foo.example.com/CamelCase.
- maxLength: 316
- pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
- type: string
- required:
- - lastTransitionTime
- - status
- - type
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - type
- x-kubernetes-list-type: map
- controlPlaneHardwareSpeed:
- description: ControlPlaneHardwareSpeed declares valid hardware speed
- tolerance levels
- enum:
- - ""
- - Standard
- - Slower
- type: string
- generations:
- description: generations are used to determine when an item needs
- to be reconciled or has changed in a way that needs a reaction.
- items:
- description: GenerationStatus keeps track of the generation for
- a given resource so that decisions about forced updates can be
- made.
- properties:
- group:
- description: group is the group of the thing you're tracking
- type: string
- hash:
- description: hash is an optional field set for resources without
- generation that are content sensitive like secrets and configmaps
- type: string
- lastGeneration:
- description: lastGeneration is the last generation of the workload
- controller involved
- format: int64
- type: integer
- name:
- description: name is the name of the thing you're tracking
- type: string
- namespace:
- description: namespace is where the thing you're tracking is
- type: string
- resource:
- description: resource is the resource type of the thing you're
- tracking
- type: string
- required:
- - group
- - name
- - namespace
- - resource
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - group
- - resource
- - namespace
- - name
- x-kubernetes-list-type: map
- latestAvailableRevision:
- description: latestAvailableRevision is the deploymentID of the most
- recent deployment
- format: int32
- type: integer
- x-kubernetes-validations:
- - message: must only increase
- rule: self >= oldSelf
- latestAvailableRevisionReason:
- description: latestAvailableRevisionReason describe the detailed reason
- for the most recent deployment
- type: string
- nodeStatuses:
- description: nodeStatuses track the deployment values and errors across
- individual nodes
- items:
- description: NodeStatus provides information about the current state
- of a particular node managed by this operator.
- properties:
- currentRevision:
- description: |-
- currentRevision is the generation of the most recently successful deployment.
- Can not be set on creation of a nodeStatus. Updates must only increase the value.
- format: int32
- type: integer
- x-kubernetes-validations:
- - message: must only increase
- rule: self >= oldSelf
- lastFailedCount:
- description: lastFailedCount is how often the installer pod
- of the last failed revision failed.
- type: integer
- lastFailedReason:
- description: lastFailedReason is a machine readable failure
- reason string.
- type: string
- lastFailedRevision:
- description: lastFailedRevision is the generation of the deployment
- we tried and failed to deploy.
- format: int32
- type: integer
- lastFailedRevisionErrors:
- description: lastFailedRevisionErrors is a list of human readable
- errors during the failed deployment referenced in lastFailedRevision.
- items:
- type: string
- type: array
- x-kubernetes-list-type: atomic
- lastFailedTime:
- description: lastFailedTime is the time the last failed revision
- failed the last time.
- format: date-time
- type: string
- lastFallbackCount:
- description: lastFallbackCount is how often a fallback to a
- previous revision happened.
- type: integer
- nodeName:
- description: nodeName is the name of the node
- type: string
- targetRevision:
- description: |-
- targetRevision is the generation of the deployment we're trying to apply.
- Can not be set on creation of a nodeStatus.
- format: int32
- type: integer
- required:
- - nodeName
- type: object
- x-kubernetes-validations:
- - fieldPath: .currentRevision
- message: cannot be unset once set
- rule: has(self.currentRevision) || !has(oldSelf.currentRevision)
- - fieldPath: .currentRevision
- message: currentRevision can not be set on creation of a nodeStatus
- optionalOldSelf: true
- rule: oldSelf.hasValue() || !has(self.currentRevision)
- - fieldPath: .targetRevision
- message: targetRevision can not be set on creation of a nodeStatus
- optionalOldSelf: true
- rule: oldSelf.hasValue() || !has(self.targetRevision)
- type: array
- x-kubernetes-list-map-keys:
- - nodeName
- x-kubernetes-list-type: map
- x-kubernetes-validations:
- - message: no more than 1 node status may have a nonzero targetRevision
- rule: size(self.filter(status, status.?targetRevision.orValue(0)
- != 0)) <= 1
- observedGeneration:
- description: observedGeneration is the last generation change you've
- dealt with
- format: int64
- type: integer
- readyReplicas:
- description: readyReplicas indicates how many replicas are ready and
- at the desired state
- format: int32
- type: integer
- version:
- description: version is the level this availability applies to
- type: string
- type: object
- required:
- - spec
- type: object
- served: true
- storage: true
- subresources:
- status: {}
diff --git a/operator/v1/zz_generated.crd-manifests/0000_12_etcd_01_etcds-OKD.crd.yaml b/operator/v1/zz_generated.crd-manifests/0000_12_etcd_01_etcds-OKD.crd.yaml
deleted file mode 100644
index b1ad9fc093b..00000000000
--- a/operator/v1/zz_generated.crd-manifests/0000_12_etcd_01_etcds-OKD.crd.yaml
+++ /dev/null
@@ -1,331 +0,0 @@
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- annotations:
- api-approved.openshift.io: https://github.com/openshift/api/pull/752
- api.openshift.io/merged-by-featuregates: "true"
- include.release.openshift.io/ibm-cloud-managed: "true"
- include.release.openshift.io/self-managed-high-availability: "true"
- release.openshift.io/feature-set: OKD
- name: etcds.operator.openshift.io
-spec:
- group: operator.openshift.io
- names:
- categories:
- - coreoperators
- kind: Etcd
- listKind: EtcdList
- plural: etcds
- singular: etcd
- scope: Cluster
- versions:
- - name: v1
- schema:
- openAPIV3Schema:
- 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).
- properties:
- apiVersion:
- description: |-
- 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
- type: string
- kind:
- description: |-
- 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
- type: string
- metadata:
- type: object
- spec:
- properties:
- controlPlaneHardwareSpeed:
- description: "HardwareSpeed allows user to change the etcd tuning
- profile which configures\nthe latency parameters for heartbeat interval
- and leader election timeouts\nallowing the cluster to tolerate longer
- round-trip-times between etcd members.\nValid values are \"\", \"Standard\"
- and \"Slower\".\n\t\"\" means no opinion and the platform is left
- to choose a reasonable default\n\twhich is subject to change without
- notice."
- enum:
- - ""
- - Standard
- - Slower
- type: string
- failedRevisionLimit:
- description: |-
- 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)
- format: int32
- type: integer
- forceRedeploymentReason:
- description: |-
- 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.
- type: string
- logLevel:
- default: Normal
- description: |-
- 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".
- enum:
- - ""
- - Normal
- - Debug
- - Trace
- - TraceAll
- type: string
- managementState:
- description: managementState indicates whether and how the operator
- should manage the component
- pattern: ^(Managed|Unmanaged|Force|Removed)$
- type: string
- observedConfig:
- description: |-
- 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
- nullable: true
- type: object
- x-kubernetes-preserve-unknown-fields: true
- operatorLogLevel:
- default: Normal
- description: |-
- 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".
- enum:
- - ""
- - Normal
- - Debug
- - Trace
- - TraceAll
- type: string
- succeededRevisionLimit:
- description: |-
- 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)
- format: int32
- type: integer
- unsupportedConfigOverrides:
- description: |-
- 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.
- nullable: true
- type: object
- x-kubernetes-preserve-unknown-fields: true
- type: object
- status:
- properties:
- conditions:
- description: conditions is a list of conditions and their status
- items:
- description: OperatorCondition is just the standard condition fields.
- properties:
- lastTransitionTime:
- description: |-
- 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.
- format: date-time
- type: string
- message:
- type: string
- reason:
- type: string
- status:
- description: status of the condition, one of True, False, Unknown.
- enum:
- - "True"
- - "False"
- - Unknown
- type: string
- type:
- description: type of condition in CamelCase or in foo.example.com/CamelCase.
- maxLength: 316
- pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
- type: string
- required:
- - lastTransitionTime
- - status
- - type
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - type
- x-kubernetes-list-type: map
- controlPlaneHardwareSpeed:
- description: ControlPlaneHardwareSpeed declares valid hardware speed
- tolerance levels
- enum:
- - ""
- - Standard
- - Slower
- type: string
- generations:
- description: generations are used to determine when an item needs
- to be reconciled or has changed in a way that needs a reaction.
- items:
- description: GenerationStatus keeps track of the generation for
- a given resource so that decisions about forced updates can be
- made.
- properties:
- group:
- description: group is the group of the thing you're tracking
- type: string
- hash:
- description: hash is an optional field set for resources without
- generation that are content sensitive like secrets and configmaps
- type: string
- lastGeneration:
- description: lastGeneration is the last generation of the workload
- controller involved
- format: int64
- type: integer
- name:
- description: name is the name of the thing you're tracking
- type: string
- namespace:
- description: namespace is where the thing you're tracking is
- type: string
- resource:
- description: resource is the resource type of the thing you're
- tracking
- type: string
- required:
- - group
- - name
- - namespace
- - resource
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - group
- - resource
- - namespace
- - name
- x-kubernetes-list-type: map
- latestAvailableRevision:
- description: latestAvailableRevision is the deploymentID of the most
- recent deployment
- format: int32
- type: integer
- x-kubernetes-validations:
- - message: must only increase
- rule: self >= oldSelf
- latestAvailableRevisionReason:
- description: latestAvailableRevisionReason describe the detailed reason
- for the most recent deployment
- type: string
- nodeStatuses:
- description: nodeStatuses track the deployment values and errors across
- individual nodes
- items:
- description: NodeStatus provides information about the current state
- of a particular node managed by this operator.
- properties:
- currentRevision:
- description: |-
- currentRevision is the generation of the most recently successful deployment.
- Can not be set on creation of a nodeStatus. Updates must only increase the value.
- format: int32
- type: integer
- x-kubernetes-validations:
- - message: must only increase
- rule: self >= oldSelf
- lastFailedCount:
- description: lastFailedCount is how often the installer pod
- of the last failed revision failed.
- type: integer
- lastFailedReason:
- description: lastFailedReason is a machine readable failure
- reason string.
- type: string
- lastFailedRevision:
- description: lastFailedRevision is the generation of the deployment
- we tried and failed to deploy.
- format: int32
- type: integer
- lastFailedRevisionErrors:
- description: lastFailedRevisionErrors is a list of human readable
- errors during the failed deployment referenced in lastFailedRevision.
- items:
- type: string
- type: array
- x-kubernetes-list-type: atomic
- lastFailedTime:
- description: lastFailedTime is the time the last failed revision
- failed the last time.
- format: date-time
- type: string
- lastFallbackCount:
- description: lastFallbackCount is how often a fallback to a
- previous revision happened.
- type: integer
- nodeName:
- description: nodeName is the name of the node
- type: string
- targetRevision:
- description: |-
- targetRevision is the generation of the deployment we're trying to apply.
- Can not be set on creation of a nodeStatus.
- format: int32
- type: integer
- required:
- - nodeName
- type: object
- x-kubernetes-validations:
- - fieldPath: .currentRevision
- message: cannot be unset once set
- rule: has(self.currentRevision) || !has(oldSelf.currentRevision)
- - fieldPath: .currentRevision
- message: currentRevision can not be set on creation of a nodeStatus
- optionalOldSelf: true
- rule: oldSelf.hasValue() || !has(self.currentRevision)
- - fieldPath: .targetRevision
- message: targetRevision can not be set on creation of a nodeStatus
- optionalOldSelf: true
- rule: oldSelf.hasValue() || !has(self.targetRevision)
- type: array
- x-kubernetes-list-map-keys:
- - nodeName
- x-kubernetes-list-type: map
- x-kubernetes-validations:
- - message: no more than 1 node status may have a nonzero targetRevision
- rule: size(self.filter(status, status.?targetRevision.orValue(0)
- != 0)) <= 1
- observedGeneration:
- description: observedGeneration is the last generation change you've
- dealt with
- format: int64
- type: integer
- readyReplicas:
- description: readyReplicas indicates how many replicas are ready and
- at the desired state
- format: int32
- type: integer
- version:
- description: version is the level this availability applies to
- type: string
- type: object
- required:
- - spec
- type: object
- served: true
- storage: true
- subresources:
- status: {}
diff --git a/operator/v1/zz_generated.crd-manifests/0000_12_etcd_01_etcds-TechPreviewNoUpgrade.crd.yaml b/operator/v1/zz_generated.crd-manifests/0000_12_etcd_01_etcds-TechPreviewNoUpgrade.crd.yaml
deleted file mode 100644
index b74dfb9893e..00000000000
--- a/operator/v1/zz_generated.crd-manifests/0000_12_etcd_01_etcds-TechPreviewNoUpgrade.crd.yaml
+++ /dev/null
@@ -1,344 +0,0 @@
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- annotations:
- api-approved.openshift.io: https://github.com/openshift/api/pull/752
- api.openshift.io/merged-by-featuregates: "true"
- include.release.openshift.io/ibm-cloud-managed: "true"
- include.release.openshift.io/self-managed-high-availability: "true"
- release.openshift.io/feature-set: TechPreviewNoUpgrade
- name: etcds.operator.openshift.io
-spec:
- group: operator.openshift.io
- names:
- categories:
- - coreoperators
- kind: Etcd
- listKind: EtcdList
- plural: etcds
- singular: etcd
- scope: Cluster
- versions:
- - name: v1
- schema:
- openAPIV3Schema:
- 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).
- properties:
- apiVersion:
- description: |-
- 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
- type: string
- kind:
- description: |-
- 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
- type: string
- metadata:
- type: object
- spec:
- properties:
- backendQuotaGiB:
- default: 8
- description: |-
- backendQuotaGiB sets the etcd backend storage size limit in gibibytes.
- The value should be an integer not less than 8 and not more than 16.
- When not specified, the default value is 8.
- format: int32
- maximum: 16
- minimum: 8
- type: integer
- x-kubernetes-validations:
- - message: etcd backendQuotaGiB may not be decreased
- rule: self>=oldSelf
- controlPlaneHardwareSpeed:
- description: "HardwareSpeed allows user to change the etcd tuning
- profile which configures\nthe latency parameters for heartbeat interval
- and leader election timeouts\nallowing the cluster to tolerate longer
- round-trip-times between etcd members.\nValid values are \"\", \"Standard\"
- and \"Slower\".\n\t\"\" means no opinion and the platform is left
- to choose a reasonable default\n\twhich is subject to change without
- notice."
- enum:
- - ""
- - Standard
- - Slower
- type: string
- failedRevisionLimit:
- description: |-
- 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)
- format: int32
- type: integer
- forceRedeploymentReason:
- description: |-
- 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.
- type: string
- logLevel:
- default: Normal
- description: |-
- 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".
- enum:
- - ""
- - Normal
- - Debug
- - Trace
- - TraceAll
- type: string
- managementState:
- description: managementState indicates whether and how the operator
- should manage the component
- pattern: ^(Managed|Unmanaged|Force|Removed)$
- type: string
- observedConfig:
- description: |-
- 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
- nullable: true
- type: object
- x-kubernetes-preserve-unknown-fields: true
- operatorLogLevel:
- default: Normal
- description: |-
- 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".
- enum:
- - ""
- - Normal
- - Debug
- - Trace
- - TraceAll
- type: string
- succeededRevisionLimit:
- description: |-
- 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)
- format: int32
- type: integer
- unsupportedConfigOverrides:
- description: |-
- 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.
- nullable: true
- type: object
- x-kubernetes-preserve-unknown-fields: true
- type: object
- status:
- properties:
- conditions:
- description: conditions is a list of conditions and their status
- items:
- description: OperatorCondition is just the standard condition fields.
- properties:
- lastTransitionTime:
- description: |-
- 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.
- format: date-time
- type: string
- message:
- type: string
- reason:
- type: string
- status:
- description: status of the condition, one of True, False, Unknown.
- enum:
- - "True"
- - "False"
- - Unknown
- type: string
- type:
- description: type of condition in CamelCase or in foo.example.com/CamelCase.
- maxLength: 316
- pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
- type: string
- required:
- - lastTransitionTime
- - status
- - type
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - type
- x-kubernetes-list-type: map
- controlPlaneHardwareSpeed:
- description: ControlPlaneHardwareSpeed declares valid hardware speed
- tolerance levels
- enum:
- - ""
- - Standard
- - Slower
- type: string
- generations:
- description: generations are used to determine when an item needs
- to be reconciled or has changed in a way that needs a reaction.
- items:
- description: GenerationStatus keeps track of the generation for
- a given resource so that decisions about forced updates can be
- made.
- properties:
- group:
- description: group is the group of the thing you're tracking
- type: string
- hash:
- description: hash is an optional field set for resources without
- generation that are content sensitive like secrets and configmaps
- type: string
- lastGeneration:
- description: lastGeneration is the last generation of the workload
- controller involved
- format: int64
- type: integer
- name:
- description: name is the name of the thing you're tracking
- type: string
- namespace:
- description: namespace is where the thing you're tracking is
- type: string
- resource:
- description: resource is the resource type of the thing you're
- tracking
- type: string
- required:
- - group
- - name
- - namespace
- - resource
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - group
- - resource
- - namespace
- - name
- x-kubernetes-list-type: map
- latestAvailableRevision:
- description: latestAvailableRevision is the deploymentID of the most
- recent deployment
- format: int32
- type: integer
- x-kubernetes-validations:
- - message: must only increase
- rule: self >= oldSelf
- latestAvailableRevisionReason:
- description: latestAvailableRevisionReason describe the detailed reason
- for the most recent deployment
- type: string
- nodeStatuses:
- description: nodeStatuses track the deployment values and errors across
- individual nodes
- items:
- description: NodeStatus provides information about the current state
- of a particular node managed by this operator.
- properties:
- currentRevision:
- description: |-
- currentRevision is the generation of the most recently successful deployment.
- Can not be set on creation of a nodeStatus. Updates must only increase the value.
- format: int32
- type: integer
- x-kubernetes-validations:
- - message: must only increase
- rule: self >= oldSelf
- lastFailedCount:
- description: lastFailedCount is how often the installer pod
- of the last failed revision failed.
- type: integer
- lastFailedReason:
- description: lastFailedReason is a machine readable failure
- reason string.
- type: string
- lastFailedRevision:
- description: lastFailedRevision is the generation of the deployment
- we tried and failed to deploy.
- format: int32
- type: integer
- lastFailedRevisionErrors:
- description: lastFailedRevisionErrors is a list of human readable
- errors during the failed deployment referenced in lastFailedRevision.
- items:
- type: string
- type: array
- x-kubernetes-list-type: atomic
- lastFailedTime:
- description: lastFailedTime is the time the last failed revision
- failed the last time.
- format: date-time
- type: string
- lastFallbackCount:
- description: lastFallbackCount is how often a fallback to a
- previous revision happened.
- type: integer
- nodeName:
- description: nodeName is the name of the node
- type: string
- targetRevision:
- description: |-
- targetRevision is the generation of the deployment we're trying to apply.
- Can not be set on creation of a nodeStatus.
- format: int32
- type: integer
- required:
- - nodeName
- type: object
- x-kubernetes-validations:
- - fieldPath: .currentRevision
- message: cannot be unset once set
- rule: has(self.currentRevision) || !has(oldSelf.currentRevision)
- - fieldPath: .currentRevision
- message: currentRevision can not be set on creation of a nodeStatus
- optionalOldSelf: true
- rule: oldSelf.hasValue() || !has(self.currentRevision)
- - fieldPath: .targetRevision
- message: targetRevision can not be set on creation of a nodeStatus
- optionalOldSelf: true
- rule: oldSelf.hasValue() || !has(self.targetRevision)
- type: array
- x-kubernetes-list-map-keys:
- - nodeName
- x-kubernetes-list-type: map
- x-kubernetes-validations:
- - message: no more than 1 node status may have a nonzero targetRevision
- rule: size(self.filter(status, status.?targetRevision.orValue(0)
- != 0)) <= 1
- observedGeneration:
- description: observedGeneration is the last generation change you've
- dealt with
- format: int64
- type: integer
- readyReplicas:
- description: readyReplicas indicates how many replicas are ready and
- at the desired state
- format: int32
- type: integer
- version:
- description: version is the level this availability applies to
- type: string
- type: object
- required:
- - spec
- type: object
- served: true
- storage: true
- subresources:
- status: {}
diff --git a/operator/v1/zz_generated.crd-manifests/0000_12_etcd_01_etcds-CustomNoUpgrade.crd.yaml b/operator/v1/zz_generated.crd-manifests/0000_12_etcd_01_etcds.crd.yaml
similarity index 99%
rename from operator/v1/zz_generated.crd-manifests/0000_12_etcd_01_etcds-CustomNoUpgrade.crd.yaml
rename to operator/v1/zz_generated.crd-manifests/0000_12_etcd_01_etcds.crd.yaml
index 1feb64cbb5c..d4988835866 100644
--- a/operator/v1/zz_generated.crd-manifests/0000_12_etcd_01_etcds-CustomNoUpgrade.crd.yaml
+++ b/operator/v1/zz_generated.crd-manifests/0000_12_etcd_01_etcds.crd.yaml
@@ -6,7 +6,6 @@ metadata:
api.openshift.io/merged-by-featuregates: "true"
include.release.openshift.io/ibm-cloud-managed: "true"
include.release.openshift.io/self-managed-high-availability: "true"
- release.openshift.io/feature-set: CustomNoUpgrade
name: etcds.operator.openshift.io
spec:
group: operator.openshift.io
diff --git a/payload-manifests/crds/0000_12_etcd_01_etcds-Default.crd.yaml b/payload-manifests/crds/0000_12_etcd_01_etcds-Default.crd.yaml
deleted file mode 100644
index 23e6bdc63f2..00000000000
--- a/payload-manifests/crds/0000_12_etcd_01_etcds-Default.crd.yaml
+++ /dev/null
@@ -1,331 +0,0 @@
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- annotations:
- api-approved.openshift.io: https://github.com/openshift/api/pull/752
- api.openshift.io/merged-by-featuregates: "true"
- include.release.openshift.io/ibm-cloud-managed: "true"
- include.release.openshift.io/self-managed-high-availability: "true"
- release.openshift.io/feature-set: Default
- name: etcds.operator.openshift.io
-spec:
- group: operator.openshift.io
- names:
- categories:
- - coreoperators
- kind: Etcd
- listKind: EtcdList
- plural: etcds
- singular: etcd
- scope: Cluster
- versions:
- - name: v1
- schema:
- openAPIV3Schema:
- 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).
- properties:
- apiVersion:
- description: |-
- 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
- type: string
- kind:
- description: |-
- 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
- type: string
- metadata:
- type: object
- spec:
- properties:
- controlPlaneHardwareSpeed:
- description: "HardwareSpeed allows user to change the etcd tuning
- profile which configures\nthe latency parameters for heartbeat interval
- and leader election timeouts\nallowing the cluster to tolerate longer
- round-trip-times between etcd members.\nValid values are \"\", \"Standard\"
- and \"Slower\".\n\t\"\" means no opinion and the platform is left
- to choose a reasonable default\n\twhich is subject to change without
- notice."
- enum:
- - ""
- - Standard
- - Slower
- type: string
- failedRevisionLimit:
- description: |-
- 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)
- format: int32
- type: integer
- forceRedeploymentReason:
- description: |-
- 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.
- type: string
- logLevel:
- default: Normal
- description: |-
- 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".
- enum:
- - ""
- - Normal
- - Debug
- - Trace
- - TraceAll
- type: string
- managementState:
- description: managementState indicates whether and how the operator
- should manage the component
- pattern: ^(Managed|Unmanaged|Force|Removed)$
- type: string
- observedConfig:
- description: |-
- 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
- nullable: true
- type: object
- x-kubernetes-preserve-unknown-fields: true
- operatorLogLevel:
- default: Normal
- description: |-
- 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".
- enum:
- - ""
- - Normal
- - Debug
- - Trace
- - TraceAll
- type: string
- succeededRevisionLimit:
- description: |-
- 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)
- format: int32
- type: integer
- unsupportedConfigOverrides:
- description: |-
- 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.
- nullable: true
- type: object
- x-kubernetes-preserve-unknown-fields: true
- type: object
- status:
- properties:
- conditions:
- description: conditions is a list of conditions and their status
- items:
- description: OperatorCondition is just the standard condition fields.
- properties:
- lastTransitionTime:
- description: |-
- 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.
- format: date-time
- type: string
- message:
- type: string
- reason:
- type: string
- status:
- description: status of the condition, one of True, False, Unknown.
- enum:
- - "True"
- - "False"
- - Unknown
- type: string
- type:
- description: type of condition in CamelCase or in foo.example.com/CamelCase.
- maxLength: 316
- pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
- type: string
- required:
- - lastTransitionTime
- - status
- - type
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - type
- x-kubernetes-list-type: map
- controlPlaneHardwareSpeed:
- description: ControlPlaneHardwareSpeed declares valid hardware speed
- tolerance levels
- enum:
- - ""
- - Standard
- - Slower
- type: string
- generations:
- description: generations are used to determine when an item needs
- to be reconciled or has changed in a way that needs a reaction.
- items:
- description: GenerationStatus keeps track of the generation for
- a given resource so that decisions about forced updates can be
- made.
- properties:
- group:
- description: group is the group of the thing you're tracking
- type: string
- hash:
- description: hash is an optional field set for resources without
- generation that are content sensitive like secrets and configmaps
- type: string
- lastGeneration:
- description: lastGeneration is the last generation of the workload
- controller involved
- format: int64
- type: integer
- name:
- description: name is the name of the thing you're tracking
- type: string
- namespace:
- description: namespace is where the thing you're tracking is
- type: string
- resource:
- description: resource is the resource type of the thing you're
- tracking
- type: string
- required:
- - group
- - name
- - namespace
- - resource
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - group
- - resource
- - namespace
- - name
- x-kubernetes-list-type: map
- latestAvailableRevision:
- description: latestAvailableRevision is the deploymentID of the most
- recent deployment
- format: int32
- type: integer
- x-kubernetes-validations:
- - message: must only increase
- rule: self >= oldSelf
- latestAvailableRevisionReason:
- description: latestAvailableRevisionReason describe the detailed reason
- for the most recent deployment
- type: string
- nodeStatuses:
- description: nodeStatuses track the deployment values and errors across
- individual nodes
- items:
- description: NodeStatus provides information about the current state
- of a particular node managed by this operator.
- properties:
- currentRevision:
- description: |-
- currentRevision is the generation of the most recently successful deployment.
- Can not be set on creation of a nodeStatus. Updates must only increase the value.
- format: int32
- type: integer
- x-kubernetes-validations:
- - message: must only increase
- rule: self >= oldSelf
- lastFailedCount:
- description: lastFailedCount is how often the installer pod
- of the last failed revision failed.
- type: integer
- lastFailedReason:
- description: lastFailedReason is a machine readable failure
- reason string.
- type: string
- lastFailedRevision:
- description: lastFailedRevision is the generation of the deployment
- we tried and failed to deploy.
- format: int32
- type: integer
- lastFailedRevisionErrors:
- description: lastFailedRevisionErrors is a list of human readable
- errors during the failed deployment referenced in lastFailedRevision.
- items:
- type: string
- type: array
- x-kubernetes-list-type: atomic
- lastFailedTime:
- description: lastFailedTime is the time the last failed revision
- failed the last time.
- format: date-time
- type: string
- lastFallbackCount:
- description: lastFallbackCount is how often a fallback to a
- previous revision happened.
- type: integer
- nodeName:
- description: nodeName is the name of the node
- type: string
- targetRevision:
- description: |-
- targetRevision is the generation of the deployment we're trying to apply.
- Can not be set on creation of a nodeStatus.
- format: int32
- type: integer
- required:
- - nodeName
- type: object
- x-kubernetes-validations:
- - fieldPath: .currentRevision
- message: cannot be unset once set
- rule: has(self.currentRevision) || !has(oldSelf.currentRevision)
- - fieldPath: .currentRevision
- message: currentRevision can not be set on creation of a nodeStatus
- optionalOldSelf: true
- rule: oldSelf.hasValue() || !has(self.currentRevision)
- - fieldPath: .targetRevision
- message: targetRevision can not be set on creation of a nodeStatus
- optionalOldSelf: true
- rule: oldSelf.hasValue() || !has(self.targetRevision)
- type: array
- x-kubernetes-list-map-keys:
- - nodeName
- x-kubernetes-list-type: map
- x-kubernetes-validations:
- - message: no more than 1 node status may have a nonzero targetRevision
- rule: size(self.filter(status, status.?targetRevision.orValue(0)
- != 0)) <= 1
- observedGeneration:
- description: observedGeneration is the last generation change you've
- dealt with
- format: int64
- type: integer
- readyReplicas:
- description: readyReplicas indicates how many replicas are ready and
- at the desired state
- format: int32
- type: integer
- version:
- description: version is the level this availability applies to
- type: string
- type: object
- required:
- - spec
- type: object
- served: true
- storage: true
- subresources:
- status: {}
diff --git a/payload-manifests/crds/0000_12_etcd_01_etcds-DevPreviewNoUpgrade.crd.yaml b/payload-manifests/crds/0000_12_etcd_01_etcds-DevPreviewNoUpgrade.crd.yaml
deleted file mode 100644
index 2c32b9c9648..00000000000
--- a/payload-manifests/crds/0000_12_etcd_01_etcds-DevPreviewNoUpgrade.crd.yaml
+++ /dev/null
@@ -1,344 +0,0 @@
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- annotations:
- api-approved.openshift.io: https://github.com/openshift/api/pull/752
- api.openshift.io/merged-by-featuregates: "true"
- include.release.openshift.io/ibm-cloud-managed: "true"
- include.release.openshift.io/self-managed-high-availability: "true"
- release.openshift.io/feature-set: DevPreviewNoUpgrade
- name: etcds.operator.openshift.io
-spec:
- group: operator.openshift.io
- names:
- categories:
- - coreoperators
- kind: Etcd
- listKind: EtcdList
- plural: etcds
- singular: etcd
- scope: Cluster
- versions:
- - name: v1
- schema:
- openAPIV3Schema:
- 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).
- properties:
- apiVersion:
- description: |-
- 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
- type: string
- kind:
- description: |-
- 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
- type: string
- metadata:
- type: object
- spec:
- properties:
- backendQuotaGiB:
- default: 8
- description: |-
- backendQuotaGiB sets the etcd backend storage size limit in gibibytes.
- The value should be an integer not less than 8 and not more than 16.
- When not specified, the default value is 8.
- format: int32
- maximum: 16
- minimum: 8
- type: integer
- x-kubernetes-validations:
- - message: etcd backendQuotaGiB may not be decreased
- rule: self>=oldSelf
- controlPlaneHardwareSpeed:
- description: "HardwareSpeed allows user to change the etcd tuning
- profile which configures\nthe latency parameters for heartbeat interval
- and leader election timeouts\nallowing the cluster to tolerate longer
- round-trip-times between etcd members.\nValid values are \"\", \"Standard\"
- and \"Slower\".\n\t\"\" means no opinion and the platform is left
- to choose a reasonable default\n\twhich is subject to change without
- notice."
- enum:
- - ""
- - Standard
- - Slower
- type: string
- failedRevisionLimit:
- description: |-
- 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)
- format: int32
- type: integer
- forceRedeploymentReason:
- description: |-
- 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.
- type: string
- logLevel:
- default: Normal
- description: |-
- 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".
- enum:
- - ""
- - Normal
- - Debug
- - Trace
- - TraceAll
- type: string
- managementState:
- description: managementState indicates whether and how the operator
- should manage the component
- pattern: ^(Managed|Unmanaged|Force|Removed)$
- type: string
- observedConfig:
- description: |-
- 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
- nullable: true
- type: object
- x-kubernetes-preserve-unknown-fields: true
- operatorLogLevel:
- default: Normal
- description: |-
- 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".
- enum:
- - ""
- - Normal
- - Debug
- - Trace
- - TraceAll
- type: string
- succeededRevisionLimit:
- description: |-
- 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)
- format: int32
- type: integer
- unsupportedConfigOverrides:
- description: |-
- 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.
- nullable: true
- type: object
- x-kubernetes-preserve-unknown-fields: true
- type: object
- status:
- properties:
- conditions:
- description: conditions is a list of conditions and their status
- items:
- description: OperatorCondition is just the standard condition fields.
- properties:
- lastTransitionTime:
- description: |-
- 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.
- format: date-time
- type: string
- message:
- type: string
- reason:
- type: string
- status:
- description: status of the condition, one of True, False, Unknown.
- enum:
- - "True"
- - "False"
- - Unknown
- type: string
- type:
- description: type of condition in CamelCase or in foo.example.com/CamelCase.
- maxLength: 316
- pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
- type: string
- required:
- - lastTransitionTime
- - status
- - type
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - type
- x-kubernetes-list-type: map
- controlPlaneHardwareSpeed:
- description: ControlPlaneHardwareSpeed declares valid hardware speed
- tolerance levels
- enum:
- - ""
- - Standard
- - Slower
- type: string
- generations:
- description: generations are used to determine when an item needs
- to be reconciled or has changed in a way that needs a reaction.
- items:
- description: GenerationStatus keeps track of the generation for
- a given resource so that decisions about forced updates can be
- made.
- properties:
- group:
- description: group is the group of the thing you're tracking
- type: string
- hash:
- description: hash is an optional field set for resources without
- generation that are content sensitive like secrets and configmaps
- type: string
- lastGeneration:
- description: lastGeneration is the last generation of the workload
- controller involved
- format: int64
- type: integer
- name:
- description: name is the name of the thing you're tracking
- type: string
- namespace:
- description: namespace is where the thing you're tracking is
- type: string
- resource:
- description: resource is the resource type of the thing you're
- tracking
- type: string
- required:
- - group
- - name
- - namespace
- - resource
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - group
- - resource
- - namespace
- - name
- x-kubernetes-list-type: map
- latestAvailableRevision:
- description: latestAvailableRevision is the deploymentID of the most
- recent deployment
- format: int32
- type: integer
- x-kubernetes-validations:
- - message: must only increase
- rule: self >= oldSelf
- latestAvailableRevisionReason:
- description: latestAvailableRevisionReason describe the detailed reason
- for the most recent deployment
- type: string
- nodeStatuses:
- description: nodeStatuses track the deployment values and errors across
- individual nodes
- items:
- description: NodeStatus provides information about the current state
- of a particular node managed by this operator.
- properties:
- currentRevision:
- description: |-
- currentRevision is the generation of the most recently successful deployment.
- Can not be set on creation of a nodeStatus. Updates must only increase the value.
- format: int32
- type: integer
- x-kubernetes-validations:
- - message: must only increase
- rule: self >= oldSelf
- lastFailedCount:
- description: lastFailedCount is how often the installer pod
- of the last failed revision failed.
- type: integer
- lastFailedReason:
- description: lastFailedReason is a machine readable failure
- reason string.
- type: string
- lastFailedRevision:
- description: lastFailedRevision is the generation of the deployment
- we tried and failed to deploy.
- format: int32
- type: integer
- lastFailedRevisionErrors:
- description: lastFailedRevisionErrors is a list of human readable
- errors during the failed deployment referenced in lastFailedRevision.
- items:
- type: string
- type: array
- x-kubernetes-list-type: atomic
- lastFailedTime:
- description: lastFailedTime is the time the last failed revision
- failed the last time.
- format: date-time
- type: string
- lastFallbackCount:
- description: lastFallbackCount is how often a fallback to a
- previous revision happened.
- type: integer
- nodeName:
- description: nodeName is the name of the node
- type: string
- targetRevision:
- description: |-
- targetRevision is the generation of the deployment we're trying to apply.
- Can not be set on creation of a nodeStatus.
- format: int32
- type: integer
- required:
- - nodeName
- type: object
- x-kubernetes-validations:
- - fieldPath: .currentRevision
- message: cannot be unset once set
- rule: has(self.currentRevision) || !has(oldSelf.currentRevision)
- - fieldPath: .currentRevision
- message: currentRevision can not be set on creation of a nodeStatus
- optionalOldSelf: true
- rule: oldSelf.hasValue() || !has(self.currentRevision)
- - fieldPath: .targetRevision
- message: targetRevision can not be set on creation of a nodeStatus
- optionalOldSelf: true
- rule: oldSelf.hasValue() || !has(self.targetRevision)
- type: array
- x-kubernetes-list-map-keys:
- - nodeName
- x-kubernetes-list-type: map
- x-kubernetes-validations:
- - message: no more than 1 node status may have a nonzero targetRevision
- rule: size(self.filter(status, status.?targetRevision.orValue(0)
- != 0)) <= 1
- observedGeneration:
- description: observedGeneration is the last generation change you've
- dealt with
- format: int64
- type: integer
- readyReplicas:
- description: readyReplicas indicates how many replicas are ready and
- at the desired state
- format: int32
- type: integer
- version:
- description: version is the level this availability applies to
- type: string
- type: object
- required:
- - spec
- type: object
- served: true
- storage: true
- subresources:
- status: {}
diff --git a/payload-manifests/crds/0000_12_etcd_01_etcds-OKD.crd.yaml b/payload-manifests/crds/0000_12_etcd_01_etcds-OKD.crd.yaml
deleted file mode 100644
index b1ad9fc093b..00000000000
--- a/payload-manifests/crds/0000_12_etcd_01_etcds-OKD.crd.yaml
+++ /dev/null
@@ -1,331 +0,0 @@
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- annotations:
- api-approved.openshift.io: https://github.com/openshift/api/pull/752
- api.openshift.io/merged-by-featuregates: "true"
- include.release.openshift.io/ibm-cloud-managed: "true"
- include.release.openshift.io/self-managed-high-availability: "true"
- release.openshift.io/feature-set: OKD
- name: etcds.operator.openshift.io
-spec:
- group: operator.openshift.io
- names:
- categories:
- - coreoperators
- kind: Etcd
- listKind: EtcdList
- plural: etcds
- singular: etcd
- scope: Cluster
- versions:
- - name: v1
- schema:
- openAPIV3Schema:
- 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).
- properties:
- apiVersion:
- description: |-
- 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
- type: string
- kind:
- description: |-
- 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
- type: string
- metadata:
- type: object
- spec:
- properties:
- controlPlaneHardwareSpeed:
- description: "HardwareSpeed allows user to change the etcd tuning
- profile which configures\nthe latency parameters for heartbeat interval
- and leader election timeouts\nallowing the cluster to tolerate longer
- round-trip-times between etcd members.\nValid values are \"\", \"Standard\"
- and \"Slower\".\n\t\"\" means no opinion and the platform is left
- to choose a reasonable default\n\twhich is subject to change without
- notice."
- enum:
- - ""
- - Standard
- - Slower
- type: string
- failedRevisionLimit:
- description: |-
- 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)
- format: int32
- type: integer
- forceRedeploymentReason:
- description: |-
- 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.
- type: string
- logLevel:
- default: Normal
- description: |-
- 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".
- enum:
- - ""
- - Normal
- - Debug
- - Trace
- - TraceAll
- type: string
- managementState:
- description: managementState indicates whether and how the operator
- should manage the component
- pattern: ^(Managed|Unmanaged|Force|Removed)$
- type: string
- observedConfig:
- description: |-
- 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
- nullable: true
- type: object
- x-kubernetes-preserve-unknown-fields: true
- operatorLogLevel:
- default: Normal
- description: |-
- 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".
- enum:
- - ""
- - Normal
- - Debug
- - Trace
- - TraceAll
- type: string
- succeededRevisionLimit:
- description: |-
- 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)
- format: int32
- type: integer
- unsupportedConfigOverrides:
- description: |-
- 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.
- nullable: true
- type: object
- x-kubernetes-preserve-unknown-fields: true
- type: object
- status:
- properties:
- conditions:
- description: conditions is a list of conditions and their status
- items:
- description: OperatorCondition is just the standard condition fields.
- properties:
- lastTransitionTime:
- description: |-
- 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.
- format: date-time
- type: string
- message:
- type: string
- reason:
- type: string
- status:
- description: status of the condition, one of True, False, Unknown.
- enum:
- - "True"
- - "False"
- - Unknown
- type: string
- type:
- description: type of condition in CamelCase or in foo.example.com/CamelCase.
- maxLength: 316
- pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
- type: string
- required:
- - lastTransitionTime
- - status
- - type
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - type
- x-kubernetes-list-type: map
- controlPlaneHardwareSpeed:
- description: ControlPlaneHardwareSpeed declares valid hardware speed
- tolerance levels
- enum:
- - ""
- - Standard
- - Slower
- type: string
- generations:
- description: generations are used to determine when an item needs
- to be reconciled or has changed in a way that needs a reaction.
- items:
- description: GenerationStatus keeps track of the generation for
- a given resource so that decisions about forced updates can be
- made.
- properties:
- group:
- description: group is the group of the thing you're tracking
- type: string
- hash:
- description: hash is an optional field set for resources without
- generation that are content sensitive like secrets and configmaps
- type: string
- lastGeneration:
- description: lastGeneration is the last generation of the workload
- controller involved
- format: int64
- type: integer
- name:
- description: name is the name of the thing you're tracking
- type: string
- namespace:
- description: namespace is where the thing you're tracking is
- type: string
- resource:
- description: resource is the resource type of the thing you're
- tracking
- type: string
- required:
- - group
- - name
- - namespace
- - resource
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - group
- - resource
- - namespace
- - name
- x-kubernetes-list-type: map
- latestAvailableRevision:
- description: latestAvailableRevision is the deploymentID of the most
- recent deployment
- format: int32
- type: integer
- x-kubernetes-validations:
- - message: must only increase
- rule: self >= oldSelf
- latestAvailableRevisionReason:
- description: latestAvailableRevisionReason describe the detailed reason
- for the most recent deployment
- type: string
- nodeStatuses:
- description: nodeStatuses track the deployment values and errors across
- individual nodes
- items:
- description: NodeStatus provides information about the current state
- of a particular node managed by this operator.
- properties:
- currentRevision:
- description: |-
- currentRevision is the generation of the most recently successful deployment.
- Can not be set on creation of a nodeStatus. Updates must only increase the value.
- format: int32
- type: integer
- x-kubernetes-validations:
- - message: must only increase
- rule: self >= oldSelf
- lastFailedCount:
- description: lastFailedCount is how often the installer pod
- of the last failed revision failed.
- type: integer
- lastFailedReason:
- description: lastFailedReason is a machine readable failure
- reason string.
- type: string
- lastFailedRevision:
- description: lastFailedRevision is the generation of the deployment
- we tried and failed to deploy.
- format: int32
- type: integer
- lastFailedRevisionErrors:
- description: lastFailedRevisionErrors is a list of human readable
- errors during the failed deployment referenced in lastFailedRevision.
- items:
- type: string
- type: array
- x-kubernetes-list-type: atomic
- lastFailedTime:
- description: lastFailedTime is the time the last failed revision
- failed the last time.
- format: date-time
- type: string
- lastFallbackCount:
- description: lastFallbackCount is how often a fallback to a
- previous revision happened.
- type: integer
- nodeName:
- description: nodeName is the name of the node
- type: string
- targetRevision:
- description: |-
- targetRevision is the generation of the deployment we're trying to apply.
- Can not be set on creation of a nodeStatus.
- format: int32
- type: integer
- required:
- - nodeName
- type: object
- x-kubernetes-validations:
- - fieldPath: .currentRevision
- message: cannot be unset once set
- rule: has(self.currentRevision) || !has(oldSelf.currentRevision)
- - fieldPath: .currentRevision
- message: currentRevision can not be set on creation of a nodeStatus
- optionalOldSelf: true
- rule: oldSelf.hasValue() || !has(self.currentRevision)
- - fieldPath: .targetRevision
- message: targetRevision can not be set on creation of a nodeStatus
- optionalOldSelf: true
- rule: oldSelf.hasValue() || !has(self.targetRevision)
- type: array
- x-kubernetes-list-map-keys:
- - nodeName
- x-kubernetes-list-type: map
- x-kubernetes-validations:
- - message: no more than 1 node status may have a nonzero targetRevision
- rule: size(self.filter(status, status.?targetRevision.orValue(0)
- != 0)) <= 1
- observedGeneration:
- description: observedGeneration is the last generation change you've
- dealt with
- format: int64
- type: integer
- readyReplicas:
- description: readyReplicas indicates how many replicas are ready and
- at the desired state
- format: int32
- type: integer
- version:
- description: version is the level this availability applies to
- type: string
- type: object
- required:
- - spec
- type: object
- served: true
- storage: true
- subresources:
- status: {}
diff --git a/payload-manifests/crds/0000_12_etcd_01_etcds-TechPreviewNoUpgrade.crd.yaml b/payload-manifests/crds/0000_12_etcd_01_etcds-TechPreviewNoUpgrade.crd.yaml
deleted file mode 100644
index b74dfb9893e..00000000000
--- a/payload-manifests/crds/0000_12_etcd_01_etcds-TechPreviewNoUpgrade.crd.yaml
+++ /dev/null
@@ -1,344 +0,0 @@
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- annotations:
- api-approved.openshift.io: https://github.com/openshift/api/pull/752
- api.openshift.io/merged-by-featuregates: "true"
- include.release.openshift.io/ibm-cloud-managed: "true"
- include.release.openshift.io/self-managed-high-availability: "true"
- release.openshift.io/feature-set: TechPreviewNoUpgrade
- name: etcds.operator.openshift.io
-spec:
- group: operator.openshift.io
- names:
- categories:
- - coreoperators
- kind: Etcd
- listKind: EtcdList
- plural: etcds
- singular: etcd
- scope: Cluster
- versions:
- - name: v1
- schema:
- openAPIV3Schema:
- 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).
- properties:
- apiVersion:
- description: |-
- 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
- type: string
- kind:
- description: |-
- 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
- type: string
- metadata:
- type: object
- spec:
- properties:
- backendQuotaGiB:
- default: 8
- description: |-
- backendQuotaGiB sets the etcd backend storage size limit in gibibytes.
- The value should be an integer not less than 8 and not more than 16.
- When not specified, the default value is 8.
- format: int32
- maximum: 16
- minimum: 8
- type: integer
- x-kubernetes-validations:
- - message: etcd backendQuotaGiB may not be decreased
- rule: self>=oldSelf
- controlPlaneHardwareSpeed:
- description: "HardwareSpeed allows user to change the etcd tuning
- profile which configures\nthe latency parameters for heartbeat interval
- and leader election timeouts\nallowing the cluster to tolerate longer
- round-trip-times between etcd members.\nValid values are \"\", \"Standard\"
- and \"Slower\".\n\t\"\" means no opinion and the platform is left
- to choose a reasonable default\n\twhich is subject to change without
- notice."
- enum:
- - ""
- - Standard
- - Slower
- type: string
- failedRevisionLimit:
- description: |-
- 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)
- format: int32
- type: integer
- forceRedeploymentReason:
- description: |-
- 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.
- type: string
- logLevel:
- default: Normal
- description: |-
- 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".
- enum:
- - ""
- - Normal
- - Debug
- - Trace
- - TraceAll
- type: string
- managementState:
- description: managementState indicates whether and how the operator
- should manage the component
- pattern: ^(Managed|Unmanaged|Force|Removed)$
- type: string
- observedConfig:
- description: |-
- 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
- nullable: true
- type: object
- x-kubernetes-preserve-unknown-fields: true
- operatorLogLevel:
- default: Normal
- description: |-
- 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".
- enum:
- - ""
- - Normal
- - Debug
- - Trace
- - TraceAll
- type: string
- succeededRevisionLimit:
- description: |-
- 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)
- format: int32
- type: integer
- unsupportedConfigOverrides:
- description: |-
- 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.
- nullable: true
- type: object
- x-kubernetes-preserve-unknown-fields: true
- type: object
- status:
- properties:
- conditions:
- description: conditions is a list of conditions and their status
- items:
- description: OperatorCondition is just the standard condition fields.
- properties:
- lastTransitionTime:
- description: |-
- 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.
- format: date-time
- type: string
- message:
- type: string
- reason:
- type: string
- status:
- description: status of the condition, one of True, False, Unknown.
- enum:
- - "True"
- - "False"
- - Unknown
- type: string
- type:
- description: type of condition in CamelCase or in foo.example.com/CamelCase.
- maxLength: 316
- pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
- type: string
- required:
- - lastTransitionTime
- - status
- - type
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - type
- x-kubernetes-list-type: map
- controlPlaneHardwareSpeed:
- description: ControlPlaneHardwareSpeed declares valid hardware speed
- tolerance levels
- enum:
- - ""
- - Standard
- - Slower
- type: string
- generations:
- description: generations are used to determine when an item needs
- to be reconciled or has changed in a way that needs a reaction.
- items:
- description: GenerationStatus keeps track of the generation for
- a given resource so that decisions about forced updates can be
- made.
- properties:
- group:
- description: group is the group of the thing you're tracking
- type: string
- hash:
- description: hash is an optional field set for resources without
- generation that are content sensitive like secrets and configmaps
- type: string
- lastGeneration:
- description: lastGeneration is the last generation of the workload
- controller involved
- format: int64
- type: integer
- name:
- description: name is the name of the thing you're tracking
- type: string
- namespace:
- description: namespace is where the thing you're tracking is
- type: string
- resource:
- description: resource is the resource type of the thing you're
- tracking
- type: string
- required:
- - group
- - name
- - namespace
- - resource
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - group
- - resource
- - namespace
- - name
- x-kubernetes-list-type: map
- latestAvailableRevision:
- description: latestAvailableRevision is the deploymentID of the most
- recent deployment
- format: int32
- type: integer
- x-kubernetes-validations:
- - message: must only increase
- rule: self >= oldSelf
- latestAvailableRevisionReason:
- description: latestAvailableRevisionReason describe the detailed reason
- for the most recent deployment
- type: string
- nodeStatuses:
- description: nodeStatuses track the deployment values and errors across
- individual nodes
- items:
- description: NodeStatus provides information about the current state
- of a particular node managed by this operator.
- properties:
- currentRevision:
- description: |-
- currentRevision is the generation of the most recently successful deployment.
- Can not be set on creation of a nodeStatus. Updates must only increase the value.
- format: int32
- type: integer
- x-kubernetes-validations:
- - message: must only increase
- rule: self >= oldSelf
- lastFailedCount:
- description: lastFailedCount is how often the installer pod
- of the last failed revision failed.
- type: integer
- lastFailedReason:
- description: lastFailedReason is a machine readable failure
- reason string.
- type: string
- lastFailedRevision:
- description: lastFailedRevision is the generation of the deployment
- we tried and failed to deploy.
- format: int32
- type: integer
- lastFailedRevisionErrors:
- description: lastFailedRevisionErrors is a list of human readable
- errors during the failed deployment referenced in lastFailedRevision.
- items:
- type: string
- type: array
- x-kubernetes-list-type: atomic
- lastFailedTime:
- description: lastFailedTime is the time the last failed revision
- failed the last time.
- format: date-time
- type: string
- lastFallbackCount:
- description: lastFallbackCount is how often a fallback to a
- previous revision happened.
- type: integer
- nodeName:
- description: nodeName is the name of the node
- type: string
- targetRevision:
- description: |-
- targetRevision is the generation of the deployment we're trying to apply.
- Can not be set on creation of a nodeStatus.
- format: int32
- type: integer
- required:
- - nodeName
- type: object
- x-kubernetes-validations:
- - fieldPath: .currentRevision
- message: cannot be unset once set
- rule: has(self.currentRevision) || !has(oldSelf.currentRevision)
- - fieldPath: .currentRevision
- message: currentRevision can not be set on creation of a nodeStatus
- optionalOldSelf: true
- rule: oldSelf.hasValue() || !has(self.currentRevision)
- - fieldPath: .targetRevision
- message: targetRevision can not be set on creation of a nodeStatus
- optionalOldSelf: true
- rule: oldSelf.hasValue() || !has(self.targetRevision)
- type: array
- x-kubernetes-list-map-keys:
- - nodeName
- x-kubernetes-list-type: map
- x-kubernetes-validations:
- - message: no more than 1 node status may have a nonzero targetRevision
- rule: size(self.filter(status, status.?targetRevision.orValue(0)
- != 0)) <= 1
- observedGeneration:
- description: observedGeneration is the last generation change you've
- dealt with
- format: int64
- type: integer
- readyReplicas:
- description: readyReplicas indicates how many replicas are ready and
- at the desired state
- format: int32
- type: integer
- version:
- description: version is the level this availability applies to
- type: string
- type: object
- required:
- - spec
- type: object
- served: true
- storage: true
- subresources:
- status: {}
diff --git a/payload-manifests/crds/0000_12_etcd_01_etcds-CustomNoUpgrade.crd.yaml b/payload-manifests/crds/0000_12_etcd_01_etcds.crd.yaml
similarity index 99%
rename from payload-manifests/crds/0000_12_etcd_01_etcds-CustomNoUpgrade.crd.yaml
rename to payload-manifests/crds/0000_12_etcd_01_etcds.crd.yaml
index 1feb64cbb5c..d4988835866 100644
--- a/payload-manifests/crds/0000_12_etcd_01_etcds-CustomNoUpgrade.crd.yaml
+++ b/payload-manifests/crds/0000_12_etcd_01_etcds.crd.yaml
@@ -6,7 +6,6 @@ metadata:
api.openshift.io/merged-by-featuregates: "true"
include.release.openshift.io/ibm-cloud-managed: "true"
include.release.openshift.io/self-managed-high-availability: "true"
- release.openshift.io/feature-set: CustomNoUpgrade
name: etcds.operator.openshift.io
spec:
group: operator.openshift.io
diff --git a/payload-manifests/featuregates/featureGate-4-10-Hypershift-Default.yaml b/payload-manifests/featuregates/featureGate-4-10-Hypershift-Default.yaml
index 652a75a6c7b..3978104fcd2 100644
--- a/payload-manifests/featuregates/featureGate-4-10-Hypershift-Default.yaml
+++ b/payload-manifests/featuregates/featureGate-4-10-Hypershift-Default.yaml
@@ -122,9 +122,6 @@
{
"name": "DyanmicServiceEndpointIBMCloud"
},
- {
- "name": "EtcdBackendQuota"
- },
{
"name": "EventedPLEG"
},
@@ -322,6 +319,9 @@
{
"name": "EVPN"
},
+ {
+ "name": "EtcdBackendQuota"
+ },
{
"name": "EventTTL"
},
diff --git a/payload-manifests/featuregates/featureGate-4-10-Hypershift-OKD.yaml b/payload-manifests/featuregates/featureGate-4-10-Hypershift-OKD.yaml
index 2781dee4db1..0b05827932f 100644
--- a/payload-manifests/featuregates/featureGate-4-10-Hypershift-OKD.yaml
+++ b/payload-manifests/featuregates/featureGate-4-10-Hypershift-OKD.yaml
@@ -124,9 +124,6 @@
{
"name": "DyanmicServiceEndpointIBMCloud"
},
- {
- "name": "EtcdBackendQuota"
- },
{
"name": "EventedPLEG"
},
@@ -324,6 +321,9 @@
{
"name": "EVPN"
},
+ {
+ "name": "EtcdBackendQuota"
+ },
{
"name": "EventTTL"
},
diff --git a/payload-manifests/featuregates/featureGate-4-10-SelfManagedHA-Default.yaml b/payload-manifests/featuregates/featureGate-4-10-SelfManagedHA-Default.yaml
index f35a08787c4..1c119aee039 100644
--- a/payload-manifests/featuregates/featureGate-4-10-SelfManagedHA-Default.yaml
+++ b/payload-manifests/featuregates/featureGate-4-10-SelfManagedHA-Default.yaml
@@ -122,9 +122,6 @@
{
"name": "DyanmicServiceEndpointIBMCloud"
},
- {
- "name": "EtcdBackendQuota"
- },
{
"name": "EventedPLEG"
},
@@ -316,6 +313,9 @@
{
"name": "EVPN"
},
+ {
+ "name": "EtcdBackendQuota"
+ },
{
"name": "EventTTL"
},
diff --git a/payload-manifests/featuregates/featureGate-4-10-SelfManagedHA-OKD.yaml b/payload-manifests/featuregates/featureGate-4-10-SelfManagedHA-OKD.yaml
index 3c538484574..dbbe92831a3 100644
--- a/payload-manifests/featuregates/featureGate-4-10-SelfManagedHA-OKD.yaml
+++ b/payload-manifests/featuregates/featureGate-4-10-SelfManagedHA-OKD.yaml
@@ -124,9 +124,6 @@
{
"name": "DyanmicServiceEndpointIBMCloud"
},
- {
- "name": "EtcdBackendQuota"
- },
{
"name": "EventedPLEG"
},
@@ -318,6 +315,9 @@
{
"name": "EVPN"
},
+ {
+ "name": "EtcdBackendQuota"
+ },
{
"name": "EventTTL"
},