Skip to content

Commit

Permalink
Merge pull request kubernetes#58878 from liggitt/deprecated-feature
Browse files Browse the repository at this point in the history
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

Categorize deprecated feature gate more accurately

related to kubernetes#58761

follow up from kubernetes#57265 to clarify the status of the feature gate

```release-note
NONE
```
  • Loading branch information
Kubernetes Submit Queue authored Jan 27, 2018
2 parents 5a508c2 + ca843ed commit e8225f5
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 4 deletions.
6 changes: 3 additions & 3 deletions pkg/features/kube_features.go
Original file line number Diff line number Diff line change
Expand Up @@ -170,7 +170,7 @@ const (
ServiceNodeExclusion utilfeature.Feature = "ServiceNodeExclusion"

// owner @brendandburns
// stable: v1.10
// deprecated: v1.10
//
// Enable the service proxy to contact external IP addresses. Note this feature is present
// only for backward compatability, it will be removed in the 1.11 release.
Expand Down Expand Up @@ -284,6 +284,6 @@ var defaultKubernetesFeatureGates = map[utilfeature.Feature]utilfeature.FeatureS
// unintentionally on either side:
apiextensionsfeatures.CustomResourceValidation: {Default: true, PreRelease: utilfeature.Beta},

// backward compatability features that enable backwards compatability but should be removed soon.
ServiceProxyAllowExternalIPs: {Default: false, PreRelease: utilfeature.Beta},
// features that enable backwards compatability but are scheduled to be removed
ServiceProxyAllowExternalIPs: {Default: false, PreRelease: utilfeature.Deprecated},
}
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,9 @@ const (
Alpha = prerelease("ALPHA")
Beta = prerelease("BETA")
GA = prerelease("")

// Deprecated
Deprecated = prerelease("DEPRECATED")
)

// FeatureGate parses and stores flag gates for known features from
Expand Down Expand Up @@ -157,7 +160,7 @@ func (f *featureGate) Set(value string) error {
}
arr := strings.SplitN(s, "=", 2)
k := Feature(strings.TrimSpace(arr[0]))
_, ok := known[k]
featureSpec, ok := known[k]
if !ok {
return fmt.Errorf("unrecognized key: %s", k)
}
Expand All @@ -170,6 +173,9 @@ func (f *featureGate) Set(value string) error {
return fmt.Errorf("invalid value of %s: %s, err: %v", k, v, err)
}
enabled[k] = boolValue
if boolValue && featureSpec.PreRelease == Deprecated {
glog.Warningf("enabling deprecated feature gate %s", k)
}

// Handle "special" features like "all alpha gates"
if fn, found := f.special[k]; found {
Expand Down

0 comments on commit e8225f5

Please sign in to comment.