v1alpha1

package
v1.6.0 Latest Latest
Warning

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

Go to latest
Published: Dec 11, 2024 License: Apache-2.0 Imports: 11 Imported by: 0

Documentation

Overview

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

Index

Constants

View Source
const (
	ComponentHealthStatusNormal  = "Normal"
	ComponentHealthStatusWarning = "Warning"
	ComponentHealthStatusError   = "Error"
)
View Source
const (
	ClusterHealthStatusNormal  = "Normal"
	ClusterHealthStatusWarning = "Warning"
)
View Source
const (
	RegistrationStatusPending              = "Pending"
	RegistrationStatusInProgress           = "InProgress"
	RegistrationStatusFailed               = "Failed"
	RegistrationStatusRegistered           = "Registered"
	RegistrationStatusDeregisterInProgress = "DeregisterInProgress"
	RegistrationStatusDeregisterFailed     = "DeregisterFailed"
	RegistrationStatusDeregistered         = "Deregistered"
)
View Source
const (
	SecretReadInProgress string = "READ_IN_PROGRESS"
	SecretUpdated        string = "SECRET_UPDATED"
	InProgress           string = "IN_PROGRESS"
	Complete             string = "COMPLETE"
	Error                string = "ERROR"
)

status of key rotation updated by workers

Variables

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

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

	Spec   ClusterSpec   `json:"spec,omitempty"`
	Status ClusterStatus `json:"status,omitempty"`
}

Cluster is the Schema for the clusters API

func (*Cluster) DeepCopy

func (in *Cluster) DeepCopy() *Cluster

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

func (*Cluster) DeepCopyInto

func (in *Cluster) DeepCopyInto(out *Cluster)

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

func (*Cluster) DeepCopyObject

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

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

func (*Cluster) Default

func (r *Cluster) Default()

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

func (*Cluster) SetupWebhookWithManager

func (r *Cluster) SetupWebhookWithManager(mgr ctrl.Manager, validateCreate clusterValidation, validateUpdate clusterUpdateValidation, validateDelete clusterValidation) error

func (*Cluster) ValidateCreate

func (r *Cluster) ValidateCreate() error

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

func (*Cluster) ValidateDelete

func (r *Cluster) ValidateDelete() error

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

func (*Cluster) ValidateUpdate

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

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

type ClusterHealth added in v0.6.10

type ClusterHealth struct {
	// ClusterHealthStatus shows the overall health status of the cluster
	//+kubebuilder:validation:Enum:=Normal;Warning
	ClusterHealthStatus ClusterHealthStatus `json:"clusterHealthStatus,omitempty"`
	// ComponentStatuses shows the health status of individual components in the cluster
	ComponentStatuses []ComponentStatus `json:"componentStatuses,omitempty"`
	// LastUpdated is the timestamp when healthstatus was updated
	LastUpdated metav1.Time `json:"lastUpdated,omitempty"`
}

func (*ClusterHealth) DeepCopy added in v0.6.10

func (in *ClusterHealth) DeepCopy() *ClusterHealth

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

func (*ClusterHealth) DeepCopyInto added in v0.6.10

func (in *ClusterHealth) DeepCopyInto(out *ClusterHealth)

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

type ClusterHealthStatus added in v0.6.10

type ClusterHealthStatus string

type ClusterList

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

ClusterList contains a list of Cluster

func (*ClusterList) DeepCopy

func (in *ClusterList) DeepCopy() *ClusterList

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

func (*ClusterList) DeepCopyInto

func (in *ClusterList) DeepCopyInto(out *ClusterList)

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

func (*ClusterList) DeepCopyObject

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

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

type ClusterProperty

type ClusterProperty struct {
	//Telemetry contains Telemetry information
	Telemetry Telemetry `json:"telemetry,omitempty"`
	//GeoLocation contains information regarding Geographical Location of the Cluster
	GeoLocation GeoLocation `json:"geoLocation,omitempty"`
	//Monitoring contains the Kubernetes Monitoring Dashboard
	Monitoring Monitoring `json:"monitoring,omitempty"`
}

func (*ClusterProperty) DeepCopy

func (in *ClusterProperty) DeepCopy() *ClusterProperty

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

func (*ClusterProperty) DeepCopyInto

func (in *ClusterProperty) DeepCopyInto(out *ClusterProperty)

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

type ClusterSpec

type ClusterSpec struct {
	//NodeIP is the IP address of the Node - deprecated field use Plural NodeIPs
	//+kubebuilder:deprecatedversion:warning="controller/v1alpha1 NodeIP is deprecated...use NodeIPs"
	NodeIP  string   `json:"nodeIP,omitempty"`
	NodeIPs []string `json:"nodeIPs,omitempty"`
	// NetworkInterface is the network interface attached with the cluster.
	NetworkInterface string `json:"networkInterface,omitempty"`
	//put in an object
	ClusterProperty ClusterProperty `json:"clusterProperty,omitempty"`
}

ClusterSpec defines the desired state of Cluster

func (*ClusterSpec) DeepCopy

func (in *ClusterSpec) DeepCopy() *ClusterSpec

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

func (*ClusterSpec) DeepCopyInto

func (in *ClusterSpec) DeepCopyInto(out *ClusterSpec)

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

type ClusterStatus

type ClusterStatus struct {
	// SecretName is the name of the secret for the worker cluster.
	SecretName string `json:"secretName,omitempty"`
	//CniSubnet is the podip and service ip subnet of CNI
	CniSubnet []string `json:"cniSubnet,omitempty"`
	// Namespaces present in cluster
	Namespaces []NamespacesConfig `json:"namespaces,omitempty"`
	// ClusterHealth shows the health of the worker cluster
	ClusterHealth *ClusterHealth `json:"clusterHealth,omitempty"`
	// NodeIPs of the gateway node of worker cluster
	NodeIPs []string `json:"nodeIPs,omitempty"`
	// RegistrationStatus shows the status of cluster registration
	//+kubebuilder:validation:Enum:=Pending;InProgress;Failed;Registered;DeregisterInProgress;DeregisterFailed;Deregistered
	RegistrationStatus RegistrationStatus `json:"registrationStatus,omitempty"`
	// IsDeregisterInProgress is the flag to check if the cluster deregister is InProgress
	IsDeregisterInProgress bool `json:"isDeregisterInProgress,omitempty"`
	// NetworkPresent denotes if the networking components (NSM, Spire) are installed on a cluster
	//+kubebuilder:default:=false
	NetworkPresent bool `json:"networkPresent,omitempty"`

	// VCPURestriction is the restriction on the cluster disabling the creation of new pods
	VCPURestriction *VCPURestriction `json:"vCPURestriction,omitempty"`
}

ClusterStatus defines the observed state of Cluster

func (*ClusterStatus) DeepCopy

func (in *ClusterStatus) DeepCopy() *ClusterStatus

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

func (*ClusterStatus) DeepCopyInto

func (in *ClusterStatus) DeepCopyInto(out *ClusterStatus)

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

type ComponentHealthStatus added in v0.6.10

type ComponentHealthStatus string

type ComponentStatus added in v0.6.10

type ComponentStatus struct {
	// Component name
	Component string `json:"component"`
	//+kubebuilder:validation:Enum:=Normal;Warning;Error
	ComponentHealthStatus ComponentHealthStatus `json:"componentHealthStatus"`
}

func (*ComponentStatus) DeepCopy added in v0.6.10

func (in *ComponentStatus) DeepCopy() *ComponentStatus

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

func (*ComponentStatus) DeepCopyInto added in v0.6.10

func (in *ComponentStatus) DeepCopyInto(out *ComponentStatus)

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"`
	GatewayType      GatewayType                  `json:"gatewayType,omitempty"`
	Clusters         []string                     `json:"clusters,omitempty"`
	VPCServiceAccess ServiceAccess                `json:"vpcServiceAccess,omitempty"`
}

ExternalGatewayConfig is the configuration for external gateways like 'istio', etc/

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 GatewayType added in v1.3.4

type GatewayType string

+kubebuilder:validation:Enum:=none;istio;envoy

const (
	NONE  GatewayType = "none"
	ISTIO GatewayType = "istio"
	ENVOY GatewayType = "envoy"
)

type GeoLocation

type GeoLocation struct {
	//CloudProvider is the cloud service provider
	CloudProvider string `json:"cloudProvider,omitempty"`
	//CloudRegion is the region of the cloud
	CloudRegion string `json:"cloudRegion,omitempty"`
	//Latitude is the latitude of the cluster
	Latitude string `json:"latitude,omitempty"`
	//Longitude is the longitude of the cluster
	Longitude string `json:"longitude,omitempty"`
}

GeoLocation defines the field of ClusterSpec

func (*GeoLocation) DeepCopy

func (in *GeoLocation) DeepCopy() *GeoLocation

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

func (*GeoLocation) DeepCopyInto

func (in *GeoLocation) DeepCopyInto(out *GeoLocation)

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

type KubernetesDashboard

type KubernetesDashboard struct {
	//Enabled is the enable status of the KubernetesDashboard
	Enabled bool `json:"enabled,omitempty"`
	//AccessToken is the Access Token to access the KubernetesDashboard
	AccessToken string `json:"accessToken,omitempty"`
	//IngressPrefix is the prefix of ingress gateway for KubernetesDashboard
	IngressPrefix string `json:"ingressPrefix,omitempty"`
	//Endpoint is the base endpoint to access the kubernetes dashboard
	Endpoint string `json:"endpoint,omitempty"`
}

KubernetesDashboard defines the field of ClusterSpec

func (*KubernetesDashboard) DeepCopy

func (in *KubernetesDashboard) DeepCopy() *KubernetesDashboard

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

func (*KubernetesDashboard) DeepCopyInto

func (in *KubernetesDashboard) DeepCopyInto(out *KubernetesDashboard)

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

type KubesliceEvent added in v0.8.3

type KubesliceEvent struct {
	// Type of the event. Can be one of Error, Success or InProgress
	Type string `json:"type,omitempty"`
	// Trigger action. Examples - CLUSTER_OFFBOARDING, NAMESPCE_OFFBOARDING etc
	Action string `json:"action,omitempty"`
	// list of effected components on which action failed
	Components []string `json:"components,omitempty"`
	// Identifier of the component for which the action was triggered
	Identifier string `json:"identifier,omitempty"`
	// Reason message for the event
	Reason string `json:"reason,omitempty"`
	// Event name (from monitoring framework schema)
	Event string `json:"event"`
	// Timestamp of the event
	Timestamp metav1.Time `json:"timestamp,omitempty"`
	// Flag to determine if kubernetes event is already raised
	//+kubebuilder:default:=false
	IsEventRaised bool `json:"isEventRaised,omitempty"`
}

func (*KubesliceEvent) DeepCopy added in v0.8.3

func (in *KubesliceEvent) DeepCopy() *KubesliceEvent

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

func (*KubesliceEvent) DeepCopyInto added in v0.8.3

func (in *KubesliceEvent) DeepCopyInto(out *KubesliceEvent)

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

type Monitoring

type Monitoring struct {
	//KubernetesDashboard contains the information regarding Kubernetes Monitoring Dashboard
	KubernetesDashboard KubernetesDashboard `json:"kubernetesDashboard,omitempty"`
}

Monitoring defines the field of ClusterSpec

func (*Monitoring) DeepCopy

func (in *Monitoring) DeepCopy() *Monitoring

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

func (*Monitoring) DeepCopyInto

func (in *Monitoring) DeepCopyInto(out *Monitoring)

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 []SliceNamespaceSelection `json:"applicationNamespaces,omitempty"`
	AllowedNamespaces     []SliceNamespaceSelection `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 NamespacesConfig

type NamespacesConfig struct {
	Name      string `json:"name,omitempty"`
	SliceName string `json:"sliceName,omitempty"`
}

func (*NamespacesConfig) DeepCopy

func (in *NamespacesConfig) DeepCopy() *NamespacesConfig

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

func (*NamespacesConfig) DeepCopyInto

func (in *NamespacesConfig) DeepCopyInto(out *NamespacesConfig)

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

type NetworkType added in v1.3.4

type NetworkType string

+kubebuilder:validation:Enum:=single-network;multi-network;no-network

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"
)

type Project

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

	Spec   ProjectSpec   `json:"spec,omitempty"`
	Status ProjectStatus `json:"status,omitempty"`
}

Project is the Schema for the projects API

func (*Project) DeepCopy

func (in *Project) DeepCopy() *Project

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

func (*Project) DeepCopyInto

func (in *Project) DeepCopyInto(out *Project)

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

func (*Project) DeepCopyObject

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

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

func (*Project) Default

func (r *Project) Default()

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

func (*Project) SetupWebhookWithManager

func (r *Project) SetupWebhookWithManager(mgr ctrl.Manager, validateCreate customProjectValidation, validateUpdate customProjectValidation, validateDelete customProjectValidation) error

func (*Project) ValidateCreate

func (r *Project) ValidateCreate() error

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

func (*Project) ValidateDelete

func (r *Project) ValidateDelete() error

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

func (*Project) ValidateUpdate

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

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

type ProjectList

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

ProjectList contains a list of Project

func (*ProjectList) DeepCopy

func (in *ProjectList) DeepCopy() *ProjectList

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

func (*ProjectList) DeepCopyInto

func (in *ProjectList) DeepCopyInto(out *ProjectList)

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

func (*ProjectList) DeepCopyObject

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

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

type ProjectSpec

type ProjectSpec struct {
	// ServiceAccount is a field of Project. Edit project_types.go to remove/update
	ServiceAccount ServiceAccount `json:"serviceAccount,omitempty"`
	// If defaultSliceCreation is true, then the default slice will be created
	//+kubebuilder:validation:Optional
	DefaultSliceCreation bool `json:"defaultSliceCreation,omitemtpy"`
}

ProjectSpec defines the desired state of Project

func (*ProjectSpec) DeepCopy

func (in *ProjectSpec) DeepCopy() *ProjectSpec

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

func (*ProjectSpec) DeepCopyInto

func (in *ProjectSpec) DeepCopyInto(out *ProjectSpec)

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

type ProjectStatus

type ProjectStatus struct{}

ProjectStatus defines the observed state of Project

func (*ProjectStatus) DeepCopy

func (in *ProjectStatus) DeepCopy() *ProjectStatus

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

func (*ProjectStatus) DeepCopyInto

func (in *ProjectStatus) DeepCopyInto(out *ProjectStatus)

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
	// +kubebuilder:validation:Required
	QueueType string `json:"queueType"`

	// +kubebuilder:validation:Required
	Priority int `json:"priority"`

	//+kubebuilder:default:=BANDWIDTH_CONTROL
	// +kubebuilder:validation:Required
	TcType string `json:"tcType"`

	//+kubebuilder:validation:Required
	BandwidthCeilingKbps int `json:"bandwidthCeilingKbps"` //FIXME: Need research for unlimited

	//+kubebuilder:validation:Required
	BandwidthGuaranteedKbps int `json:"bandwidthGuaranteedKbps"`

	//+kubebuilder:validation:Enum:=Default;AF11;AF12;AF13;AF21;AF22;AF23;AF31;AF32;AF33;AF41;AF42;AF43;EF
	//+kubebuilder:validation:Required
	DscpClass string `json:"dscpClass"`
}

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 RegistrationStatus added in v0.9.0

type RegistrationStatus string

type ServiceAccess added in v1.3.4

type ServiceAccess struct {
	Ingress ExternalGatewayConfigOptions `json:"ingress,omitempty"`
	Egress  ExternalGatewayConfigOptions `json:"egress,omitempty"`
}

func (*ServiceAccess) DeepCopy added in v1.3.4

func (in *ServiceAccess) DeepCopy() *ServiceAccess

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

func (*ServiceAccess) DeepCopyInto added in v1.3.4

func (in *ServiceAccess) DeepCopyInto(out *ServiceAccess)

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

type ServiceAccount

type ServiceAccount struct {
	ReadOnly  []string `json:"readOnly,omitempty"`
	ReadWrite []string `json:"readWrite,omitempty"`
}

ServiceAccount defines the field of ProjectSpec

func (*ServiceAccount) DeepCopy

func (in *ServiceAccount) DeepCopy() *ServiceAccount

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

func (*ServiceAccount) DeepCopyInto

func (in *ServiceAccount) DeepCopyInto(out *ServiceAccount)

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 target port number.
	Port int32 `json:"port,omitempty"`
	// The protocol.
	Protocol string `json:"protocol,omitempty"`
	// The port exposed by service
	ServicePort int32 `json:"servicePort,omitempty"`
	// The service protocol
	ServiceProtocol string `json:"serviceProtocol,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 ServiceExportConfig

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

	Spec   ServiceExportConfigSpec   `json:"spec,omitempty"`
	Status ServiceExportConfigStatus `json:"status,omitempty"`
}

ServiceExportConfig is the Schema for the serviceexportconfigs API

func (*ServiceExportConfig) DeepCopy

func (in *ServiceExportConfig) DeepCopy() *ServiceExportConfig

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

func (*ServiceExportConfig) DeepCopyInto

func (in *ServiceExportConfig) DeepCopyInto(out *ServiceExportConfig)

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

func (*ServiceExportConfig) DeepCopyObject

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

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

func (*ServiceExportConfig) Default

func (r *ServiceExportConfig) Default()

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

func (*ServiceExportConfig) SetupWebhookWithManager

func (r *ServiceExportConfig) SetupWebhookWithManager(mgr ctrl.Manager, validateCreate customValidationServiceExport, validateUpdate customValidationServiceExport, validateDelete customValidationServiceExport) error

func (*ServiceExportConfig) ValidateCreate

func (r *ServiceExportConfig) ValidateCreate() error

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

func (*ServiceExportConfig) ValidateDelete

func (r *ServiceExportConfig) ValidateDelete() error

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

func (*ServiceExportConfig) ValidateUpdate

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

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

type ServiceExportConfigList

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

ServiceExportConfigList contains a list of ServiceExportConfig

func (*ServiceExportConfigList) DeepCopy

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

func (*ServiceExportConfigList) DeepCopyInto

func (in *ServiceExportConfigList) DeepCopyInto(out *ServiceExportConfigList)

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

func (*ServiceExportConfigList) DeepCopyObject

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

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

type ServiceExportConfigSpec

type ServiceExportConfigSpec struct {
	//ServiceName is the name of the service
	// +kubebuilder:validation:Required
	ServiceName      string `json:"serviceName"`
	ServiceNamespace string `json:"serviceNamespace,omitempty"`
	// clusterId is the id of the cluster where the service is available.
	// +kubebuilder:validation:Required
	SourceCluster string `json:"sourceCluster"`
	// The name of the slice.
	// +kubebuilder:validation:Required
	SliceName string `json:"sliceName"`
	// the service discovery endpoint array
	ServiceDiscoveryEndpoints []ServiceDiscoveryEndpoint `json:"serviceDiscoveryEndpoints,omitempty"`
	// The ports for the given service.
	ServiceDiscoveryPorts []ServiceDiscoveryPort `json:"serviceDiscoveryPorts,omitempty"`
	// Alias names for the exported service. The service could be addressed by the alias names
	// in addition to the slice.local name.
	Aliases []string `json:"aliases,omitempty"`
}

ServiceExportConfigSpec defines the desired state of ServiceExportConfig

func (*ServiceExportConfigSpec) DeepCopy

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

func (*ServiceExportConfigSpec) DeepCopyInto

func (in *ServiceExportConfigSpec) DeepCopyInto(out *ServiceExportConfigSpec)

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

type ServiceExportConfigStatus

type ServiceExportConfigStatus struct {
}

func (*ServiceExportConfigStatus) DeepCopy

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

func (*ServiceExportConfigStatus) DeepCopyInto

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

type SliceConfig

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

	Spec   SliceConfigSpec   `json:"spec,omitempty"`
	Status SliceConfigStatus `json:"status,omitempty"`
}

SliceConfig is the Schema for the sliceconfig API

func (*SliceConfig) DeepCopy

func (in *SliceConfig) DeepCopy() *SliceConfig

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

func (*SliceConfig) DeepCopyInto

func (in *SliceConfig) DeepCopyInto(out *SliceConfig)

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

func (*SliceConfig) DeepCopyObject

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

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

func (*SliceConfig) Default

func (r *SliceConfig) Default()

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

func (*SliceConfig) SetupWebhookWithManager

func (r *SliceConfig) SetupWebhookWithManager(mgr ctrl.Manager, validateCreate sliceConfigValidation, validateUpdate sliceConfigUpdateValidation, validateDelete sliceConfigValidation) error

func (*SliceConfig) ValidateCreate

func (r *SliceConfig) ValidateCreate() error

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

func (*SliceConfig) ValidateDelete

func (r *SliceConfig) ValidateDelete() error

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

func (*SliceConfig) ValidateUpdate

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

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

type SliceConfigList

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

SliceConfigList contains a list of SliceConfig

func (*SliceConfigList) DeepCopy

func (in *SliceConfigList) DeepCopy() *SliceConfigList

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

func (*SliceConfigList) DeepCopyInto

func (in *SliceConfigList) DeepCopyInto(out *SliceConfigList)

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

func (*SliceConfigList) DeepCopyObject

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

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

type SliceConfigSpec

type SliceConfigSpec struct {
	//+kubebuilder:default:=single-network
	OverlayNetworkDeploymentMode NetworkType `json:"overlayNetworkDeploymentMode,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"`
	Clusters               []string `json:"clusters,omitempty"`
	StandardQosProfileName string   `json:"standardQosProfileName,omitempty"` // FIXME: Add OneOf StandardQosProfileName vs QosProfileDetails
	// The custom QOS Profile Details
	QosProfileDetails         *QOSProfile               `json:"qosProfileDetails,omitempty"` // FIXME: Add OneOf StandardQosProfileName vs QosProfileDetails
	NamespaceIsolationProfile NamespaceIsolationProfile `json:"namespaceIsolationProfile,omitempty"`
	ExternalGatewayConfig     []ExternalGatewayConfig   `json:"externalGatewayConfig,omitempty"`
	//+kubebuilder:validation:Minimum=2
	//+kubebuilder:validation:Maximum=32
	//+kubebuilder:default:=16
	MaxClusters int `json:"maxClusters"`
	//+kubebuilder:validation:Minimum=30
	//+kubebuilder:validation:Maximum=90
	//+kubebuilder:default:=30
	RotationInterval int `json:"rotationInterval,omitempty"`
	// RenewBefore is used for renew now!
	RenewBefore *metav1.Time      `json:"renewBefore,omitempty"`
	VPNConfig   *VPNConfiguration `json:"vpnConfig,omitempty"`
}

SliceConfigSpec defines the desired state of SliceConfig

func (*SliceConfigSpec) DeepCopy

func (in *SliceConfigSpec) DeepCopy() *SliceConfigSpec

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

func (*SliceConfigSpec) DeepCopyInto

func (in *SliceConfigSpec) DeepCopyInto(out *SliceConfigSpec)

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

type SliceConfigStatus

type SliceConfigStatus struct {
	KubesliceEvents []KubesliceEvent `json:"kubesliceEvents,omitempty"`
}

SliceConfigStatus defines the observed state of SliceConfig

func (*SliceConfigStatus) DeepCopy

func (in *SliceConfigStatus) DeepCopy() *SliceConfigStatus

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

func (*SliceConfigStatus) DeepCopyInto

func (in *SliceConfigStatus) DeepCopyInto(out *SliceConfigStatus)

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

type SliceGatewayServiceType added in v1.2.1

type SliceGatewayServiceType struct {
	// +kubebuilder:validation:Required
	Cluster string `json:"cluster"`
	// +kubebuilder:validation:Required
	//+kubebuilder:default:=NodePort
	//+kubebuilder:validation:Enum:=NodePort;LoadBalancer
	Type string `json:"type"`
	// +kubebuilder:validation:Required
	//+kubebuilder:default:=UDP
	//+kubebuilder:validation:Enum:=TCP;UDP
	Protocol string `json:"protocol"`
}

func (*SliceGatewayServiceType) DeepCopy added in v1.2.1

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

func (*SliceGatewayServiceType) DeepCopyInto added in v1.2.1

func (in *SliceGatewayServiceType) DeepCopyInto(out *SliceGatewayServiceType)

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

type SliceNamespaceSelection

type SliceNamespaceSelection struct {
	Namespace string   `json:"namespace,omitempty"`
	Clusters  []string `json:"clusters,omitempty"`
}

func (*SliceNamespaceSelection) DeepCopy

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

func (*SliceNamespaceSelection) DeepCopyInto

func (in *SliceNamespaceSelection) DeepCopyInto(out *SliceNamespaceSelection)

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

type SliceQoSConfig added in v0.2.1

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

	Spec   SliceQoSConfigSpec   `json:"spec,omitempty"`
	Status SliceQoSConfigStatus `json:"status,omitempty"`
}

SliceQoSConfig is the Schema for the sliceqosconfigs API

func (*SliceQoSConfig) DeepCopy added in v0.2.1

func (in *SliceQoSConfig) DeepCopy() *SliceQoSConfig

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

func (*SliceQoSConfig) DeepCopyInto added in v0.2.1

func (in *SliceQoSConfig) DeepCopyInto(out *SliceQoSConfig)

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

func (*SliceQoSConfig) DeepCopyObject added in v0.2.1

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

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

func (*SliceQoSConfig) Default added in v0.2.1

func (r *SliceQoSConfig) Default()

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

func (*SliceQoSConfig) SetupWebhookWithManager added in v0.2.1

func (r *SliceQoSConfig) SetupWebhookWithManager(mgr ctrl.Manager, validateCreate customSliceqosconfigValidation, validateUpdate customSliceqosconfigValidation, validateDelete customSliceqosconfigValidation) error

func (*SliceQoSConfig) ValidateCreate added in v0.2.1

func (r *SliceQoSConfig) ValidateCreate() error

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

func (*SliceQoSConfig) ValidateDelete added in v0.2.1

func (r *SliceQoSConfig) ValidateDelete() error

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

func (*SliceQoSConfig) ValidateUpdate added in v0.2.1

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

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

type SliceQoSConfigList added in v0.2.1

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

SliceQoSConfigList contains a list of SliceQoSConfig

func (*SliceQoSConfigList) DeepCopy added in v0.2.1

func (in *SliceQoSConfigList) DeepCopy() *SliceQoSConfigList

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

func (*SliceQoSConfigList) DeepCopyInto added in v0.2.1

func (in *SliceQoSConfigList) DeepCopyInto(out *SliceQoSConfigList)

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

func (*SliceQoSConfigList) DeepCopyObject added in v0.2.1

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

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

type SliceQoSConfigSpec added in v0.2.1

type SliceQoSConfigSpec struct {
	//+kubebuilder:validation:Enum:=HTB
	// +kubebuilder:validation:Required
	QueueType string `json:"queueType"`

	// +kubebuilder:validation:Required
	Priority int `json:"priority"`

	//+kubebuilder:validation:Enum:=BANDWIDTH_CONTROL
	// +kubebuilder:validation:Required
	TcType string `json:"tcType"`

	//+kubebuilder:validation:Required
	BandwidthCeilingKbps int `json:"bandwidthCeilingKbps"` //FIXME: Need research for unlimited

	//+kubebuilder:validation:Required
	BandwidthGuaranteedKbps int `json:"bandwidthGuaranteedKbps"`

	//+kubebuilder:validation:Enum:=Default;AF11;AF12;AF13;AF21;AF22;AF23;AF31;AF32;AF33;AF41;AF42;AF43;EF
	//+kubebuilder:validation:Required
	DscpClass string `json:"dscpClass"`
}

SliceQoSConfigSpec defines the desired state of SliceQoSConfig

func (*SliceQoSConfigSpec) DeepCopy added in v0.2.1

func (in *SliceQoSConfigSpec) DeepCopy() *SliceQoSConfigSpec

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

func (*SliceQoSConfigSpec) DeepCopyInto added in v0.2.1

func (in *SliceQoSConfigSpec) DeepCopyInto(out *SliceQoSConfigSpec)

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

type SliceQoSConfigStatus added in v0.2.1

type SliceQoSConfigStatus struct {
}

SliceQoSConfigStatus defines the observed state of SliceQoSConfig

func (*SliceQoSConfigStatus) DeepCopy added in v0.2.1

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

func (*SliceQoSConfigStatus) DeepCopyInto added in v0.2.1

func (in *SliceQoSConfigStatus) DeepCopyInto(out *SliceQoSConfigStatus)

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

type StatusOfKeyRotation added in v1.0.1

type StatusOfKeyRotation struct {
	Status               string      `json:"status,omitempty"`
	LastUpdatedTimestamp metav1.Time `json:"lastUpdatedTimestamp,omitempty"`
}

StatusOfKeyRotation represent per gateway status

func (*StatusOfKeyRotation) DeepCopy added in v1.0.1

func (in *StatusOfKeyRotation) DeepCopy() *StatusOfKeyRotation

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

func (*StatusOfKeyRotation) DeepCopyInto added in v1.0.1

func (in *StatusOfKeyRotation) DeepCopyInto(out *StatusOfKeyRotation)

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

type Telemetry

type Telemetry struct {
	//Enabled is the enable status of the Telemetry
	Enabled bool `json:"enabled,omitempty"`
	//TelemetryProvider is the Telemetry Provider information
	TelemetryProvider string `json:"telemetryProvider,omitempty"`
	//Endpoint is the Telemetry Endpoint
	Endpoint string `json:"endpoint,omitempty"`
}

Telemetry defines the field of ClusterSpec

func (*Telemetry) DeepCopy

func (in *Telemetry) DeepCopy() *Telemetry

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

func (*Telemetry) DeepCopyInto

func (in *Telemetry) DeepCopyInto(out *Telemetry)

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

type VCPURestriction added in v1.0.1

type VCPURestriction struct {
	// EnforceRestrictions is the flag to check if the cluster is restricted
	EnforceRestrictions bool `json:"enforceRestrictions,omitempty"`
	// LastUpdatedTimestamp is the timestamp when the enforcement was updated
	LastUpdatedTimestamp metav1.Time `json:"lastUpdatedTimestamp,omitempty"`
}

func (*VCPURestriction) DeepCopy added in v1.0.1

func (in *VCPURestriction) DeepCopy() *VCPURestriction

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

func (*VCPURestriction) DeepCopyInto added in v1.0.1

func (in *VCPURestriction) DeepCopyInto(out *VCPURestriction)

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

type VPNConfiguration added in v1.0.1

type VPNConfiguration struct {
	//+kubebuilder:default:=AES-256-CBC
	//+kubebuilder:validation:Required
	//+kubebuilder:validation:Enum:=AES-256-CBC;AES-128-CBC
	Cipher string `json:"cipher"`
}

VPNConfiguration defines the additional (optional) VPN Configuration to customise

func (*VPNConfiguration) DeepCopy added in v1.0.1

func (in *VPNConfiguration) DeepCopy() *VPNConfiguration

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

func (*VPNConfiguration) DeepCopyInto added in v1.0.1

func (in *VPNConfiguration) DeepCopyInto(out *VPNConfiguration)

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

type VpnKeyRotation added in v1.0.1

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

	Spec   VpnKeyRotationSpec   `json:"spec,omitempty"`
	Status VpnKeyRotationStatus `json:"status,omitempty"`
}

VpnKeyRotation is the Schema for the vpnkeyrotations API

func (*VpnKeyRotation) DeepCopy added in v1.0.1

func (in *VpnKeyRotation) DeepCopy() *VpnKeyRotation

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

func (*VpnKeyRotation) DeepCopyInto added in v1.0.1

func (in *VpnKeyRotation) DeepCopyInto(out *VpnKeyRotation)

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

func (*VpnKeyRotation) DeepCopyObject added in v1.0.1

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

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

func (*VpnKeyRotation) SetupWebhookWithManager added in v1.0.1

func (r *VpnKeyRotation) SetupWebhookWithManager(mgr ctrl.Manager, validateCreate func(context.Context, *VpnKeyRotation) error, validateDelete func(context.Context, *VpnKeyRotation) error) error

func (*VpnKeyRotation) ValidateCreate added in v1.0.1

func (r *VpnKeyRotation) ValidateCreate() error

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

func (*VpnKeyRotation) ValidateDelete added in v1.0.1

func (r *VpnKeyRotation) ValidateDelete() error

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

func (*VpnKeyRotation) ValidateUpdate added in v1.0.1

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

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

type VpnKeyRotationList added in v1.0.1

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

VpnKeyRotationList contains a list of VpnKeyRotation

func (*VpnKeyRotationList) DeepCopy added in v1.0.1

func (in *VpnKeyRotationList) DeepCopy() *VpnKeyRotationList

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

func (*VpnKeyRotationList) DeepCopyInto added in v1.0.1

func (in *VpnKeyRotationList) DeepCopyInto(out *VpnKeyRotationList)

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

func (*VpnKeyRotationList) DeepCopyObject added in v1.0.1

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

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

type VpnKeyRotationSpec added in v1.0.1

type VpnKeyRotationSpec struct {
	SliceName string `json:"sliceName,omitempty"`
	// ClusterGatewayMapping represents a map where key is cluster name and value is array of gateways present on that cluster.
	// This is used to avoid unnecessary reconciliation in worker-operator.
	ClusterGatewayMapping map[string][]string `json:"clusterGatewayMapping,omitempty"`
	// CertificateCreationTime is a time when certificate for all the gateway pairs is created/updated
	CertificateCreationTime *metav1.Time `json:"certificateCreationTime,omitempty"`
	// CertificateExpiryTime is a time when certificate for all the gateway pairs will expire
	CertificateExpiryTime *metav1.Time `json:"certificateExpiryTime,omitempty"`
	RotationInterval      int          `json:"rotationInterval,omitempty"`
	// clusters contains the list of clusters attached to this slice
	Clusters []string `json:"clusters,omitempty"`
	// RotationCount represent the number of times rotation has been already performed.
	RotationCount int `json:"rotationCount,omitempty"`
}

VpnKeyRotationSpec defines the desired state of VpnKeyRotation

func (*VpnKeyRotationSpec) DeepCopy added in v1.0.1

func (in *VpnKeyRotationSpec) DeepCopy() *VpnKeyRotationSpec

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

func (*VpnKeyRotationSpec) DeepCopyInto added in v1.0.1

func (in *VpnKeyRotationSpec) DeepCopyInto(out *VpnKeyRotationSpec)

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

type VpnKeyRotationStatus added in v1.0.1

type VpnKeyRotationStatus struct {
	// This is map of gateway name to the current rotation state
	CurrentRotationState map[string]StatusOfKeyRotation `json:"currentRotationState,omitempty"`
	// This is circular array of last n number of rotation status.
	StatusHistory map[string][]StatusOfKeyRotation `json:"statusHistory,omitempty"`
}

VpnKeyRotationStatus defines the observed state of VpnKeyRotation

func (*VpnKeyRotationStatus) DeepCopy added in v1.0.1

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

func (*VpnKeyRotationStatus) DeepCopyInto added in v1.0.1

func (in *VpnKeyRotationStatus) DeepCopyInto(out *VpnKeyRotationStatus)

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

type WorkerSliceGatewayProvider

type WorkerSliceGatewayProvider struct {
	//+kubebuilder:default:=OpenVPN
	// +kubebuilder:validation:Required
	SliceGatewayType string `json:"sliceGatewayType"`

	//+kubebuilder:default:=Local
	// +kubebuilder:validation:Required
	SliceCaType string `json:"sliceCaType"`

	SliceGatewayServiceType []SliceGatewayServiceType `json:"sliceGatewayServiceType,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.

Jump to

Keyboard shortcuts

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