@@ -23,12 +23,26 @@ import (
2323// EDIT THIS FILE! THIS IS SCAFFOLDING FOR YOU TO OWN!
2424// NOTE: json tags are required. Any new fields you add must have json tags for the fields to be serialized.
2525
26+ // +kubebuilder:validation:Enum:=single-network;multi-network;no-network
27+ type NetworkType string
28+
29+ const (
30+ // all workloads would be connected to the slice l3 overlay network
31+ SINGLENET NetworkType = "single-network"
32+
33+ // workloads would be connected at l7 through network of envoy gateways.
34+ // And the gateways would be connected through slice l3 overlay
35+ MULTINET NetworkType = "multi-network"
36+
37+ // slice without any connectivity between clusters
38+ NONET NetworkType = "no-network"
39+ )
40+
2641// SliceConfigSpec defines the desired state of SliceConfig
2742type SliceConfigSpec struct {
2843 //+kubebuilder:default:=single-network
29- //+kubebuilder:validation:Enum:=single-network;multi-network
30- OverlayNetworkDeploymentMode string `json:"overlayNetworkDeploymentMode,omitempty"`
31- SliceSubnet string `json:"sliceSubnet,omitempty"`
44+ OverlayNetworkDeploymentMode NetworkType `json:"overlayNetworkDeploymentMode,omitempty"`
45+ SliceSubnet string `json:"sliceSubnet,omitempty"`
3246 //+kubebuilder:default:=Application
3347 SliceType string `json:"sliceType,omitempty"`
3448 // +kubebuilder:validation:Required
0 commit comments