Skip to content

Commit 61ec44f

Browse files
committed
AM-13007: api update for no-network overlay deployment mode
Signed-off-by: Mridul Gain <mridulgain@gmail.com>
1 parent 115db71 commit 61ec44f

File tree

2 files changed

+19
-5
lines changed

2 files changed

+19
-5
lines changed

pkg/controller/v1alpha1/sliceconfig_types.go

Lines changed: 17 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -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
2742
type 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

pkg/worker/v1alpha1/workersliceconfig_types.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
package v1alpha1
1818

1919
import (
20+
controllerv1alpha1 "github.com/kubeslice/apis/pkg/controller/v1alpha1"
2021
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
2122
)
2223

@@ -52,8 +53,7 @@ type WorkerSliceConfigSpec struct {
5253
ClusterSubnetCIDR string `json:"clusterSubnetCIDR,omitempty"`
5354
ExternalGatewayConfig ExternalGatewayConfig `json:"externalGatewayConfig,omitempty"`
5455
//+kubebuilder:default:=single-network
55-
//+kubebuilder:validation:Enum:=single-network;multi-network
56-
OverlayNetworkDeploymentMode string `json:"overlayNetworkDeploymentMode,omitempty"`
56+
OverlayNetworkDeploymentMode controllerv1alpha1.NetworkType `json:"overlayNetworkDeploymentMode,omitempty"`
5757
}
5858

5959
// WorkerSliceGatewayProvider defines the configuration for slicegateway

0 commit comments

Comments
 (0)