Documentation ¶
Index ¶
Constants ¶
View Source
const ( // Values for PreRelease. Alpha = prerelease("ALPHA") Beta = prerelease("BETA") GA = prerelease("") )
Variables ¶
View Source
var ( // DefaultMutableFeatureGate is a mutable version of DefaultFeatureGate. // Only top-level commands/options setup should make use of this. DefaultMutableFeatureGate MutableFeatureGate = NewFeatureGate() // DefaultFeatureGate is a shared global FeatureGate. // Top-level commands/options setup that needs to modify this feature gate should use DefaultMutableFeatureGate. DefaultFeatureGate FeatureGate = DefaultMutableFeatureGate )
Functions ¶
func NewFeatureGate ¶
func NewFeatureGate() *defaultFeatureGate
Types ¶
type FeatureGate ¶
type FeatureGate interface { // Enabled returns true if the key is enabled. Enabled(key Feature) bool // KnownFeatures returns a slice of strings describing the FeatureGate's known features. KnownFeatures() []string // DeepCopy returns a deep copy of the FeatureGate object, such that gates can be // set on the copy without mutating the original. This is useful for validating // config against potential feature gate changes before committing those changes. DeepCopy() MutableFeatureGate // IsReady returns true if the feature is ready IsReady(key Feature) bool // Subscribe returns a channel. if the channel is closed, means the feature is ready Subscribe(key Feature) (chan struct{}, error) // UpdateToReady supports updating feature to ready, then closing the channel // unsupported: // 1. Rollback the notified of ready to false or Setting with false // 2. Repeat setting the notified of ready with true UpdateToReady(key Feature) error }
FeatureGate indicates whether a given feature is enabled or not
type FeatureSpec ¶
type MutableFeatureGate ¶
type MutableFeatureGate interface { FeatureGate // AddFlag adds a flag for setting global feature gates to the specified FlagSet. AddFlag(fs *pflag.FlagSet) // Set parses and stores flag gates for known features // from a string like feature1=true,feature2=false,... Set(value string) error // SetFromMap stores flag gates for known features from a map[string]bool or returns an error SetFromMap(m map[string]bool) error // Add adds features to the featureGate. Add(features map[Feature]FeatureSpec) error }
MutableFeatureGate parses and stores flag gates for known features from a string like feature1=true,feature2=false,...
Click to show internal directories.
Click to hide internal directories.