Documentation
¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the flipt v1alpha1 API group +kubebuilder:object:generate=true +groupName=flipt.nev.dev
Index ¶
- Variables
- type Constraint
- type Distribution
- type Document
- type Features
- type FeaturesList
- type FeaturesSpec
- type FeaturesStatus
- type FeaturesTarget
- type FeaturesTargetList
- type FeaturesTargetSpec
- type FeaturesTargetSpecConfigMap
- type FeaturesTargetSpecNamespaceMapping
- type FeaturesTargetSpecSource
- type FeaturesTargetStatus
- type Flag
- type Namespace
- type Rollout
- type Rule
- type Segment
- type SegmentRule
- type Segments
- type ThresholdRule
- type Variant
Constants ¶
This section is empty.
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "flipt.nev.dev", Version: "v1alpha1"} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion} // AddToScheme adds the types in this group-version to the given scheme. AddToScheme = SchemeBuilder.AddToScheme )
Functions ¶
This section is empty.
Types ¶
type Constraint ¶
type Constraint struct {
Type string `yaml:"type,omitempty" json:"type,omitempty"`
Property string `yaml:"property,omitempty" json:"property,omitempty"`
Operator string `yaml:"operator,omitempty" json:"operator,omitempty"`
Value string `yaml:"value,omitempty" json:"value,omitempty"`
Description string `yaml:"description,omitempty" json:"description,omitempty"`
}
func (*Constraint) DeepCopy ¶
func (in *Constraint) DeepCopy() *Constraint
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Constraint.
func (*Constraint) DeepCopyInto ¶
func (in *Constraint) DeepCopyInto(out *Constraint)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Distribution ¶
type Distribution struct {
VariantKey string `yaml:"variant,omitempty" json:"variant,omitempty"`
Rollout float32 `yaml:"rollout,omitempty" json:"rollout,omitempty"`
}
func (*Distribution) DeepCopy ¶
func (in *Distribution) DeepCopy() *Distribution
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Distribution.
func (*Distribution) DeepCopyInto ¶
func (in *Distribution) DeepCopyInto(out *Distribution)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Document ¶
type Document struct {
Version string `yaml:"version,omitempty" json:"version,omitempty"`
Namespace *Namespace `yaml:"namespace,omitempty" json:"namespace,omitempty"`
Flags []*Flag `yaml:"flags,omitempty" json:"flags,omitempty"`
Segments []*Segment `yaml:"segments,omitempty" json:"segments,omitempty"`
}
func (*Document) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Document.
func (*Document) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Features ¶
type Features struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec FeaturesSpec `json:"spec,omitempty"`
Status FeaturesStatus `json:"status,omitempty"`
}
Features is the Schema for the features API
func (*Features) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Features.
func (*Features) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Features) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type FeaturesList ¶
type FeaturesList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []Features `json:"items"`
}
FeaturesList contains a list of Features
func (*FeaturesList) DeepCopy ¶
func (in *FeaturesList) DeepCopy() *FeaturesList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FeaturesList.
func (*FeaturesList) DeepCopyInto ¶
func (in *FeaturesList) DeepCopyInto(out *FeaturesList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*FeaturesList) DeepCopyObject ¶
func (in *FeaturesList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type FeaturesSpec ¶
type FeaturesSpec struct {
Features Document `json:"features,omitempty"`
}
FeaturesSpec defines the desired state of Features
func (*FeaturesSpec) DeepCopy ¶
func (in *FeaturesSpec) DeepCopy() *FeaturesSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FeaturesSpec.
func (*FeaturesSpec) DeepCopyInto ¶
func (in *FeaturesSpec) DeepCopyInto(out *FeaturesSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FeaturesStatus ¶
type FeaturesStatus struct {
}
FeaturesStatus defines the observed state of Features
func (*FeaturesStatus) DeepCopy ¶
func (in *FeaturesStatus) DeepCopy() *FeaturesStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FeaturesStatus.
func (*FeaturesStatus) DeepCopyInto ¶
func (in *FeaturesStatus) DeepCopyInto(out *FeaturesStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FeaturesTarget ¶
type FeaturesTarget struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec FeaturesTargetSpec `json:"spec,omitempty"`
Status FeaturesTargetStatus `json:"status,omitempty"`
}
FeaturesTarget is the Schema for the featurestargets API
func (*FeaturesTarget) DeepCopy ¶
func (in *FeaturesTarget) DeepCopy() *FeaturesTarget
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FeaturesTarget.
func (*FeaturesTarget) DeepCopyInto ¶
func (in *FeaturesTarget) DeepCopyInto(out *FeaturesTarget)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*FeaturesTarget) DeepCopyObject ¶
func (in *FeaturesTarget) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type FeaturesTargetList ¶
type FeaturesTargetList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []FeaturesTarget `json:"items"`
}
FeaturesTargetList contains a list of FeaturesTarget
func (*FeaturesTargetList) DeepCopy ¶
func (in *FeaturesTargetList) DeepCopy() *FeaturesTargetList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FeaturesTargetList.
func (*FeaturesTargetList) DeepCopyInto ¶
func (in *FeaturesTargetList) DeepCopyInto(out *FeaturesTargetList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*FeaturesTargetList) DeepCopyObject ¶
func (in *FeaturesTargetList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type FeaturesTargetSpec ¶
type FeaturesTargetSpec struct {
// Sepcifies the ConfigMap resource that is updated with the compiled features configuration
ConfigMap *FeaturesTargetSpecConfigMap `json:"configMap,omitempty"`
Sources []FeaturesTargetSpecSource `json:"sources,omitempty"`
}
FeaturesTargetSpec defines the desired state of FeaturesTarget
func (*FeaturesTargetSpec) DeepCopy ¶
func (in *FeaturesTargetSpec) DeepCopy() *FeaturesTargetSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FeaturesTargetSpec.
func (*FeaturesTargetSpec) DeepCopyInto ¶
func (in *FeaturesTargetSpec) DeepCopyInto(out *FeaturesTargetSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FeaturesTargetSpecConfigMap ¶
type FeaturesTargetSpecConfigMap struct {
// Name of the ConfigMap to update. Required.
//+kubebuilder:validation:MinLength=1
Name string `json:"name"`
}
func (*FeaturesTargetSpecConfigMap) DeepCopy ¶
func (in *FeaturesTargetSpecConfigMap) DeepCopy() *FeaturesTargetSpecConfigMap
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FeaturesTargetSpecConfigMap.
func (*FeaturesTargetSpecConfigMap) DeepCopyInto ¶
func (in *FeaturesTargetSpecConfigMap) DeepCopyInto(out *FeaturesTargetSpecConfigMap)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FeaturesTargetSpecNamespaceMapping ¶
type FeaturesTargetSpecNamespaceMapping string
How to handle the namespace set in the source features config.
const ( // The features namespace is replaced with the kubernetes namespace of the source OverrideNamespace FeaturesTargetSpecNamespaceMapping = "override" // The features namespace must match the kubernetes namespace of the source MustMatchNamespace FeaturesTargetSpecNamespaceMapping = "mustmatch" // The features namespace must be non-empty RequireNamespace FeaturesTargetSpecNamespaceMapping = "require" // Leave the feature namespace as-is PreserveNamespace FeaturesTargetSpecNamespaceMapping = "preserve" )
type FeaturesTargetSpecSource ¶
type FeaturesTargetSpecSource struct {
// Namespaces in which to look for feature sources. If empty, all namespaces are searched.
//+kubebuilder:validation:items:MinLength=1
Namespaces []string `json:"namespaces,omitempty"`
// Label selector to filter which feature sources to consider.
Selector *metav1.LabelSelector `json:"selector,omitempty"`
// How to handle the namespace set in the source features config.
// - override: The features namespace is replaced with the kubernetes namespace of the source
// - mustmatch: The features namespace must match the kubernetes namespace of the source
// - require: The features namespace must be non-empty
// - preserve: Leave the feature namespace as-is
NamespaceMapping FeaturesTargetSpecNamespaceMapping `json:"namespaceMapping,omitempty"`
}
func (*FeaturesTargetSpecSource) DeepCopy ¶
func (in *FeaturesTargetSpecSource) DeepCopy() *FeaturesTargetSpecSource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FeaturesTargetSpecSource.
func (*FeaturesTargetSpecSource) DeepCopyInto ¶
func (in *FeaturesTargetSpecSource) DeepCopyInto(out *FeaturesTargetSpecSource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FeaturesTargetStatus ¶
type FeaturesTargetStatus struct {
}
FeaturesTargetStatus defines the observed state of FeaturesTarget
func (*FeaturesTargetStatus) DeepCopy ¶
func (in *FeaturesTargetStatus) DeepCopy() *FeaturesTargetStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FeaturesTargetStatus.
func (*FeaturesTargetStatus) DeepCopyInto ¶
func (in *FeaturesTargetStatus) DeepCopyInto(out *FeaturesTargetStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Flag ¶
type Flag struct {
Key string `yaml:"key,omitempty" json:"key,omitempty"`
Name string `yaml:"name,omitempty" json:"name,omitempty"`
Type string `yaml:"type,omitempty" json:"type,omitempty"`
Description string `yaml:"description,omitempty" json:"description,omitempty"`
Enabled bool `yaml:"enabled" json:"enabled"`
Metadata map[string]json.RawMessage `yaml:"metadata,omitempty" json:"metadata,omitempty"`
Variants []*Variant `yaml:"variants,omitempty" json:"variants,omitempty"`
Rules []*Rule `yaml:"rules,omitempty" json:"rules,omitempty"`
Rollouts []*Rollout `yaml:"rollouts,omitempty" json:"rollouts,omitempty"`
}
func (*Flag) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Flag.
func (*Flag) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Namespace ¶
type Namespace struct {
Key string `yaml:"key,omitempty" json:"key,omitempty"`
Name string `yaml:"name,omitempty" json:"name,omitempty"`
Description string `yaml:"description,omitempty" json:"description,omitempty"`
}
func (*Namespace) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Namespace.
func (*Namespace) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Rollout ¶
type Rollout struct {
Description string `yaml:"description,omitempty" json:"description,omitempty"`
Segment *SegmentRule `yaml:"segment,omitempty" json:"segment,omitempty"`
Threshold *ThresholdRule `yaml:"threshold,omitempty" json:"threshold,omitempty"`
}
func (*Rollout) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Rollout.
func (*Rollout) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Rule ¶
type Rule struct {
Segment *Segments `yaml:"segment,omitempty" json:"segment,omitempty"`
Rank uint `yaml:"rank,omitempty" json:"rank,omitempty"`
Distributions []*Distribution `yaml:"distributions,omitempty" json:"distributions,omitempty"`
}
func (*Rule) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Rule.
func (*Rule) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Segment ¶
type Segment struct {
Key string `yaml:"key,omitempty" json:"key,omitempty"`
Name string `yaml:"name,omitempty" json:"name,omitempty"`
Description string `yaml:"description,omitempty" json:"description,omitempty"`
Constraints []*Constraint `yaml:"constraints,omitempty" json:"constraints,omitempty"`
MatchType string `yaml:"match_type,omitempty" json:"match_type,omitempty"`
}
func (*Segment) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Segment.
func (*Segment) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SegmentRule ¶
type SegmentRule struct {
Key string `yaml:"key,omitempty" json:"key,omitempty"`
Keys []string `yaml:"keys,omitempty" json:"keys,omitempty"`
Operator string `yaml:"operator,omitempty" json:"operator,omitempty"`
Value bool `yaml:"value,omitempty" json:"value,omitempty"`
}
func (*SegmentRule) DeepCopy ¶
func (in *SegmentRule) DeepCopy() *SegmentRule
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SegmentRule.
func (*SegmentRule) DeepCopyInto ¶
func (in *SegmentRule) DeepCopyInto(out *SegmentRule)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Segments ¶
type Segments struct {
Keys []string `yaml:"keys,omitempty" json:"keys,omitempty"`
SegmentOperator string `yaml:"operator,omitempty" json:"operator,omitempty"`
}
func (*Segments) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Segments.
func (*Segments) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ThresholdRule ¶
type ThresholdRule struct {
Percentage float32 `yaml:"percentage,omitempty" json:"percentage,omitempty"`
Value bool `yaml:"value,omitempty" json:"value,omitempty"`
}
func (*ThresholdRule) DeepCopy ¶
func (in *ThresholdRule) DeepCopy() *ThresholdRule
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ThresholdRule.
func (*ThresholdRule) DeepCopyInto ¶
func (in *ThresholdRule) DeepCopyInto(out *ThresholdRule)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Variant ¶
type Variant struct {
Default bool `yaml:"default,omitempty" json:"default,omitempty"`
Key string `yaml:"key,omitempty" json:"key,omitempty"`
Name string `yaml:"name,omitempty" json:"name,omitempty"`
Description string `yaml:"description,omitempty" json:"description,omitempty"`
Attachment json.RawMessage `yaml:"attachment,omitempty" json:"attachment,omitempty"`
}
func (*Variant) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Variant.
func (*Variant) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.