From b9274d07d9356b0dffca28bf3e24e95c547e71eb Mon Sep 17 00:00:00 2001 From: Mridul Gain Date: Wed, 6 Mar 2024 19:03:48 +0530 Subject: [PATCH] AM-13007: api update for no-network overlay deployment mode Signed-off-by: Mridul Gain --- pkg/controller/v1alpha1/sliceconfig_types.go | 20 +++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) diff --git a/pkg/controller/v1alpha1/sliceconfig_types.go b/pkg/controller/v1alpha1/sliceconfig_types.go index 28e1443..a5baa65 100644 --- a/pkg/controller/v1alpha1/sliceconfig_types.go +++ b/pkg/controller/v1alpha1/sliceconfig_types.go @@ -23,12 +23,26 @@ import ( // EDIT THIS FILE! THIS IS SCAFFOLDING FOR YOU TO OWN! // NOTE: json tags are required. Any new fields you add must have json tags for the fields to be serialized. +// +kubebuilder:validation:Enum:=single-network;multi-network;no-network +type NetworkType string + +const ( + // all workloads would be connected to the slice l3 overlay network + SINGLENET NetworkType = "single-network" + + // workloads would be connected at l7 through network of envoy gateways. + // And the gateways would be connected through slice l3 overlay + MULTINET NetworkType = "multi-network" + + // slice without any connectivity between clusters + NONET NetworkType = "no-network" +) + // SliceConfigSpec defines the desired state of SliceConfig type SliceConfigSpec struct { //+kubebuilder:default:=single-network - //+kubebuilder:validation:Enum:=single-network;multi-network - OverlayNetworkDeploymentMode string `json:"overlayNetworkDeploymentMode,omitempty"` - SliceSubnet string `json:"sliceSubnet,omitempty"` + OverlayNetworkDeploymentMode NetworkType `json:"overlayNetworkDeploymentMode,omitempty"` + SliceSubnet string `json:"sliceSubnet,omitempty"` //+kubebuilder:default:=Application SliceType string `json:"sliceType,omitempty"` // +kubebuilder:validation:Required