v1alpha1

package
v0.3.5 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 7, 2022 License: Apache-2.0 Imports: 10 Imported by: 0

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the worker v1alpha1 API group +kubebuilder:object:generate=true +groupName=worker.kubeslice.io

Index

Constants

This section is empty.

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "worker.kubeslice.io", 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 AppPod

type AppPod struct {
	// PodName is App Pod Name
	PodName string `json:"podName,omitempty"`
	// PodNamespace is App Pod Namespace
	PodNamespace string `json:"podNamespace,omitempty"`
	// PodIP is App Pod IP
	PodIP string `json:"podIp,omitempty"`
	// NsmIP is the nsm ip of App
	NsmIP string `json:"nsmIp,omitempty"`
	// NsmInterface is the nsm interface of App
	NsmInterface string `json:"nsmInterface,omitempty"`
	// PeerIp is the nsm peer ip of gateway
	NsmPeerIP string `json:"nsmPeerIp,omitempty"`
}

AppPod defines the app pods connected to slice

func (*AppPod) DeepCopy

func (in *AppPod) DeepCopy() *AppPod

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppPod.

func (*AppPod) DeepCopyInto

func (in *AppPod) DeepCopyInto(out *AppPod)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ExternalGatewayConfig

type ExternalGatewayConfig struct {
	Ingress   ExternalGatewayConfigOptions `json:"ingress,omitempty"`
	Egress    ExternalGatewayConfigOptions `json:"egress,omitempty"`
	NsIngress ExternalGatewayConfigOptions `json:"nsIngress,omitempty"`
	//+kubebuilder:validation:Enum:=none;istio
	GatewayType string `json:"gatewayType,omitempty"`
}

func (*ExternalGatewayConfig) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExternalGatewayConfig.

func (*ExternalGatewayConfig) DeepCopyInto

func (in *ExternalGatewayConfig) DeepCopyInto(out *ExternalGatewayConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ExternalGatewayConfigOptions

type ExternalGatewayConfigOptions struct {
	Enabled bool `json:"enabled,omitempty"`
}

func (*ExternalGatewayConfigOptions) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExternalGatewayConfigOptions.

func (*ExternalGatewayConfigOptions) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GatewayCredentials

type GatewayCredentials struct {
	SecretName string `json:"secretName,omitempty"`
}

func (*GatewayCredentials) DeepCopy

func (in *GatewayCredentials) DeepCopy() *GatewayCredentials

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayCredentials.

func (*GatewayCredentials) DeepCopyInto

func (in *GatewayCredentials) DeepCopyInto(out *GatewayCredentials)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NamespaceConfig

type NamespaceConfig struct {
	Name string `json:"name,omitempty"`
}

func (*NamespaceConfig) DeepCopy

func (in *NamespaceConfig) DeepCopy() *NamespaceConfig

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NamespaceConfig.

func (*NamespaceConfig) DeepCopyInto

func (in *NamespaceConfig) DeepCopyInto(out *NamespaceConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NamespaceIsolationProfile

type NamespaceIsolationProfile struct {
	//+kubebuilder:default:=false
	//+kubebuilder:validation:Optional
	IsolationEnabled      bool     `json:"isolationEnabled"`
	ApplicationNamespaces []string `json:"applicationNamespaces,omitempty"`
	AllowedNamespaces     []string `json:"allowedNamespaces,omitempty"`
}

func (*NamespaceIsolationProfile) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NamespaceIsolationProfile.

func (*NamespaceIsolationProfile) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type QOSProfile

type QOSProfile struct {
	//+kubebuilder:default:=HTB
	QueueType               string `json:"queueType,omitempty"`
	Priority                int    `json:"priority,omitempty"`
	TcType                  string `json:"tcType,omitempty"`
	BandwidthCeilingKbps    int    `json:"bandwidthCeilingKbps,omitempty"`
	BandwidthGuaranteedKbps int    `json:"bandwidthGuaranteedKbps,omitempty"`
	//+kubebuilder:validation:Enum:=Default;AF11;AF12;AF13;AF21;AF22;AF23;AF31;AF32;AF33;AF41;AF42;AF43;EF
	DscpClass string `json:"dscpClass,omitempty"`
}

QOSProfile is the QOS Profile configuration from backend

func (*QOSProfile) DeepCopy

func (in *QOSProfile) DeepCopy() *QOSProfile

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QOSProfile.

func (*QOSProfile) DeepCopyInto

func (in *QOSProfile) DeepCopyInto(out *QOSProfile)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ServiceDiscoveryEndpoint

type ServiceDiscoveryEndpoint struct {
	// The name of the pod.
	PodName string `json:"podName,omitempty"`
	// The ID of the cluster.
	Cluster string `json:"cluster,omitempty"`
	// The NSM IP address.
	NsmIp string `json:"nsmIp,omitempty"`
	// the dns_name of the service
	DnsName string `json:"dnsName,omitempty"`
	// port of the service
	Port int32 `json:"port,omitempty"`
}

func (*ServiceDiscoveryEndpoint) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceDiscoveryEndpoint.

func (*ServiceDiscoveryEndpoint) DeepCopyInto

func (in *ServiceDiscoveryEndpoint) DeepCopyInto(out *ServiceDiscoveryEndpoint)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ServiceDiscoveryPort

type ServiceDiscoveryPort struct {
	// The name of the port.
	Name string `json:"name,omitempty"`
	// The port number.
	Port int32 `json:"port,omitempty"`
	// The protocol.
	Protocol string `json:"protocol,omitempty"`
}

func (*ServiceDiscoveryPort) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceDiscoveryPort.

func (*ServiceDiscoveryPort) DeepCopyInto

func (in *ServiceDiscoveryPort) DeepCopyInto(out *ServiceDiscoveryPort)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SliceGatewayConfig

type SliceGatewayConfig struct {
	NodeIp        string `json:"nodeIp,omitempty"`
	NodePort      int    `json:"nodePort,omitempty"`
	GatewayName   string `json:"gatewayName,omitempty"`
	ClusterName   string `json:"clusterName,omitempty"`
	VpnIp         string `json:"vpnIp,omitempty"`
	GatewaySubnet string `json:"gatewaySubnet,omitempty"`
}

func (*SliceGatewayConfig) DeepCopy

func (in *SliceGatewayConfig) DeepCopy() *SliceGatewayConfig

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SliceGatewayConfig.

func (*SliceGatewayConfig) DeepCopyInto

func (in *SliceGatewayConfig) DeepCopyInto(out *SliceGatewayConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WorkerServiceImport

type WorkerServiceImport struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   WorkerServiceImportSpec   `json:"spec,omitempty"`
	Status WorkerServiceImportStatus `json:"status,omitempty"`
}

WorkerServiceImport is the Schema for the workerserviceimport API

func (*WorkerServiceImport) DeepCopy

func (in *WorkerServiceImport) DeepCopy() *WorkerServiceImport

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkerServiceImport.

func (*WorkerServiceImport) DeepCopyInto

func (in *WorkerServiceImport) DeepCopyInto(out *WorkerServiceImport)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*WorkerServiceImport) DeepCopyObject

func (in *WorkerServiceImport) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type WorkerServiceImportList

type WorkerServiceImportList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []WorkerServiceImport `json:"items"`
}

WorkerServiceImportList contains a list of WorkerServiceImport

func (*WorkerServiceImportList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkerServiceImportList.

func (*WorkerServiceImportList) DeepCopyInto

func (in *WorkerServiceImportList) DeepCopyInto(out *WorkerServiceImportList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*WorkerServiceImportList) DeepCopyObject

func (in *WorkerServiceImportList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type WorkerServiceImportSpec

type WorkerServiceImportSpec struct {
	//ServiceName is the name of the service
	ServiceName string `json:"serviceName,omitempty"`
	//ServiceNamespace is the namespace of the service
	ServiceNamespace string `json:"serviceNamespace,omitempty"` // Required
	// clusterId is the id of the cluster where the service is available.
	SourceClusters []string `json:"sourceClusters,omitempty"`
	// The name of the slice.
	SliceName string `json:"sliceName,omitempty"`
	// the service discovery endpoint array
	ServiceDiscoveryEndpoints []ServiceDiscoveryEndpoint `json:"serviceDiscoveryEndpoints,omitempty"`
	// The ports for the given service.
	ServiceDiscoveryPorts []ServiceDiscoveryPort `json:"serviceDiscoveryPorts,omitempty"`
}

WorkerServiceImportSpec defines the desired state of WorkerServiceImport

func (*WorkerServiceImportSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkerServiceImportSpec.

func (*WorkerServiceImportSpec) DeepCopyInto

func (in *WorkerServiceImportSpec) DeepCopyInto(out *WorkerServiceImportSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WorkerServiceImportStatus

type WorkerServiceImportStatus struct {
}

WorkerServiceImportStatus defines the observed state of WorkerServiceImport

func (*WorkerServiceImportStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkerServiceImportStatus.

func (*WorkerServiceImportStatus) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WorkerSliceConfig

type WorkerSliceConfig struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   WorkerSliceConfigSpec   `json:"spec,omitempty"`
	Status WorkerSliceConfigStatus `json:"status,omitempty"`
}

WorkerSliceConfig is the Schema for the slice API

func (*WorkerSliceConfig) DeepCopy

func (in *WorkerSliceConfig) DeepCopy() *WorkerSliceConfig

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkerSliceConfig.

func (*WorkerSliceConfig) DeepCopyInto

func (in *WorkerSliceConfig) DeepCopyInto(out *WorkerSliceConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*WorkerSliceConfig) DeepCopyObject

func (in *WorkerSliceConfig) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*WorkerSliceConfig) Default

func (r *WorkerSliceConfig) Default()

Default implements webhook.Defaulter so a webhook will be registered for the type

func (*WorkerSliceConfig) SetupWebhookWithManager

func (r *WorkerSliceConfig) SetupWebhookWithManager(mgr ctrl.Manager, validateUpdate customWorkerSliceConfigValidation) error

func (*WorkerSliceConfig) ValidateCreate

func (r *WorkerSliceConfig) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*WorkerSliceConfig) ValidateDelete

func (r *WorkerSliceConfig) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*WorkerSliceConfig) ValidateUpdate

func (r *WorkerSliceConfig) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type WorkerSliceConfigList

type WorkerSliceConfigList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []WorkerSliceConfig `json:"items"`
}

WorkerSliceConfigList contains a list of Slice

func (*WorkerSliceConfigList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkerSliceConfigList.

func (*WorkerSliceConfigList) DeepCopyInto

func (in *WorkerSliceConfigList) DeepCopyInto(out *WorkerSliceConfigList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*WorkerSliceConfigList) DeepCopyObject

func (in *WorkerSliceConfigList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type WorkerSliceConfigSpec

type WorkerSliceConfigSpec struct {
	SliceName   string `json:"sliceName,omitempty"`
	SliceSubnet string `json:"sliceSubnet,omitempty"`
	//+kubebuilder:default:=Application
	SliceType            string                     `json:"sliceType,omitempty"`
	SliceGatewayProvider WorkerSliceGatewayProvider `json:"sliceGatewayProvider,omitempty"`
	//+kubebuilder:default:=Local
	SliceIpamType             string                    `json:"sliceIpamType,omitempty"`
	QosProfileDetails         QOSProfile                `json:"qosProfileDetails,omitempty"`
	NamespaceIsolationProfile NamespaceIsolationProfile `json:"namespaceIsolationProfile,omitempty"`
	IpamClusterOctet          int                       `json:"ipamClusterOctet,omitempty"`
	ExternalGatewayConfig     ExternalGatewayConfig     `json:"externalGatewayConfig,omitempty"`
}

WorkerSliceConfigSpec defines the desired state of Slice

func (*WorkerSliceConfigSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkerSliceConfigSpec.

func (*WorkerSliceConfigSpec) DeepCopyInto

func (in *WorkerSliceConfigSpec) DeepCopyInto(out *WorkerSliceConfigSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WorkerSliceConfigStatus

type WorkerSliceConfigStatus struct {
	ConnectedAppPods       []AppPod          `json:"connectedAppPods,omitempty"`
	OnboardedAppNamespaces []NamespaceConfig `json:"onboardedAppNamespaces,omitempty"`
}

WorkerSliceConfigStatus defines the observed state of Slice

func (*WorkerSliceConfigStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkerSliceConfigStatus.

func (*WorkerSliceConfigStatus) DeepCopyInto

func (in *WorkerSliceConfigStatus) DeepCopyInto(out *WorkerSliceConfigStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WorkerSliceGateway

type WorkerSliceGateway struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   WorkerSliceGatewaySpec   `json:"spec,omitempty"`
	Status WorkerSliceGatewayStatus `json:"status,omitempty"`
}

WorkerSliceGateway is the Schema for the slicegateways API

func (*WorkerSliceGateway) DeepCopy

func (in *WorkerSliceGateway) DeepCopy() *WorkerSliceGateway

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkerSliceGateway.

func (*WorkerSliceGateway) DeepCopyInto

func (in *WorkerSliceGateway) DeepCopyInto(out *WorkerSliceGateway)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*WorkerSliceGateway) DeepCopyObject

func (in *WorkerSliceGateway) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*WorkerSliceGateway) Default

func (r *WorkerSliceGateway) Default()

Default implements webhook.Defaulter so a webhook will be registered for the type

func (*WorkerSliceGateway) SetupWebhookWithManager

func (r *WorkerSliceGateway) SetupWebhookWithManager(mgr ctrl.Manager, validateUpdate customWorkerSliceGatewayValidation) error

func (*WorkerSliceGateway) ValidateCreate

func (r *WorkerSliceGateway) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*WorkerSliceGateway) ValidateDelete

func (r *WorkerSliceGateway) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*WorkerSliceGateway) ValidateUpdate

func (r *WorkerSliceGateway) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type WorkerSliceGatewayList

type WorkerSliceGatewayList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []WorkerSliceGateway `json:"items"`
}

WorkerSliceGatewayList contains a list of WorkerSliceGateway

func (*WorkerSliceGatewayList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkerSliceGatewayList.

func (*WorkerSliceGatewayList) DeepCopyInto

func (in *WorkerSliceGatewayList) DeepCopyInto(out *WorkerSliceGatewayList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*WorkerSliceGatewayList) DeepCopyObject

func (in *WorkerSliceGatewayList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type WorkerSliceGatewayProvider

type WorkerSliceGatewayProvider struct {
	//+kubebuilder:default:=OpenVPN
	SliceGatewayType string `json:"sliceGatewayType,omitempty"`
	//+kubebuilder:default:=Local
	SliceCaType string `json:"sliceCaType,omitempty"`
}

WorkerSliceGatewayProvider defines the configuration for slicegateway

func (*WorkerSliceGatewayProvider) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkerSliceGatewayProvider.

func (*WorkerSliceGatewayProvider) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WorkerSliceGatewaySpec

type WorkerSliceGatewaySpec struct {
	SliceName string `json:"sliceName,omitempty"`
	//+kubebuilder:default:=OpenVPN
	GatewayType string `json:"gatewayType,omitempty"`
	//+kubebuilder:validation:Enum:=Client;Server
	GatewayHostType     string             `json:"gatewayHostType,omitempty"`
	GatewayCredentials  GatewayCredentials `json:"gatewayCredentials,omitempty"`
	LocalGatewayConfig  SliceGatewayConfig `json:"localGatewayConfig,omitempty"`
	RemoteGatewayConfig SliceGatewayConfig `json:"remoteGatewayConfig,omitempty"`
	GatewayNumber       int                `json:"gatewayNumber,omitempty"`
}

WorkerSliceGatewaySpec defines the desired state of WorkerSliceGateway

func (*WorkerSliceGatewaySpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkerSliceGatewaySpec.

func (*WorkerSliceGatewaySpec) DeepCopyInto

func (in *WorkerSliceGatewaySpec) DeepCopyInto(out *WorkerSliceGatewaySpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WorkerSliceGatewayStatus

type WorkerSliceGatewayStatus struct {
	GatewayNumber         int `json:"gatewayNumber,omitempty"`
	ClusterInsertionIndex int `json:"clusterInsertionIndex,omitempty"`
}

WorkerSliceGatewayStatus defines the observed state of WorkerSliceGateway

func (*WorkerSliceGatewayStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkerSliceGatewayStatus.

func (*WorkerSliceGatewayStatus) DeepCopyInto

func (in *WorkerSliceGatewayStatus) DeepCopyInto(out *WorkerSliceGatewayStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL