Skip to content

Commit 9bc6741

Browse files
committed
feat: add support for multi feature gate on same value
added ability to use multiple feature gates on the same value that graduate to different feature sets at different times drop DualReplica from TechPreview Signed-off-by: ehila <[email protected]>
1 parent b7680e1 commit 9bc6741

26 files changed

+6709
-16
lines changed

config/v1/types_infrastructure.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -99,6 +99,8 @@ type InfrastructureStatus struct {
9999
// its components are not visible within the cluster.
100100
// +kubebuilder:default=HighlyAvailable
101101
// +openshift:validation:FeatureGateAwareEnum:featureGate="",enum=HighlyAvailable;SingleReplica;External
102+
// +openshift:validation:FeatureGateAwareEnum:featureGate=DualReplica,enum=HighlyAvailable;SingleReplica;DualReplica;External
103+
// +openshift:validation:FeatureGateAwareEnum:featureGate=HighlyAvailableArbiter,enum=HighlyAvailable;HighlyAvailableArbiter;SingleReplica;External
102104
// +openshift:validation:FeatureGateAwareEnum:featureGate=HighlyAvailableArbiter;DualReplica,enum=HighlyAvailable;HighlyAvailableArbiter;SingleReplica;DualReplica;External
103105
ControlPlaneTopology TopologyMode `json:"controlPlaneTopology"`
104106

config/v1/zz_generated.crd-manifests/0000_10_config-operator_01_infrastructures-TechPreviewNoUpgrade.crd.yaml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1130,7 +1130,6 @@ spec:
11301130
- HighlyAvailable
11311131
- HighlyAvailableArbiter
11321132
- SingleReplica
1133-
- DualReplica
11341133
- External
11351134
type: string
11361135
cpuPartitioning:

config/v1/zz_generated.featuregated-crd-manifests.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -320,6 +320,7 @@ infrastructures.config.openshift.io:
320320
- GCPCustomAPIEndpoints
321321
- GCPLabelsTags
322322
- HighlyAvailableArbiter
323+
- HighlyAvailableArbiter+DualReplica
323324
- NutanixMultiSubnets
324325
- VSphereHostVMGroupZonal
325326
- VSphereMultiNetworks

config/v1/zz_generated.featuregated-crd-manifests/infrastructures.config.openshift.io/DualReplica.yaml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1036,7 +1036,6 @@ spec:
10361036
its components are not visible within the cluster.
10371037
enum:
10381038
- HighlyAvailable
1039-
- HighlyAvailableArbiter
10401039
- SingleReplica
10411040
- DualReplica
10421041
- External
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
- op: "replace"
2+
path: "/spec/versions/0/schema/openAPIV3Schema/properties/status/properties/controlPlaneTopology/enum"
3+
value:
4+
- HighlyAvailable
5+
- SingleReplica
6+
- DualReplica
7+
- External
8+

config/v1/zz_generated.featuregated-crd-manifests/infrastructures.config.openshift.io/HighlyAvailableArbiter+DualReplica.yaml

Lines changed: 2011 additions & 0 deletions
Large diffs are not rendered by default.

config/v1/zz_generated.featuregated-crd-manifests/infrastructures.config.openshift.io/HighlyAvailableArbiter.yaml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1038,7 +1038,6 @@ spec:
10381038
- HighlyAvailable
10391039
- HighlyAvailableArbiter
10401040
- SingleReplica
1041-
- DualReplica
10421041
- External
10431042
type: string
10441043
cpuPartitioning:
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
- op: "replace"
2+
path: "/spec/versions/0/schema/openAPIV3Schema/properties/status/properties/controlPlaneTopology/enum"
3+
value:
4+
- HighlyAvailable
5+
- HighlyAvailableArbiter
6+
- SingleReplica
7+
- External
8+

features.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
| MachineAPIOperatorDisableMachineHealthCheckController| | | | | | |
77
| MultiArchInstallAzure| | | | | | |
88
| ClusterVersionOperatorConfiguration| | | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> | | |
9+
| DualReplica| | | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> | | |
910
| Example2| | | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> | | |
1011
| NewOLMCatalogdAPIV1Metas| | | | <span style="background-color: #519450">Enabled</span> | | <span style="background-color: #519450">Enabled</span> |
1112
| NewOLMPreflightPermissionChecks| | | | <span style="background-color: #519450">Enabled</span> | | <span style="background-color: #519450">Enabled</span> |
@@ -22,7 +23,6 @@
2223
| ClusterMonitoringConfig| | | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> |
2324
| ConsolePluginContentSecurityPolicy| | | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> |
2425
| DNSNameResolver| | | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> |
25-
| DualReplica| | | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> |
2626
| DyanmicServiceEndpointIBMCloud| | | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> |
2727
| DynamicResourceAllocation| | | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> |
2828
| EtcdBackendQuota| | | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> |

features/features.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -787,7 +787,7 @@ var (
787787
// TODO: Do not go GA until jira issue is resolved: https://issues.redhat.com/browse/OCPEDGE-1637
788788
// Annotations must correctly handle either DualReplica or HighlyAvailableArbiter going GA with
789789
// the other still in TechPreview.
790-
enableIn(configv1.DevPreviewNoUpgrade, configv1.TechPreviewNoUpgrade).
790+
enableIn(configv1.DevPreviewNoUpgrade).
791791
mustRegister()
792792

793793
FeatureGateGatewayAPIController = newFeatureGate("GatewayAPIController").

0 commit comments

Comments
 (0)