v1alpha1

package
v0.0.0-...-d19b7bc Latest Latest
Warning

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

Go to latest
Published: Nov 4, 2022 License: MIT Imports: 17 Imported by: 0

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the opensearch v1alpha1 API group +kubebuilder:object:generate=true +groupName=opensearch.k8s.webcenter.fr

Index

Constants

This section is empty.

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "opensearch.k8s.webcenter.fr", 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 AntiAffinitySpec

type AntiAffinitySpec struct {

	// Type permit to set anti affinity as soft or hard
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	Type string `json:"type,omitempty"`

	// TopologyKey is the topology key to use
	// Default to topology.kubernetes.io/zone
	// +optional
	TopologyKey string `json:"topologyKey,omitempty"`
}

func (*AntiAffinitySpec) DeepCopy

func (in *AntiAffinitySpec) DeepCopy() *AntiAffinitySpec

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

func (*AntiAffinitySpec) DeepCopyInto

func (in *AntiAffinitySpec) DeepCopyInto(out *AntiAffinitySpec)

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

type EndpointSpec

type EndpointSpec struct {
	// Ingress permit to set ingress settings
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Ingress *IngressSpec `json:"ingress,omitempty"`

	// Load balancer permit to set load balancer settings
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	LoadBalancer *LoadBalancerSpec `json:"loadBalancer,omitempty"`
}

func (*EndpointSpec) DeepCopy

func (in *EndpointSpec) DeepCopy() *EndpointSpec

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

func (*EndpointSpec) DeepCopyInto

func (in *EndpointSpec) DeepCopyInto(out *EndpointSpec)

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

type GlobalNodeGroupSpec

type GlobalNodeGroupSpec struct {

	// AdditionalVolumes permit to use additionnal volumes
	// Default is empty
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	AdditionalVolumes []*VolumeSpec `json:"additionalVolumes,omitempty"`

	// AntiAffinity permit to set anti affinity policy
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	AntiAffinity *AntiAffinitySpec `json:"antiAffinity,omitempty"`

	// PodDisruptionBudget is the pod disruption budget policy
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	PodDisruptionBudgetSpec *policyv1.PodDisruptionBudgetSpec `json:"podDisruptionBudget,omitempty"`

	// InitContainerResources permit to set resources on init containers
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	InitContainerResources *corev1.ResourceRequirements `json:"initContainerResources,omitempty"`

	// PodTemplate is merged with expected pod
	// It usefull to add some extra properties on pod spec
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	PodTemplate *corev1.PodTemplateSpec `json:"podTemplate,omitempty"`

	// Jvm permit to set extra option on JVM like memory or proxy to download plugins
	// Becarefull with memory, not forget to set the right ressource on pod
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Jvm string `json:"jvm,omitempty"`

	// Config is the Opensearch config dedicated for this node groups like roles
	// The key is the file stored on opensearch/config
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Config map[string]string `json:"config,omitempty"`

	// SecurityRef is the secret that store the security settings
	SecurityRef string `json:"securityRef,omitempty"`

	// Labels permit to set labels on containers
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Labels map[string]string `json:"labels,omitempty"`

	// Annotations permit to set annotation on containers
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Annotations map[string]string `json:"annotations,omitempty"`

	// Env permit to set some environment variable on containers
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Env []corev1.EnvVar `json:"env,omitempty"`

	// EnvFrom permit to set some environment variable from config map or secret
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	EnvFrom []corev1.EnvFromSource `json:"envFrom,omitempty"`
}

func (*GlobalNodeGroupSpec) DeepCopy

func (in *GlobalNodeGroupSpec) DeepCopy() *GlobalNodeGroupSpec

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

func (*GlobalNodeGroupSpec) DeepCopyInto

func (in *GlobalNodeGroupSpec) DeepCopyInto(out *GlobalNodeGroupSpec)

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

type IngressSpec

type IngressSpec struct {

	// Enabled permit to enabled / disabled ingress
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Enabled bool `json:"enabled,omitempty"`

	// TargetNodeGroupName permit to define if specific node group is responsible to receive external access, like ingest nodes
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	TargetNodeGroupName string `json:"targetNodeGroupName,omitempty"`

	// Host is the hostname to access on Opensearch
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	Host string `json:"host,omitempty"`

	// SecretRef is the secret ref that store certificates
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	SecretRef string `json:"secretRef,omitempty"`

	// Labels to set in ingress
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Labels map[string]string `json:"labels,omitempty"`

	// Annotations to set in ingress
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Annotations map[string]string `json:"annotations,omitempty"`

	// IngressSpec it merge with expected ingress spec
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	IngressSpec *networkingv1.IngressSpec `json:"ingressSpec,omitempty"`
}

func (*IngressSpec) DeepCopy

func (in *IngressSpec) DeepCopy() *IngressSpec

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

func (*IngressSpec) DeepCopyInto

func (in *IngressSpec) DeepCopyInto(out *IngressSpec)

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

type LoadBalancerSpec

type LoadBalancerSpec struct {
	// Enabled permit to enabled / disabled load balancer
	// Cloud provider need to support it
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Enabled bool `json:"enabled,omitempty"`

	// TargetNodeGroupName permit to define if specific node group is responsible to receive external access, like ingest nodes
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	TargetNodeGroupName string `json:"targetNodeGroupName,omitempty"`

	// Tls permit to set TLS endpoint spec
	Tls *TlsSpec `json:"tls,omitempty"`
}

func (*LoadBalancerSpec) DeepCopy

func (in *LoadBalancerSpec) DeepCopy() *LoadBalancerSpec

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

func (*LoadBalancerSpec) DeepCopyInto

func (in *LoadBalancerSpec) DeepCopyInto(out *LoadBalancerSpec)

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

type NodeGroupSpec

type NodeGroupSpec struct {

	// Name is the the node group name
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	Name string `json:"name,omitempty"`

	// Replicas is the number of replicas
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	Replicas int32 `json:"replicas,omitempty"`

	// Roles is the list of Opensearch roles
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	Roles []string `json:"roles,omitempty"`

	// Persistence is the spec to persist data
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Persistence *PersistenceSpec `json:"persistence,omitempty"`

	// AntiAffinity permit to set anti affinity policy
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	AntiAffinity *AntiAffinitySpec `json:"antiAffinity,omitempty"`

	// Resources permit to set ressources on Opensearch container
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Resources *corev1.ResourceRequirements `json:"resources,omitempty"`

	// Jvm permit to set extra option on JVM like proxy to download plugins
	// Not set Xmx or Xms. It's automatically computed from Opensearch container resources
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Jvm string `json:"jvm,omitempty"`

	// Config is the Opensearch config dedicated for this node groups
	// The key is the file stored on opensearch/config
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Config map[string]string `json:"config,omitempty"`

	// SecurityRef is the secret that store the security settings
	SecurityRef string `json:"securityRef,omitempty"`

	// Tolerations permit to set toleration on pod
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Tolerations []corev1.Toleration `json:"tolerations,omitempty"`

	// NodeSelector permit to set node selector on pod
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	NodeSelector map[string]string `json:"nodeSelector,omitempty"`

	// Labels permit to set labels on containers
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Labels map[string]string `json:"labels,omitempty"`

	// Annotations permit to set annotation on containers
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Annotations map[string]string `json:"annotations,omitempty"`

	// Env permit to set some environment variable on containers
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Env []corev1.EnvVar `json:"env,omitempty"`

	// EnvFrom permit to set some environment variable from config map or secret
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	EnvFrom []corev1.EnvFromSource `json:"envFrom,omitempty"`

	// PodSpec is merged with expected pod
	// It usefull to add some extra properties on pod spec
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	PodTemplate *corev1.PodTemplateSpec `json:"podSpec,omitempty"`

	// PodDisruptionBudget is the pod disruption budget policy
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	PodDisruptionBudgetSpec *policyv1.PodDisruptionBudgetSpec `json:"podDisruptionBudget,omitempty"`
}

func (*NodeGroupSpec) DeepCopy

func (in *NodeGroupSpec) DeepCopy() *NodeGroupSpec

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

func (*NodeGroupSpec) DeepCopyInto

func (in *NodeGroupSpec) DeepCopyInto(out *NodeGroupSpec)

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

type Opensearch

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

	Spec   OpensearchSpec   `json:"spec,omitempty"`
	Status OpensearchStatus `json:"status,omitempty"`
}

Opensearch is the Schema for the opensearches API +operator-sdk:csv:customresourcedefinitions:resources={{None,None,None}} +kubebuilder:printcolumn:name="URL",type="string",JSONPath=".status.url" +kubebuilder:printcolumn:name="CredentialsRef",type="string",JSONPath=".status.credentialsRef" +kubebuilder:printcolumn:name="Phase",type="string",JSONPath=".status.phase",description="Cluster deployment status" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp"

func (*Opensearch) DeepCopy

func (in *Opensearch) DeepCopy() *Opensearch

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

func (*Opensearch) DeepCopyInto

func (in *Opensearch) DeepCopyInto(out *Opensearch)

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

func (*Opensearch) DeepCopyObject

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

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

func (*Opensearch) GenerateConfigMaps

func (h *Opensearch) GenerateConfigMaps() (configMaps []*corev1.ConfigMap, err error)

GenerateConfigMaps permit to generate config maps for each node Groups

func (*Opensearch) GenerateIngress

func (h *Opensearch) GenerateIngress() (ingress *networkingv1.Ingress, err error)

GenerateIngress permit to generate Ingress object It return error if ingress spec is not provided It return nil if ingress is disabled

func (*Opensearch) GenerateLoadbalancer

func (h *Opensearch) GenerateLoadbalancer() (service *corev1.Service, err error)

GenerateLoadbalancer permit to generate Loadbalancer throught service It return nil if Loadbalancer is disabled

func (*Opensearch) GeneratePodDisruptionBudget

func (h *Opensearch) GeneratePodDisruptionBudget() (podDisruptionBudgets []*policyv1.PodDisruptionBudget, err error)

GeneratePodDisruptionBudget permit to generate pod disruption budgets for each node group

func (*Opensearch) GenerateServices

func (h *Opensearch) GenerateServices() (services []*corev1.Service, err error)

GenerateServices permit to generate services It generate one for all cluster and for each node group For each node groups, it also generate headless services

func (*Opensearch) GenerateStatefullsets

func (h *Opensearch) GenerateStatefullsets() (statefullsets []*appv1.StatefulSet, err error)

GenerateStatefullsets permit to generate statefullsets for each node groups

func (*Opensearch) GetContainerImage

func (h *Opensearch) GetContainerImage() string

GetContainerImage permit to get the image name

func (*Opensearch) GetGlobalServiceName

func (h *Opensearch) GetGlobalServiceName() (serviceName string)

GetGlobalServiceName permit to get the global service name

func (*Opensearch) GetNodeGroupConfigMapName

func (h *Opensearch) GetNodeGroupConfigMapName(nodeGroupName string) (configMapName string)

GetConfigMapNameForConfig permit to get the configMap name that store the config of Opensearch

func (*Opensearch) GetNodeGroupName

func (h *Opensearch) GetNodeGroupName(nodeGroupName string) (name string)

GetNodeGroupName permit to get the node group name

func (*Opensearch) GetNodeGroupNodeNames

func (h *Opensearch) GetNodeGroupNodeNames(nodeGroup *NodeGroupSpec) (nodeNames []string)

GetNodeGroupNodeNames permit to get node names that composed the node group

func (*Opensearch) GetNodeGroupPDBName

func (h *Opensearch) GetNodeGroupPDBName(nodeGroupName string) (serviceName string)

func (*Opensearch) GetNodeGroupServiceName

func (h *Opensearch) GetNodeGroupServiceName(nodeGroupName string) (serviceName string)

GetNodeGroupServiceName permit to get the service name for specified node group name

func (*Opensearch) GetNodeGroupServiceNameHeadless

func (h *Opensearch) GetNodeGroupServiceNameHeadless(nodeGroupName string) (serviceName string)

GetNodeGroupServiceNameHeadless permit to get the service name headless for specified node group name

func (*Opensearch) GetNodeNames

func (h *Opensearch) GetNodeNames() (nodeNames []string)

GetNodeNames permit to get all nodes names It return the list with all node names (DNS / pod name)

func (*Opensearch) GetSecretNameForAdminCredentials

func (h *Opensearch) GetSecretNameForAdminCredentials() (secretName string)

GetSecretNameForAdminCredentials permit to get the secret name that store the admin credentials

func (*Opensearch) GetSecretNameForSecurityConfig

func (h *Opensearch) GetSecretNameForSecurityConfig(nodeGroup *NodeGroupSpec) (secretName string)

GetSecretNameForSecurityConfig permit to get the secret name that store the security config of Opensearch It use the secret declared on node group. If empty, it use secret declared on global node group

func (*Opensearch) GetSecretNameForTlsApi

func (h *Opensearch) GetSecretNameForTlsApi() (secretName string)

GetSecretNameForTlsApi permit to get the secret name that store all certificates for Api layout (Http endpoint) It return the secret name as string

func (*Opensearch) GetSecretNameForTlsTransport

func (h *Opensearch) GetSecretNameForTlsTransport() (secretName string)

GetSecretNameForTlsTransport permit to get the secret name that store all certificates for transport layout It return the secret name as string

func (*Opensearch) IsIngressEnabled

func (h *Opensearch) IsIngressEnabled() bool

IsIngressEnabled return true if ingress is enabled

func (*Opensearch) IsLoadBalancerEnabled

func (h *Opensearch) IsLoadBalancerEnabled() bool

IsLoadBalancerEnabled return true if LoadBalancer is enabled

func (*Opensearch) IsMasterRole

func (h *Opensearch) IsMasterRole(nodeGroup *NodeGroupSpec) bool

isMasterRole return true if nodegroup have `cluster_manager` role

func (*Opensearch) IsSelfManagedSecretForTlsApi

func (h *Opensearch) IsSelfManagedSecretForTlsApi() bool

IsSelfManagedSecretForTlsApi return true if the operator manage the certificates for Api layout It return false if secret is provided

type OpensearchList

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

OpensearchList contains a list of Opensearch

func (*OpensearchList) DeepCopy

func (in *OpensearchList) DeepCopy() *OpensearchList

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

func (*OpensearchList) DeepCopyInto

func (in *OpensearchList) DeepCopyInto(out *OpensearchList)

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

func (*OpensearchList) DeepCopyObject

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

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

type OpensearchSpec

type OpensearchSpec struct {
	shared.ImageSpec `json:",inline"`

	// Version is the Opensearch version to use
	// Default is use the latest
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Version string `json:"version,omitempty"`

	// SetVMMaxMapCount permit to set the right value for VMMaxMapCount on node
	// It need to run pod as root with privileged option
	// Default is true
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	SetVMMaxMapCount *bool `json:"setVMMaxMapCount,omitempty"`

	// PluginsList is the list of additionnal plugin to install on each Opensearch node
	// Default is empty
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	PluginsList []string `json:"pluginsList,omitempty"`

	// GlobalNodeGroup permit to set some default parameters for each node groups
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	GlobalNodeGroup GlobalNodeGroupSpec `json:"globalNodeGroup,omitempty"`

	// NodeGroups permit to groups node per use case
	// For exemple master, data and ingest
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	NodeGroups []NodeGroupSpec `json:"nodeGroups,omitempty"`

	// Endpoint permit to set endpoints to access on Opensearch from external kubernetes
	// You can set ingress and / or load balancer
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Endpoint *EndpointSpec `json:"endpoint,omitempty"`
}

OpensearchSpec defines the desired state of Opensearch +k8s:openapi-gen=true

func (*OpensearchSpec) DeepCopy

func (in *OpensearchSpec) DeepCopy() *OpensearchSpec

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

func (*OpensearchSpec) DeepCopyInto

func (in *OpensearchSpec) DeepCopyInto(out *OpensearchSpec)

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

type OpensearchStatus

type OpensearchStatus struct {

	// Phase is the current cluster deployment phase
	Phase string `json:"phase"`

	// Url is the Opensearch endpoint
	Url string `json:"url"`

	CredentialsRef string `json:"credentialsRef"`

	// List of conditions
	// +operator-sdk:csv:customresourcedefinitions:type=status
	Conditions []metav1.Condition `json:"conditions"`
}

OpensearchStatus defines the observed state of Opensearch

func (*OpensearchStatus) DeepCopy

func (in *OpensearchStatus) DeepCopy() *OpensearchStatus

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

func (*OpensearchStatus) DeepCopyInto

func (in *OpensearchStatus) DeepCopyInto(out *OpensearchStatus)

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

type PersistenceSpec

type PersistenceSpec struct {
	// VolumeClaim is the persistent volume claim spec use by statefullset
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	VolumeClaimSpec *corev1.PersistentVolumeClaimSpec `json:"volumeClaim,omitempty"`

	// Volume is the volume source to use instead volumeClaim
	// It usefull if you should to use hostPath
	// +optional
	Volume *corev1.VolumeSource `json:"volume,omitempty"`
}

func (*PersistenceSpec) DeepCopy

func (in *PersistenceSpec) DeepCopy() *PersistenceSpec

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

func (*PersistenceSpec) DeepCopyInto

func (in *PersistenceSpec) DeepCopyInto(out *PersistenceSpec)

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

type SelfSignedCertificateSpec

type SelfSignedCertificateSpec struct {

	// AltIps permit to set subject alt names of type ip when generate certificate
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	AltIps []string `json:"altIPs:,omitempty"`

	// AltNames permit to set subject alt names of type dns when generate certificate
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	AltNames []string `json:"altNames:,omitempty"`
}

func (*SelfSignedCertificateSpec) DeepCopy

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

func (*SelfSignedCertificateSpec) DeepCopyInto

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

type TlsSpec

type TlsSpec struct {

	// SelfSignedCertificate permit to set self signed certificate settings
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	SelfSignedCertificate *SelfSignedCertificateSpec `json:"selfSignedCertificate,omitempty"`

	// CertificateSecretRef is the secret that store your custom certificates.
	// It need to have the following keys: tls.key, tls.crt and optionally ca.crt
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	CertificateSecretRef string `json:"certificateSecretRef,omitempty"`
}

func (*TlsSpec) DeepCopy

func (in *TlsSpec) DeepCopy() *TlsSpec

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

func (*TlsSpec) DeepCopyInto

func (in *TlsSpec) DeepCopyInto(out *TlsSpec)

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

type VolumeSpec

type VolumeSpec struct {

	// Name is the volume name
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	Name string `json:"name,omitempty"`

	corev1.VolumeMount `json:",inline"`

	corev1.VolumeSource `json:",inline"`
}

func (*VolumeSpec) DeepCopy

func (in *VolumeSpec) DeepCopy() *VolumeSpec

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

func (*VolumeSpec) DeepCopyInto

func (in *VolumeSpec) DeepCopyInto(out *VolumeSpec)

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