v1beta1

package
v0.20.4 Latest Latest
Warning

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

Go to latest
Published: Apr 18, 2023 License: Apache-2.0 Imports: 5 Imported by: 1

Documentation

Overview

Package v1beta1 contains API Schema definitions for the mesh v1beta1 API group +kubebuilder:object:generate=true +groupName=networking.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: "networking.kubeslice.io", Version: "v1beta1"}

	// 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 ExportStatus

type ExportStatus string

ExportStatus is the status of Service Discovery reconciliation

const (
	// ExportStatusInitial is the initial state
	ExportStatusInitial ExportStatus = ""
	// ExportStatusPending indicates that the service reconciliation is in progress and endpoints are not exported yet
	ExportStatusPending ExportStatus = "PENDING"
	// ExportStatusReady indicates that the Service is ready to serve requests
	ExportStatusReady ExportStatus = "READY"
	// ExportStatusError indicates that service is in error state and cannot process requests
	ExportStatusError ExportStatus = "ERROR"
)

type ExternalGatewayConfig

type ExternalGatewayConfig struct {
	Ingress     *ExternalGatewayConfigOptions `json:"ingress,omitempty"`
	Egress      *ExternalGatewayConfigOptions `json:"egress,omitempty"`
	NsIngress   *ExternalGatewayConfigOptions `json:"nsIngress,omitempty"`
	GatewayType string                        `json:"gatewayType,omitempty"`
}

ExternalGatewayConfig determines istio ingress/egress configuration

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 GwPodInfo

type GwPodInfo struct {
	PodName      string       `json:"podName,omitempty"`
	PeerPodName  string       `json:"peerPodName,omitempty"`
	PodIP        string       `json:"podIP,omitempty"`
	LocalNsmIP   string       `json:"localNsmIP,omitempty"`
	TunnelStatus TunnelStatus `json:"tunnelStatus,omitempty"`
	RouteRemoved int32        `json:"routeRemoved,omitempty"`
}

func (*GwPodInfo) DeepCopy

func (in *GwPodInfo) DeepCopy() *GwPodInfo

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

func (*GwPodInfo) DeepCopyInto

func (in *GwPodInfo) DeepCopyInto(out *GwPodInfo)

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

type ImportStatus

type ImportStatus string

ImportStatus is the status of Service Discovery reconciliation

const (
	// ImportStatusInitial is the initial state
	ImportStatusInitial ImportStatus = ""
	// ImportStatusPending indicates that the service reconciliation is in progress and endpoints are not ready to communicate
	ImportStatusPending ImportStatus = "PENDING"
	// ImportStatusReady indicates that the Service is ready to serve requests
	ImportStatusReady ImportStatus = "READY"
	// ImportStatusError indicates that service is in error state and cannot process requests
	ImportStatusError ImportStatus = "ERROR"
)

type IngressGwPod

type IngressGwPod struct {
	// Name of the pod
	Name string `json:"name"`
	// NsmIP of the pod which is reachable within slice
	NsmIP string `json:"nsmIp,omitempty"`
}

IngressGwPod contains ingress gw pod information

func (*IngressGwPod) DeepCopy

func (in *IngressGwPod) DeepCopy() *IngressGwPod

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

func (*IngressGwPod) DeepCopyInto

func (in *IngressGwPod) DeepCopyInto(out *IngressGwPod)

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

type NamespaceIsolationProfile

type NamespaceIsolationProfile struct {
	// Enable Namespace Isolation in the slice
	// +kubebuilder:default:=false
	IsolationEnabled bool `json:"isolationEnabled,omitempty"`
	//Application namespaces is a list of namespaces that are bound to the slice
	ApplicationNamespaces []string `json:"applicationNamespaces,omitempty"`
	//Allowed namespaces is a list of namespaces that can send and receive traffic to app namespaces
	AllowedNamespaces []string `json:"allowedNamespaces,omitempty"`
}

NamespaceIsolationProfile defines the namespace isolation policy for the slice

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 QosProfileDetails

type QosProfileDetails struct {
	// Queue Type
	QueueType string `json:"queueType,omitempty"`
	// Bandwidth Ceiling eg:5000
	BandwidthCeilingKbps int `json:"bandwidthCeilingKbps,omitempty"`
	// Bandwidth Guaranteed eg:4000
	BandwidthGuaranteedKbps int `json:"bandwidthGuaranteedKbps,omitempty"`
	// Priority 0-3
	Priority int `json:"priority,omitempty"`
	// DSCP code for inter cluster traffic
	DscpClass string `json:"dscpClass,omitempty"`
	// TC type
	TcType string `json:"tcType,omitempty"`
}

QosProfileDetails is the QOS Profile for the slice

func (*QosProfileDetails) DeepCopy

func (in *QosProfileDetails) DeepCopy() *QosProfileDetails

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

func (*QosProfileDetails) DeepCopyInto

func (in *QosProfileDetails) DeepCopyInto(out *QosProfileDetails)

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

type ServiceEndpoint

type ServiceEndpoint struct {
	// Name of the endpoint
	Name string `json:"name,omitempty"`
	// IP of the pod which is reachable within slice
	IP string `json:"ip"`
	// Port to reach the endpoint
	Port int32 `json:"port"`
	// ClusterID which the endpoint belongs to
	ClusterID string `json:"clusterId"`
	// DNSName
	DNSName string `json:"dnsName"`
}

ServiceEndpoint contains details of a single endpoint which offers a particular service

func (*ServiceEndpoint) DeepCopy

func (in *ServiceEndpoint) DeepCopy() *ServiceEndpoint

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

func (*ServiceEndpoint) DeepCopyInto

func (in *ServiceEndpoint) DeepCopyInto(out *ServiceEndpoint)

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

type ServiceExport

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

	Spec   ServiceExportSpec   `json:"spec,omitempty"`
	Status ServiceExportStatus `json:"status,omitempty"`
}

ServiceExport is the Schema for the serviceexports API

func (*ServiceExport) DeepCopy

func (in *ServiceExport) DeepCopy() *ServiceExport

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

func (*ServiceExport) DeepCopyInto

func (in *ServiceExport) DeepCopyInto(out *ServiceExport)

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

func (*ServiceExport) DeepCopyObject

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

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

type ServiceExportList

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

ServiceExportList contains a list of ServiceExport

func (*ServiceExportList) DeepCopy

func (in *ServiceExportList) DeepCopy() *ServiceExportList

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

func (*ServiceExportList) DeepCopyInto

func (in *ServiceExportList) DeepCopyInto(out *ServiceExportList)

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

func (*ServiceExportList) DeepCopyObject

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

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

type ServiceExportSpec

type ServiceExportSpec struct {
	// Slice denotes the slice which the app is part of
	Slice string `json:"slice"`
	// Selector is a label query over pods that should be exposed as a service
	Selector *metav1.LabelSelector `json:"selector"`
	// IngressEnabled denotes whether the traffic should be proxied through an ingress gateway
	IngressEnabled bool `json:"ingressEnabled,omitempty"`
	// Ports which should be exposed through the service
	Ports []ServicePort `json:"ports"`
	// 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"`
}

ServiceExportSpec defines the desired state of ServiceExport

func (*ServiceExportSpec) DeepCopy

func (in *ServiceExportSpec) DeepCopy() *ServiceExportSpec

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

func (*ServiceExportSpec) DeepCopyInto

func (in *ServiceExportSpec) DeepCopyInto(out *ServiceExportSpec)

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

type ServiceExportStatus

type ServiceExportStatus struct {
	// DNSName is the FQDN to reach the service
	DNSName string `json:"dnsName,omitempty"`
	// ExportStatus denotes the export status of the service
	ExportStatus ExportStatus `json:"exportStatus,omitempty"`
	// Pods denotes the service endpoint pods
	Pods []ServicePod `json:"pods,omitempty"`
	// Last sync time with backend
	LastSync int64 `json:"lastSync,omitempty"`
	// ExposedPorts shows a one line representation of ports and protocols exposed
	// only used to show as a printercolumn
	ExposedPorts string `json:"exposedPorts,omitempty"`
	// AvailableEndpoints shows the number of available endpoints
	AvailableEndpoints int `json:"availableEndpoints,omitempty"`
	// IngressGwEnabled denotes ingress gw is enabled for the serviceexport
	IngressGwEnabled bool `json:"ingressGwEnabled,omitempty"`
	// IngressGwPod contains ingress gateway pod info
	IngressGwPod IngressGwPod `json:"ingressGwPod,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"`
}

ServiceExportStatus defines the observed state of ServiceExport

func (*ServiceExportStatus) DeepCopy

func (in *ServiceExportStatus) DeepCopy() *ServiceExportStatus

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

func (*ServiceExportStatus) DeepCopyInto

func (in *ServiceExportStatus) DeepCopyInto(out *ServiceExportStatus)

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

type ServiceImport

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

	Spec   ServiceImportSpec   `json:"spec,omitempty"`
	Status ServiceImportStatus `json:"status,omitempty"`
}

ServiceImport is the Schema for the serviceimports API

func (*ServiceImport) DeepCopy

func (in *ServiceImport) DeepCopy() *ServiceImport

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

func (*ServiceImport) DeepCopyInto

func (in *ServiceImport) DeepCopyInto(out *ServiceImport)

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

func (*ServiceImport) DeepCopyObject

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

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

type ServiceImportList

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

ServiceImportList contains a list of ServiceImport

func (*ServiceImportList) DeepCopy

func (in *ServiceImportList) DeepCopy() *ServiceImportList

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

func (*ServiceImportList) DeepCopyInto

func (in *ServiceImportList) DeepCopyInto(out *ServiceImportList)

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

func (*ServiceImportList) DeepCopyObject

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

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

type ServiceImportSpec

type ServiceImportSpec struct {
	// Slice denotes the slice which the app is part of
	Slice string `json:"slice"`
	// DNSName shows the FQDN to reach the service
	DNSName string `json:"dnsName"`
	// Ports which should be exposed through the service
	Ports []ServicePort `json:"ports"`
	// 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"`
}

ServiceImportSpec defines the desired state of ServiceImport

func (*ServiceImportSpec) DeepCopy

func (in *ServiceImportSpec) DeepCopy() *ServiceImportSpec

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

func (*ServiceImportSpec) DeepCopyInto

func (in *ServiceImportSpec) DeepCopyInto(out *ServiceImportSpec)

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

type ServiceImportStatus

type ServiceImportStatus struct {
	// ImportStatus denotes the status of the imported service
	ImportStatus ImportStatus `json:"importStatus,omitempty"`
	// Last sync time with backend
	LastSync int64 `json:"lastSync,omitempty"`
	// Used to match if the service is updated from backend
	UpdatedOn int64 `json:"updatedOn,omitempty"`
	// ExposedPorts shows a one line representation of ports and protocols exposed
	// only used to show as a printercolumn
	ExposedPorts string `json:"exposedPorts,omitempty"`
	// AvailableEndpoints shows the number of available endpoints
	AvailableEndpoints int `json:"availableEndpoints,omitempty"`
	// Endpoints which provide the service
	Endpoints []ServiceEndpoint `json:"endpoints,omitempty"`
}

ServiceImportStatus defines the observed state of ServiceImport

func (*ServiceImportStatus) DeepCopy

func (in *ServiceImportStatus) DeepCopy() *ServiceImportStatus

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

func (*ServiceImportStatus) DeepCopyInto

func (in *ServiceImportStatus) DeepCopyInto(out *ServiceImportStatus)

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

type ServicePod

type ServicePod struct {
	// Name of the pod
	Name string `json:"name"`
	// NsmIP of the pod which is reachable within slice
	NsmIP string `json:"nsmIp,omitempty"`
	// PodIp of the pod which is reachable within cluster
	PodIp string `json:"podIp"`
	// DNSName is the dns A record name for the pod
	DNSName string `json:"dnsName"`
}

ServicePod contains pod information which offers a service

func (*ServicePod) DeepCopy

func (in *ServicePod) DeepCopy() *ServicePod

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

func (*ServicePod) DeepCopyInto

func (in *ServicePod) DeepCopyInto(out *ServicePod)

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

type ServicePort

type ServicePort struct {
	// Name of the port
	Name string `json:"name,omitempty"`
	// Port number exposed from the container
	ContainerPort int32 `json:"containerPort"`
	// Protocol for port. Must be UDP, TCP, or SCTP.
	// Defaults to "TCP".
	Protocol corev1.Protocol `json:"protocol,omitempty"`
}

ServicePort is the port exposed by ServicePod

func (*ServicePort) DeepCopy

func (in *ServicePort) DeepCopy() *ServicePort

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

func (*ServicePort) DeepCopyInto

func (in *ServicePort) DeepCopyInto(out *ServicePort)

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

type ServiceProtocol

type ServiceProtocol string

ServiceProtocol is the protocol exposed by the service

const (
	// ServiceProtocolTCP is tcp protocol
	ServiceProtocolTCP ServiceProtocol = "tcp"
	//ServiceProtocolHTTP is http protocol
	ServiceProtocolHTTP ServiceProtocol = "http"
)

type Slice

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

	Spec   SliceSpec   `json:"spec,omitempty"`
	Status SliceStatus `json:"status,omitempty"`
}

Slice is the Schema for the slices API

func (*Slice) DeepCopy

func (in *Slice) DeepCopy() *Slice

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

func (*Slice) DeepCopyInto

func (in *Slice) DeepCopyInto(out *Slice)

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

func (*Slice) DeepCopyObject

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

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

type SliceConfig

type SliceConfig struct {
	// UUID of the slice.
	SliceID string `json:"sliceId"`
	// display name of the slice.
	SliceDisplayName string `json:"sliceDisplayName"`
	// IP subnet range of the slice.
	SliceSubnet string `json:"sliceSubnet"`
	// Type of the slice.
	SliceType string `json:"sliceType"`
	// QOS profile details
	QosProfileDetails QosProfileDetails `json:"qosProfileDetails"`
	// IPAM configuration for the slice
	SliceIpam SliceIpamConfig `json:"sliceIpam"`
	// ExternalGatewayConfig determines istio ingress/egress configuration
	ExternalGatewayConfig *ExternalGatewayConfig `json:"externalGatewayConfig,omitempty"`
	// Namespace Isolation profile contains fields related to namespace binding to slice
	NamespaceIsolationProfile *NamespaceIsolationProfile `json:"namespaceIsolationProfile,omitempty"`
	//ClusterSubnetCIDR is the subnet to be used by the current cluster
	ClusterSubnetCIDR string `json:"clusterSubnetCIDR,omitempty"`
}

SliceConfig defines the Config retrieved from Hub

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.

type SliceGateway

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

	Spec   SliceGatewaySpec   `json:"spec,omitempty"`
	Status SliceGatewayStatus `json:"status,omitempty"`
}

SliceGateway is the Schema for the slicegateways API

func (*SliceGateway) DeepCopy

func (in *SliceGateway) DeepCopy() *SliceGateway

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

func (*SliceGateway) DeepCopyInto

func (in *SliceGateway) DeepCopyInto(out *SliceGateway)

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

func (*SliceGateway) DeepCopyObject

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

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

type SliceGatewayConfig

type SliceGatewayConfig struct {
	// UUID of the slice gateway.
	SliceGatewayID string `json:"sliceGatewayId,omitempty"`
	// Slice Gateway Name
	SliceGatewayName string `json:"sliceGatewayName,omitempty"`
	// Name of the slice.
	SliceName string `json:"sliceName,omitempty"`
	// Slice gateway subnet range.
	SliceSiteName string `json:"sliceSiteName,omitempty"`
	// Slice gateway subnet range.
	SliceGatewaySubnet string `json:"sliceGatewaySubnet,omitempty"`
	// SliceGateway status
	SliceGatewayStatus string `json:"sliceGatewayStatus,omitempty"`
	// Host Type : server or client
	SliceGatewayHostType string `json:"sliceGatewayHostType,omitempty"`
	// Node port
	SliceGatewayNodePorts []int `json:"sliceGatewayNodePorts,omitempty"`
	// Remote Node IPs
	SliceGatewayRemoteNodeIPs []string `json:"sliceGatewayRemoteNodeIps,omitempty"`
	// Remote Node Port
	SliceGatewayRemoteNodePorts []int `json:"sliceGatewayRemoteNodePorts,omitempty"`
	// Remote Node Subnet
	SliceGatewayRemoteSubnet string `json:"sliceGatewayRemoteSubnet,omitempty"`
	// Remote VPN IP
	SliceGatewayRemoteVpnIP string `json:"sliceGatewayRemoteVpnIp,omitempty"`
	// Local VPN IP
	SliceGatewayLocalVpnIP string `json:"sliceGatewayLocalVpnIp,omitempty"`
	// Remote Gateway ID
	SliceGatewayRemoteGatewayID string `json:"sliceGatewayRemoteGatewayId,omitempty"`
	// Remote Cluster ID
	SliceGatewayRemoteClusterID string `json:"sliceGatewayRemoteClusterId,omitempty"`
}

SliceGatewayConfig defines the config received from backend

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 SliceGatewayList

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

SliceGatewayList contains a list of SliceGateway

func (*SliceGatewayList) DeepCopy

func (in *SliceGatewayList) DeepCopy() *SliceGatewayList

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

func (*SliceGatewayList) DeepCopyInto

func (in *SliceGatewayList) DeepCopyInto(out *SliceGatewayList)

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

func (*SliceGatewayList) DeepCopyObject

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

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

type SliceGatewaySpec

type SliceGatewaySpec struct {
	// SliceName is the Name of the slice this gateway is attached into
	SliceName string `json:"sliceName,omitempty"`
	// SiteName is site name
	SiteName string `json:"siteName,omitempty"`
}

SliceGatewaySpec defines the desired state of SliceGateway

func (*SliceGatewaySpec) DeepCopy

func (in *SliceGatewaySpec) DeepCopy() *SliceGatewaySpec

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

func (*SliceGatewaySpec) DeepCopyInto

func (in *SliceGatewaySpec) DeepCopyInto(out *SliceGatewaySpec)

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

type SliceGatewayStatus

type SliceGatewayStatus struct {
	// SliceGatewayConfig defines the config received from backend
	Config SliceGatewayConfig `json:"config,omitempty"`
	// ConfigUpdatedOn is the time when Config updated from backend
	ConfigUpdatedOn int64 `json:"configUpdatedOn,omitempty"`
	// Deprecated PodName is the name of the gateway pod running in cluster
	PodName string `json:"podName,omitempty"`
	// PodNames is the list of names of the gateway pods running in cluster
	PodNames []string `json:"podNames,omitempty"`
	// PodStatus shows whether gateway pod is healthy
	PodStatus string `json:"podStatus,omitempty"`
	// PodIPs is the list of Ip of the gateway pods running in cluster
	PodIPs []string `json:"podIps,omitempty"`
	// PeerIP is the gateway tunnel peer ip
	PeerIP string `json:"peerIp,omitempty"`
	// ConnectionContextUpdated is the time when context updated in pod
	ConnectionContextUpdatedOn int64 `json:"connectionContextUpdatedOn,omitempty"`
	//gatewayPodStatus is a list that consists of status of individual gatewaypods
	GatewayPodStatus []*GwPodInfo `json:"gatewayPodStatus,omitempty"`
}

SliceGatewayStatus defines the observed state of SliceGateway

func (*SliceGatewayStatus) DeepCopy

func (in *SliceGatewayStatus) DeepCopy() *SliceGatewayStatus

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

func (*SliceGatewayStatus) DeepCopyInto

func (in *SliceGatewayStatus) DeepCopyInto(out *SliceGatewayStatus)

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

type SliceIpamConfig

type SliceIpamConfig struct {
	// IPAM Type for slice
	SliceIpamType string `json:"sliceIpamType"`
	// Cluster specific octet for IPAM root subnet
	IpamClusterOctet int `json:"ipamClusterOctet,omitempty"`
}

func (*SliceIpamConfig) DeepCopy

func (in *SliceIpamConfig) DeepCopy() *SliceIpamConfig

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

func (*SliceIpamConfig) DeepCopyInto

func (in *SliceIpamConfig) DeepCopyInto(out *SliceIpamConfig)

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

type SliceList

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

SliceList contains a list of Slice

func (*SliceList) DeepCopy

func (in *SliceList) DeepCopy() *SliceList

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

func (*SliceList) DeepCopyInto

func (in *SliceList) DeepCopyInto(out *SliceList)

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

func (*SliceList) DeepCopyObject

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

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

type SliceSpec

type SliceSpec struct {
}

SliceSpec defines the desired state of Slice

func (*SliceSpec) DeepCopy

func (in *SliceSpec) DeepCopy() *SliceSpec

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

func (*SliceSpec) DeepCopyInto

func (in *SliceSpec) DeepCopyInto(out *SliceSpec)

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

type SliceStatus

type SliceStatus struct {
	// SliceConfig is the spec for slice received from hub cluster
	SliceConfig *SliceConfig `json:"sliceConfig,omitempty"`
	// DNSIP is the IP of Coredns server
	DNSIP string `json:"dnsIP,omitempty"`
	// AppPods contains the list of app pods connected to the slice
	AppPods []AppPod `json:"appPods,omitempty"`
	// AppPodsUpdatedOn is the time when app pods list was updated
	AppPodsUpdatedOn int64 `json:"appPodsUpdatedOn,omitempty"`
	// NetworkPoliciesInstalled defines whether the netpol are installed in atleast one applicationNamespace
	// +kubebuilder:default:=false
	NetworkPoliciesInstalled bool `json:"networkPoliciesInstalled,omitempty"`
	// Slice Application Namespace list
	ApplicationNamespaces []string `json:"applicationNamespaces,omitempty"`
	// Slice Allowed Namespace list
	AllowedNamespaces []string `json:"allowedNamespaces,omitempty"`
}

SliceStatus defines the observed state of Slice

func (*SliceStatus) DeepCopy

func (in *SliceStatus) DeepCopy() *SliceStatus

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

func (*SliceStatus) DeepCopyInto

func (in *SliceStatus) DeepCopyInto(out *SliceStatus)

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

type TunnelStatus

type TunnelStatus struct {
	IntfName   string `json:"IntfName,omitempty"`
	LocalIP    string `json:"LocalIP,omitempty"`
	RemoteIP   string `json:"RemoteIP,omitempty"`
	Latency    uint64 `json:"Latency,omitempty"`
	TxRate     uint64 `json:"TxRate,omitempty"`
	RxRate     uint64 `json:"RxRate,omitempty"`
	PacketLoss uint64 `json:"PacketLoss,omitempty"`
	Status     int32  `json:"Status,omitempty"`
}

func (*TunnelStatus) DeepCopy

func (in *TunnelStatus) DeepCopy() *TunnelStatus

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

func (*TunnelStatus) DeepCopyInto

func (in *TunnelStatus) DeepCopyInto(out *TunnelStatus)

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