v1alpha1

package
v1.2.0-alpha.2 Latest Latest
Warning

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

Go to latest
Published: Oct 31, 2023 License: Apache-2.0 Imports: 4 Imported by: 0

Documentation

Overview

Package v1alpha1 is the v1alpha1 version of the API.

Index

Constants

This section is empty.

Variables

View Source
var (
	// SchemeGroupVersion is group version used to register MeshConfig
	SchemeGroupVersion = schema.GroupVersion{
		Group:   "flomesh.io",
		Version: "v1alpha1",
	}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)

	// AddToScheme adds all Resources to the Scheme
	AddToScheme = SchemeBuilder.AddToScheme
)

Functions

func Kind

func Kind(kind string) schema.GroupKind

Kind takes an unqualified kind and returns back a Group qualified GroupKind

func Resource

func Resource(resource string) schema.GroupResource

Resource takes an unqualified resource and returns a Group qualified GroupResource

Types

type HTTP

type HTTP struct {

	// Enabled, if HTTP is enabled for the Ingress Controller
	// +optional
	Enabled bool `json:"enabled"`

	// Port, The http port that are exposed by this ingress service.
	Port corev1.ServicePort `json:"port,omitempty"`
}

HTTP defines the http configuration of this ingress controller.

func (*HTTP) DeepCopy

func (in *HTTP) DeepCopy() *HTTP

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

func (*HTTP) DeepCopyInto

func (in *HTTP) DeepCopyInto(out *HTTP)

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

type NamespacedIngress

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

	Spec   NamespacedIngressSpec   `json:"spec,omitempty"`
	Status NamespacedIngressStatus `json:"status,omitempty"`
}

NamespacedIngress is the Schema for the NamespacedIngresss API

func (*NamespacedIngress) DeepCopy

func (in *NamespacedIngress) DeepCopy() *NamespacedIngress

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

func (*NamespacedIngress) DeepCopyInto

func (in *NamespacedIngress) DeepCopyInto(out *NamespacedIngress)

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

func (*NamespacedIngress) DeepCopyObject

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

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

type NamespacedIngressList

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

NamespacedIngressList contains a list of NamespacedIngress

func (*NamespacedIngressList) DeepCopy

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

func (*NamespacedIngressList) DeepCopyInto

func (in *NamespacedIngressList) DeepCopyInto(out *NamespacedIngressList)

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

func (*NamespacedIngressList) DeepCopyObject

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

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

type NamespacedIngressSpec

type NamespacedIngressSpec struct {
	// ServiceType determines how the Ingress is exposed. For an Ingress
	//   the most used types are NodePort, and LoadBalancer
	ServiceType corev1.ServiceType `json:"serviceType,omitempty"`

	// ServiceAnnotations, those annotations are applied to Ingress Service
	// +optional
	ServiceAnnotations map[string]string `json:"serviceAnnotations,omitempty"`

	// ServiceLabels, those annotations are applied to Ingress Service
	// +optional
	ServiceLabels map[string]string `json:"serviceLabels,omitempty"`

	// PodAnnotations, those annotations are applied to Ingress POD
	// +optional
	PodAnnotations map[string]string `json:"podAnnotations,omitempty"`

	// PodAnnotations, those labels are applied to Ingress POD
	// +optional
	PodLabels map[string]string `json:"podLabels,omitempty"`

	// The http configuration of this ingress controller.
	// +optional
	HTTP HTTP `json:"http,omitempty"`

	// TLS is the configuration of TLS of this ingress controller
	// +optional
	TLS TLS `json:"tls,omitempty"`

	// List of environment variables to set in the ingress container.
	// Cannot be updated.
	// +optional
	Env []corev1.EnvVar `json:"env,omitempty"`

	// Compute Resources required by Ingress container.
	// Cannot be updated.
	// +optional
	Resources corev1.ResourceRequirements `json:"resources,omitempty"`

	// NodeSelector is a selector which must be true for the pod to fit on a node.
	// Selector which must match a node's labels for the pod to be scheduled on that node.
	// +optional
	// +mapType=atomic
	NodeSelector map[string]string `json:"nodeSelector,omitempty"`

	// ServiceAccountName is the name of the ServiceAccount to use to run this pod.
	// +optional
	ServiceAccountName string `json:"serviceAccountName,omitempty"`

	// If specified, the pod's scheduling constraints
	// +optional
	Affinity *corev1.Affinity `json:"affinity,omitempty"`

	// If specified, the pod's tolerations.
	// +optional
	Tolerations []corev1.Toleration `json:"tolerations,omitempty"`

	// LogLevel is the log level of this ingress controller pod.
	// +optional
	LogLevel *string `json:"logLevel,omitempty"`

	// Replicas, how many replicas of the ingress controller will be running for this namespace.
	// +optional
	Replicas *int32 `json:"replicas,omitempty"`

	// SecurityContext defines the security options the container should be run with.
	// If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext.
	// +optional
	SecurityContext *corev1.SecurityContext `json:"securityContext,omitempty"`

	// PodSecurityContext holds pod-level security attributes and common container settings.
	// Optional: Defaults to empty.  See type description for default values of each field.
	// +optional
	PodSecurityContext *corev1.PodSecurityContext `json:"podSecurityContext,omitempty"`
}

NamespacedIngressSpec defines the desired state of NamespacedIngress

func (*NamespacedIngressSpec) DeepCopy

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

func (*NamespacedIngressSpec) DeepCopyInto

func (in *NamespacedIngressSpec) DeepCopyInto(out *NamespacedIngressSpec)

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

type NamespacedIngressStatus

type NamespacedIngressStatus struct {
	Replicas int32  `json:"replicas"`
	Selector string `json:"selector"`
}

NamespacedIngressStatus defines the observed state of NamespacedIngress

func (*NamespacedIngressStatus) DeepCopy

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

func (*NamespacedIngressStatus) DeepCopyInto

func (in *NamespacedIngressStatus) DeepCopyInto(out *NamespacedIngressStatus)

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

type SSLPassthrough

type SSLPassthrough struct {

	// Enabled, if SSL passthrough is enabled for the Ingress Controller
	//  It's mutual exclusive with TLS offload/termination within the controller scope.
	// +optional
	Enabled bool `json:"enabled"`

	// UpstreamPort, is the port of upstream services.
	// +optional
	UpstreamPort *int32 `json:"upstreamPort"`
}

SSLPassthrough defines the SSLPassthrough configuration of this ingress controller.

func (*SSLPassthrough) DeepCopy

func (in *SSLPassthrough) DeepCopy() *SSLPassthrough

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

func (*SSLPassthrough) DeepCopyInto

func (in *SSLPassthrough) DeepCopyInto(out *SSLPassthrough)

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

type TLS

type TLS struct {

	// Enabled, if TLS is enabled for the Ingress Controller
	// +optional
	Enabled bool `json:"enabled"`

	// Port, The https port that are exposed by this ingress service.
	Port corev1.ServicePort `json:"port,omitempty"`

	// SSLPassthrough configuration
	// +optional
	SSLPassthrough SSLPassthrough `json:"sslPassthrough,omitempty"`
}

TLS defines the TLS configuration of this ingress controller.

func (*TLS) DeepCopy

func (in *TLS) DeepCopy() *TLS

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

func (*TLS) DeepCopyInto

func (in *TLS) DeepCopyInto(out *TLS)

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