Documentation ¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the v1alpha1 API group
Index ¶
- Constants
- Variables
- type Broker
- type BrokerList
- type BrokerSpec
- type BrokerStatus
- type CloudProvider
- type CoreDNSCustomConfig
- type DaemonSetStatusWrapper
- type DeploymentInfo
- type HealthCheckSpec
- type KubernetesType
- type LoadBalancerStatusWrapper
- type ServiceDiscovery
- type ServiceDiscoveryList
- type ServiceDiscoverySpec
- type ServiceDiscoveryStatus
- type Submariner
- type SubmarinerList
- type SubmarinerSpec
- type SubmarinerStatus
Constants ¶
const ( K8s KubernetesType = "k8s" OCP = "ocp" EKS = "eks" AKS = "aks" GKE = "gke" DefaultKubernetesType = K8s Kind CloudProvider = "kind" AWS = "aws" GCP = "gcp" Azure = "azure" Openstack = "openstack" )
Variables ¶
var ( // GroupVersion is group version used to register these objects. GroupVersion = schema.GroupVersion{Group: "submariner.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 )
var ( DefaultRepo = "quay.io/submariner" DefaultSubmarinerOperatorVersion = "0.19.0-rc1" DefaultSubmarinerVersion = "0.19.0-rc1" DefaultLighthouseVersion = "0.19.0-rc1" )
Functions ¶
This section is empty.
Types ¶
type Broker ¶
type Broker struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec BrokerSpec `json:"spec,omitempty"` Status BrokerStatus `json:"status,omitempty"` }
Broker is the Schema for the brokers API. +operator-sdk:csv:customresourcedefinitions:displayName="Submariner Broker",resources={{Deployment,v1,submariner-operator}}
func (*Broker) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Broker.
func (*Broker) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Broker) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type BrokerList ¶
type BrokerList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Broker `json:"items"` }
BrokerList contains a list of Broker.
func (*BrokerList) DeepCopy ¶
func (in *BrokerList) DeepCopy() *BrokerList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BrokerList.
func (*BrokerList) DeepCopyInto ¶
func (in *BrokerList) DeepCopyInto(out *BrokerList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*BrokerList) DeepCopyObject ¶
func (in *BrokerList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type BrokerSpec ¶
type BrokerSpec struct { // List of the components to be installed - any of [service-discovery, connectivity]. // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Components" // +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"} Components []string `json:"components,omitempty"` // List of domains to use for multi-cluster service discovery. // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Default Custom Domains" //nolint:lll // Markers can't be wrapped // +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text","urn:alm:descriptor:com.tectonic.ui:advanced"} DefaultCustomDomains []string `json:"defaultCustomDomains,omitempty"` // GlobalCIDR supernet range for allocating GlobalCIDRs to each cluster. // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Globalnet CIDR Range" //nolint:lll // Markers can't be wrapped // +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text","urn:alm:descriptor:com.tectonic.ui:fieldDependency:globalnetEnabled:true","urn:alm:descriptor:com.tectonic.ui:advanced"} GlobalnetCIDRRange string `json:"globalnetCIDRRange,omitempty"` // ClustersetIP supernet range for allocating ClustersetIPCIDRs to each cluster. // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="ClustersetIP CIDR Range" //nolint:lll // Markers can't be wrapped // +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text","urn:alm:descriptor:com.tectonic.ui:advanced"} // +optional ClustersetIPCIDRRange string `json:"clustersetIPCIDRRange,omitempty"` // Default cluster size for GlobalCIDR allocated to each cluster (amount of global IPs). // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Default Globalnet Cluster Size" //nolint:lll // Markers can't be wrapped // +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:number","urn:alm:descriptor:com.tectonic.ui:fieldDependency:globalnetEnabled:true","urn:alm:descriptor:com.tectonic.ui:advanced"} DefaultGlobalnetClusterSize uint `json:"defaultGlobalnetClusterSize,omitempty"` // Enable support for Overlapping CIDRs in connecting clusters. // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Enable Globalnet" // +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:booleanSwitch"} GlobalnetEnabled bool `json:"globalnetEnabled,omitempty"` // Enable ClustersetIP default for connecting clusters. // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Enable ClustersetIP" // +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:booleanSwitch"} // +optional ClustersetIPEnabled bool `json:"clustersetIPEnabled,omitempty"` }
BrokerSpec defines the desired state of Broker.
func (*BrokerSpec) DeepCopy ¶
func (in *BrokerSpec) DeepCopy() *BrokerSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BrokerSpec.
func (*BrokerSpec) DeepCopyInto ¶
func (in *BrokerSpec) DeepCopyInto(out *BrokerSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BrokerStatus ¶
type BrokerStatus struct { }
BrokerStatus defines the observed state of Broker.
func (*BrokerStatus) DeepCopy ¶
func (in *BrokerStatus) DeepCopy() *BrokerStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BrokerStatus.
func (*BrokerStatus) DeepCopyInto ¶
func (in *BrokerStatus) DeepCopyInto(out *BrokerStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CloudProvider ¶
type CloudProvider string
type CoreDNSCustomConfig ¶
type CoreDNSCustomConfig struct { // Name of the custom CoreDNS configmap. // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="CoreDNS Custom Config Name" // +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"} ConfigMapName string `json:"configMapName,omitempty"` // Namespace of the custom CoreDNS configmap. // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="CoreDNS Custom Config Namespace" // +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"} Namespace string `json:"namespace,omitempty"` }
func (*CoreDNSCustomConfig) DeepCopy ¶
func (in *CoreDNSCustomConfig) DeepCopy() *CoreDNSCustomConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CoreDNSCustomConfig.
func (*CoreDNSCustomConfig) DeepCopyInto ¶
func (in *CoreDNSCustomConfig) DeepCopyInto(out *CoreDNSCustomConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DaemonSetStatusWrapper ¶
type DaemonSetStatusWrapper struct { LastResourceVersion string `json:"lastResourceVersion,omitempty"` Status *appsv1.DaemonSetStatus `json:"status,omitempty"` NonReadyContainerStates *[]corev1.ContainerState `json:"nonReadyContainerStates,omitempty"` MismatchedContainerImages bool `json:"mismatchedContainerImages"` }
func (*DaemonSetStatusWrapper) DeepCopy ¶
func (in *DaemonSetStatusWrapper) DeepCopy() *DaemonSetStatusWrapper
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DaemonSetStatusWrapper.
func (*DaemonSetStatusWrapper) DeepCopyInto ¶
func (in *DaemonSetStatusWrapper) DeepCopyInto(out *DaemonSetStatusWrapper)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DeploymentInfo ¶
type DeploymentInfo struct { KubernetesType KubernetesType `json:"kubernetesType,omitempty"` KubernetesTypeVersion string `json:"kubernetesTypeVersion,omitempty"` KubernetesVersion string `json:"kubernetesVersion,omitempty"` CloudProvider CloudProvider `json:"cloudProvider,omitempty"` }
func (*DeploymentInfo) DeepCopy ¶
func (in *DeploymentInfo) DeepCopy() *DeploymentInfo
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeploymentInfo.
func (*DeploymentInfo) DeepCopyInto ¶
func (in *DeploymentInfo) DeepCopyInto(out *DeploymentInfo)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HealthCheckSpec ¶
type HealthCheckSpec struct { // Enable the connection health check. // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Enable Connection Health Checks" // +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:booleanSwitch"} Enabled bool `json:"enabled,omitempty"` // The interval at which health check pings are sent. // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Connection Health Check Interval" //nolint:lll // Markers can't be wrapped // +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:number","urn:alm:descriptor:com.tectonic.ui:fieldDependency:connectionHealthCheck.enabled:true"} IntervalSeconds uint64 `json:"intervalSeconds,omitempty"` // The maximum number of packets lost at which the health checker will mark the connection as down. // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Maximum Packet Loss" //nolint:lll // Markers can't be wrapped // +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:number","urn:alm:descriptor:com.tectonic.ui:fieldDependency:connectionHealthCheck.enabled:true"} MaxPacketLossCount uint64 `json:"maxPacketLossCount,omitempty"` }
func (*HealthCheckSpec) DeepCopy ¶
func (in *HealthCheckSpec) DeepCopy() *HealthCheckSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HealthCheckSpec.
func (*HealthCheckSpec) DeepCopyInto ¶
func (in *HealthCheckSpec) DeepCopyInto(out *HealthCheckSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KubernetesType ¶
type KubernetesType string
type LoadBalancerStatusWrapper ¶
type LoadBalancerStatusWrapper struct {
Status *corev1.LoadBalancerStatus `json:"status,omitempty"`
}
func (*LoadBalancerStatusWrapper) DeepCopy ¶
func (in *LoadBalancerStatusWrapper) DeepCopy() *LoadBalancerStatusWrapper
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoadBalancerStatusWrapper.
func (*LoadBalancerStatusWrapper) DeepCopyInto ¶
func (in *LoadBalancerStatusWrapper) DeepCopyInto(out *LoadBalancerStatusWrapper)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceDiscovery ¶
type ServiceDiscovery struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec ServiceDiscoverySpec `json:"spec,omitempty"` Status ServiceDiscoveryStatus `json:"status,omitempty"` }
ServiceDiscovery is the Schema for the servicediscoveries API.
func (*ServiceDiscovery) DeepCopy ¶
func (in *ServiceDiscovery) DeepCopy() *ServiceDiscovery
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceDiscovery.
func (*ServiceDiscovery) DeepCopyInto ¶
func (in *ServiceDiscovery) DeepCopyInto(out *ServiceDiscovery)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ServiceDiscovery) DeepCopyObject ¶
func (in *ServiceDiscovery) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*ServiceDiscovery) UnmarshalJSON ¶
func (sd *ServiceDiscovery) UnmarshalJSON(data []byte) error
type ServiceDiscoveryList ¶
type ServiceDiscoveryList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []ServiceDiscovery `json:"items"` }
ServiceDiscoveryList contains a list of ServiceDiscovery.
func (*ServiceDiscoveryList) DeepCopy ¶
func (in *ServiceDiscoveryList) DeepCopy() *ServiceDiscoveryList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceDiscoveryList.
func (*ServiceDiscoveryList) DeepCopyInto ¶
func (in *ServiceDiscoveryList) DeepCopyInto(out *ServiceDiscoveryList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ServiceDiscoveryList) DeepCopyObject ¶
func (in *ServiceDiscoveryList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ServiceDiscoverySpec ¶
type ServiceDiscoverySpec struct { BrokerK8sApiServer string `json:"brokerK8sApiServer"` BrokerK8sApiServerToken string `json:"brokerK8sApiServerToken,omitempty"` BrokerK8sCA string `json:"brokerK8sCA,omitempty"` BrokerK8sSecret string `json:"brokerK8sSecret,omitempty"` BrokerK8sRemoteNamespace string `json:"brokerK8sRemoteNamespace"` ClusterID string `json:"clusterID"` Namespace string `json:"namespace"` Repository string `json:"repository,omitempty"` Version string `json:"version,omitempty"` // +optional ClustersetIPCIDR string `json:"clustersetIPCIDR,omitempty"` Debug bool `json:"debug"` GlobalnetEnabled bool `json:"globalnetEnabled,omitempty"` BrokerK8sInsecure bool `json:"brokerK8sInsecure,omitempty"` HaltOnCertificateError bool `json:"haltOnCertificateError,omitempty"` // +optional ClustersetIPEnabled bool `json:"clustersetIPEnabled,omitempty"` CoreDNSCustomConfig *CoreDNSCustomConfig `json:"coreDNSCustomConfig,omitempty"` // +listType=set CustomDomains []string `json:"customDomains,omitempty"` ImageOverrides map[string]string `json:"imageOverrides,omitempty"` // +optional NodeSelector map[string]string `json:"nodeSelector,omitempty"` // +optional Tolerations []corev1.Toleration `json:"tolerations,omitempty"` }
ServiceDiscoverySpec defines the desired state of ServiceDiscovery.
func (*ServiceDiscoverySpec) DeepCopy ¶
func (in *ServiceDiscoverySpec) DeepCopy() *ServiceDiscoverySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceDiscoverySpec.
func (*ServiceDiscoverySpec) DeepCopyInto ¶
func (in *ServiceDiscoverySpec) DeepCopyInto(out *ServiceDiscoverySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceDiscoveryStatus ¶
type ServiceDiscoveryStatus struct {
DeploymentInfo DeploymentInfo `json:"deploymentInfo,omitempty"`
}
ServiceDiscoveryStatus defines the observed state of ServiceDiscovery.
func (*ServiceDiscoveryStatus) DeepCopy ¶
func (in *ServiceDiscoveryStatus) DeepCopy() *ServiceDiscoveryStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceDiscoveryStatus.
func (*ServiceDiscoveryStatus) DeepCopyInto ¶
func (in *ServiceDiscoveryStatus) DeepCopyInto(out *ServiceDiscoveryStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Submariner ¶
type Submariner struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec SubmarinerSpec `json:"spec,omitempty"` Status SubmarinerStatus `json:"status,omitempty"` }
Submariner is the Schema for the submariners API. +operator-sdk:csv:customresourcedefinitions:displayName="Submariner",resources={{Deployment,v1,submariner-operator}}
func (*Submariner) DeepCopy ¶
func (in *Submariner) DeepCopy() *Submariner
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Submariner.
func (*Submariner) DeepCopyInto ¶
func (in *Submariner) DeepCopyInto(out *Submariner)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Submariner) DeepCopyObject ¶
func (in *Submariner) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Submariner) UnmarshalJSON ¶
func (s *Submariner) UnmarshalJSON(data []byte) error
type SubmarinerList ¶
type SubmarinerList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Submariner `json:"items"` }
SubmarinerList contains a list of Submariner.
func (*SubmarinerList) DeepCopy ¶
func (in *SubmarinerList) DeepCopy() *SubmarinerList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubmarinerList.
func (*SubmarinerList) DeepCopyInto ¶
func (in *SubmarinerList) DeepCopyInto(out *SubmarinerList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SubmarinerList) DeepCopyObject ¶
func (in *SubmarinerList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type SubmarinerSpec ¶
type SubmarinerSpec struct { // Type of broker (must be "k8s"). // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Broker" // +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:hidden"} Broker string `json:"broker"` // The broker API URL. // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Broker API Server" // +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"} BrokerK8sApiServer string `json:"brokerK8sApiServer"` // The broker API Token. // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Broker API Token" // +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:password"} BrokerK8sApiServerToken string `json:"brokerK8sApiServerToken,omitempty"` // The broker certificate authority. // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Broker API CA" // +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:password"} BrokerK8sCA string `json:"brokerK8sCA,omitempty"` BrokerK8sSecret string `json:"brokerK8sSecret,omitempty"` // The Broker namespace. // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Broker Remote Namespace" // +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"} BrokerK8sRemoteNamespace string `json:"brokerK8sRemoteNamespace"` // Cable driver implementation - any of [libreswan, wireguard, vxlan]. // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Cable Driver" //nolint:lll // Markers can't be wrapped // +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:select:libreswan","urn:alm:descriptor:com.tectonic.ui:select:vxlan","urn:alm:descriptor:com.tectonic.ui:select:wireguard"} CableDriver string `json:"cableDriver,omitempty"` // The IPsec Pre-Shared Key which must be identical in all route agents across the cluster. // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="IPsec Pre-Shared Key" // +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:password"} CeIPSecPSK string `json:"ceIPSecPSK,omitempty"` CeIPSecPSKSecret string `json:"ceIPSecPSKSecret,omitempty"` // The cluster CIDR. // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Cluster CIDR" // +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"} ClusterCIDR string `json:"clusterCIDR"` // The cluster ID used to identify the tunnels. // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Cluster ID" // +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"} ClusterID string `json:"clusterID"` ColorCodes string `json:"colorCodes,omitempty"` // The image repository. // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Repository" //nolint:lll // Markers can't be wrapped // +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text","urn:alm:descriptor:com.tectonic.ui:advanced"} Repository string `json:"repository,omitempty"` // The service CIDR. // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Service CIDR" // +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"} ServiceCIDR string `json:"serviceCIDR"` // The Global CIDR super-net range for allocating GlobalCIDRs to each cluster. // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Global CIDR" //nolint:lll // Markers can't be wrapped // +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text","urn:alm:descriptor:com.tectonic.ui:advanced"} GlobalCIDR string `json:"globalCIDR,omitempty"` // ClustersetIP CIDR for allocating ClustersetIPs to exported services. // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="ClustersetIP CIDR" //nolint:lll // Markers can't be wrapped // +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text","urn:alm:descriptor:com.tectonic.ui:advanced"} // +optional ClustersetIPCIDR string `json:"clustersetIPCIDR,omitempty"` // The namespace in which to deploy the submariner operator. // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Namespace" // +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"} Namespace string `json:"namespace"` // The image tag. // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Version" //nolint:lll // Markers can't be wrapped // +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text","urn:alm:descriptor:com.tectonic.ui:advanced"} Version string `json:"version,omitempty"` // The IPsec IKE port (500 usually). // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="IPsec IKE Port" // +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:number"} CeIPSecIKEPort int `json:"ceIPSecIKEPort,omitempty"` // The IPsec NAT traversal port (4500 usually). // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="IPsec NATT Port" //nolint:lll // Markers can't be wrapped // +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:number","urn:alm:descriptor:com.tectonic.ui:fieldDependency:natEnabled:true"} CeIPSecNATTPort int `json:"ceIPSecNATTPort,omitempty"` // Enable logging IPsec debugging information. //nolint:lll // Markers can't be wrapped // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="IPsec Debug" // +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:booleanSwitch","urn:alm:descriptor:com.tectonic.ui:advanced"} CeIPSecDebug bool `json:"ceIPSecDebug"` // Enable this cluster as a preferred server for data-plane connections. //nolint:lll // Markers can't be wrapped // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="IPsec Preferred Server" // +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:booleanSwitch","urn:alm:descriptor:com.tectonic.ui:advanced"} CeIPSecPreferredServer bool `json:"ceIPSecPreferredServer,omitempty"` // Force UDP encapsulation for IPsec. //nolint:lll // Markers can't be wrapped // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="IPsec Force UDP Encapsulation" // +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:booleanSwitch","urn:alm:descriptor:com.tectonic.ui:advanced"} CeIPSecForceUDPEncaps bool `json:"ceIPSecForceUDPEncaps,omitempty"` // Enable operator debugging. //nolint:lll // Markers can't be wrapped // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Debug" // +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:booleanSwitch","urn:alm:descriptor:com.tectonic.ui:advanced"} Debug bool `json:"debug"` // Enable NAT between clusters. // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Enable NAT" // +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:booleanSwitch"} NatEnabled bool `json:"natEnabled"` AirGappedDeployment bool `json:"airGappedDeployment,omitempty"` // Enable automatic Load Balancer in front of the gateways. // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Enable Load Balancer" // +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:booleanSwitch"} LoadBalancerEnabled bool `json:"loadBalancerEnabled,omitempty"` // Enable support for Service Discovery (Lighthouse). // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Enable Service Discovery" // +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:booleanSwitch"} ServiceDiscoveryEnabled bool `json:"serviceDiscoveryEnabled,omitempty"` BrokerK8sInsecure bool `json:"brokerK8sInsecure,omitempty"` // Halt on certificate error (so the pod gets restarted). // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Halt (and restart) on certificate error" // +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:booleanSwitch"} HaltOnCertificateError bool `json:"haltOnCertificateError,omitempty"` // Enable ClustersetIP default for services exported on this cluster. // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Enable ClustersetIP default" // +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:booleanSwitch"} // +optional ClustersetIPEnabled bool `json:"clustersetIPEnabled,omitempty"` // Name of the custom CoreDNS configmap to configure forwarding to Lighthouse. // It should be in <namespace>/<name> format where <namespace> is optional and defaults to kube-system. // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="CoreDNS Custom Config" // +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:advanced"} CoreDNSCustomConfig *CoreDNSCustomConfig `json:"coreDNSCustomConfig,omitempty"` // List of domains to use for multi-cluster service discovery. // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Custom Domains" // +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:advanced"} // +listType=set CustomDomains []string `json:"customDomains,omitempty"` // Override component images. // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Image Overrides" //nolint:lll // Markers can't be wrapped // +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:hidden","urn:alm:descriptor:com.tectonic.ui:advanced"} ImageOverrides map[string]string `json:"imageOverrides,omitempty"` // The gateway connection health check. // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Connection Health Check" // +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:advanced"} // +optional ConnectionHealthCheck *HealthCheckSpec `json:"connectionHealthCheck,omitempty"` // +optional NodeSelector map[string]string `json:"nodeSelector,omitempty"` // +optional Tolerations []corev1.Toleration `json:"tolerations,omitempty"` }
SubmarinerSpec defines the desired state of Submariner.
func (*SubmarinerSpec) DeepCopy ¶
func (in *SubmarinerSpec) DeepCopy() *SubmarinerSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubmarinerSpec.
func (*SubmarinerSpec) DeepCopyInto ¶
func (in *SubmarinerSpec) DeepCopyInto(out *SubmarinerSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SubmarinerStatus ¶
type SubmarinerStatus struct { // The current NAT status. // +operator-sdk:csv:customresourcedefinitions:type=status,displayName="NAT Enabled" // +operator-sdk:csv:customresourcedefinitions:type=status,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"} NatEnabled bool `json:"natEnabled"` AirGappedDeployment bool `json:"airGappedDeployment,omitempty"` ColorCodes string `json:"colorCodes,omitempty"` // The current cluster ID. // +operator-sdk:csv:customresourcedefinitions:type=status,displayName="Cluster ID" // +operator-sdk:csv:customresourcedefinitions:type=status,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"} ClusterID string `json:"clusterID"` // The current service CIDR. // +operator-sdk:csv:customresourcedefinitions:type=status,displayName="Service CIDR" // +operator-sdk:csv:customresourcedefinitions:type=status,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"} ServiceCIDR string `json:"serviceCIDR,omitempty"` // The current cluster CIDR. // +operator-sdk:csv:customresourcedefinitions:type=status,displayName="Cluster CIDR" // +operator-sdk:csv:customresourcedefinitions:type=status,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"} ClusterCIDR string `json:"clusterCIDR,omitempty"` // The current global CIDR. // +operator-sdk:csv:customresourcedefinitions:type=status,displayName="Global CIDR" // +operator-sdk:csv:customresourcedefinitions:type=status,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"} GlobalCIDR string `json:"globalCIDR,omitempty"` // The current clustersetIP CIDR. // +operator-sdk:csv:customresourcedefinitions:type=status,displayName="ClustersetIP CIDR" // +operator-sdk:csv:customresourcedefinitions:type=status,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"} ClustersetIPCIDR string `json:"clustersetIPCIDR,omitempty"` // The current network plugin. // +operator-sdk:csv:customresourcedefinitions:type=status,displayName="Network Plugin" // +operator-sdk:csv:customresourcedefinitions:type=status,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"} NetworkPlugin string `json:"networkPlugin,omitempty"` // The status of the gateway DaemonSet. // +operator-sdk:csv:customresourcedefinitions:type=status,displayName="Gateway DaemonSet Status" GatewayDaemonSetStatus DaemonSetStatusWrapper `json:"gatewayDaemonSetStatus,omitempty"` // The status of the route agent DaemonSet. // +operator-sdk:csv:customresourcedefinitions:type=status,displayName="Route Agent DaemonSet Status" RouteAgentDaemonSetStatus DaemonSetStatusWrapper `json:"routeAgentDaemonSetStatus,omitempty"` // The status of the Globalnet DaemonSet. // +operator-sdk:csv:customresourcedefinitions:type=status,displayName="Globalnet DaemonSet Status" GlobalnetDaemonSetStatus DaemonSetStatusWrapper `json:"globalnetDaemonSetStatus,omitempty"` // The status of the load balancer DaemonSet. // +operator-sdk:csv:customresourcedefinitions:type=status,displayName="Load Balancer DaemonSet Status" LoadBalancerStatus LoadBalancerStatusWrapper `json:"loadBalancerStatus,omitempty"` // Status of the gateways in the cluster. // +operator-sdk:csv:customresourcedefinitions:type=status,displayName="Gateways" Gateways *[]submv1.GatewayStatus `json:"gateways,omitempty"` // Information about the deployment. // +operator-sdk:csv:customresourcedefinitions:type=status,displayName="Deployment Information" DeploymentInfo DeploymentInfo `json:"deploymentInfo,omitempty"` // The image version in use by the various Submariner DaemonSets and Deployments. // +operator-sdk:csv:customresourcedefinitions:type=status,displayName="Version" Version string `json:"version,omitempty"` }
SubmarinerStatus defines the observed state of Submariner.
func (*SubmarinerStatus) DeepCopy ¶
func (in *SubmarinerStatus) DeepCopy() *SubmarinerStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubmarinerStatus.
func (*SubmarinerStatus) DeepCopyInto ¶
func (in *SubmarinerStatus) DeepCopyInto(out *SubmarinerStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.