Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 17 additions & 3 deletions api/core/v1beta1/featureflag_types.go
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,13 @@ type FlagSpec struct {
// +kubebuilder:validation:Schemaless
// +kubebuilder:pruning:PreserveUnknownFields
// +kubebuilder:validation:Type=object
// Metadata holds optional flag-set level metadata.
// Additional metadata keys are preserved to support flagd metadata inheritance.
Metadata json.RawMessage `json:"metadata,omitempty"`
// +optional
// +kubebuilder:validation:Schemaless
// +kubebuilder:pruning:PreserveUnknownFields
// +kubebuilder:validation:Type=object
Evaluators json.RawMessage `json:"$evaluators,omitempty"`
}

Expand All @@ -50,14 +57,21 @@ type Flag struct {
// +kubebuilder:validation:Schemaless
// +kubebuilder:pruning:PreserveUnknownFields
// +kubebuilder:validation:Type=object
Variants json.RawMessage `json:"variants"`
DefaultVariant string `json:"defaultVariant"`
Variants json.RawMessage `json:"variants"`
DefaultVariant string `json:"defaultVariant"`
// +optional
// +kubebuilder:validation:Schemaless
// +kubebuilder:pruning:PreserveUnknownFields
// +kubebuilder:validation:Type=object
// Targeting is the json targeting rule
Targeting json.RawMessage `json:"targeting,omitempty"`
// +optional
// +kubebuilder:validation:Schemaless
// +kubebuilder:pruning:PreserveUnknownFields
// +kubebuilder:validation:Type=object
// Metadata holds optional per-flag metadata.
// Additional metadata keys are preserved to support flagd metadata inheritance.
Metadata json.RawMessage `json:"metadata,omitempty"`
}

// FeatureFlagStatus defines the observed state of FeatureFlag
Expand Down Expand Up @@ -119,4 +133,4 @@ func (ff *FeatureFlag) GenerateConfigMap(name string, namespace string, referenc
common.FeatureFlagConfigMapKey(namespace, name): string(b),
},
}, nil
}
}
10 changes: 10 additions & 0 deletions api/core/v1beta1/zz_generated.deepcopy.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

12 changes: 12 additions & 0 deletions config/crd/bases/core.openfeature.dev_featureflags.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,12 @@ spec:
properties:
defaultVariant:
type: string
metadata:
description: |-
Metadata holds optional per-flag metadata.
Additional metadata keys are preserved to support flagd metadata inheritance.
type: object
x-kubernetes-preserve-unknown-fields: true
state:
enum:
- ENABLED
Expand All @@ -71,6 +77,12 @@ spec:
- variants
type: object
type: object
metadata:
description: |-
Metadata holds optional flag-set level metadata.
Additional metadata keys are preserved to support flagd metadata inheritance.
type: object
x-kubernetes-preserve-unknown-fields: true
required:
- flags
type: object
Expand Down
Loading