v1alpha1

package
Version: v0.2.0 Latest Latest
Warning

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

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

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the lemming v1alpha1 API group +kubebuilder:object:generate=true +groupName=lemming.openconfig.net

Index

Constants

This section is empty.

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "lemming.openconfig.net", Version: "v1alpha1"}

	// SchemeGroupVersion is needed for client-gen
	SchemeGroupVersion = GroupVersion

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

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

	Spec   LemmingSpec   `json:"spec,omitempty"`
	Status LemmingStatus `json:"status,omitempty"`
}

Lemming is the Schema for the lemmings API

func (*Lemming) DeepCopy

func (in *Lemming) DeepCopy() *Lemming

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

func (*Lemming) DeepCopyInto

func (in *Lemming) DeepCopyInto(out *Lemming)

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

func (*Lemming) DeepCopyObject

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

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

type LemmingList

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

LemmingList contains a list of Lemming

func (*LemmingList) DeepCopy

func (in *LemmingList) DeepCopy() *LemmingList

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

func (*LemmingList) DeepCopyInto

func (in *LemmingList) DeepCopyInto(out *LemmingList)

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

func (*LemmingList) DeepCopyObject

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

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

type LemmingPhase

type LemmingPhase string

LemmingPhase is the overall status of the Lemming.

const (
	// Running indicates a successfully running lemming.
	Running LemmingPhase = "Running"
	// Failed indicates an error state.
	Failed LemmingPhase = "Failed"
	// Unknown indicates an unknown state.
	Unknown LemmingPhase = "Unknown"
	// Pending indicates a pending state.
	Pending LemmingPhase = "Pending"
)

type LemmingSpec

type LemmingSpec struct {
	// Image is the container image to run.
	Image string `json:"image,omitempty"`
	// Command is the name of the executable to run.
	Command string `json:"command,omitempty"`
	// Args are the args to pass to the command.
	Args []string `json:"args,omitempty"`
	// Env are the environment variables to set for the container.
	// +listType=map
	// +listMapKey=name
	Env []corev1.EnvVar `json:"env,omitempty"`
	// ConfigPath is the mount point for configuration inside the pod.
	ConfigPath string `json:"configPath,omitempty"`
	// ConfigFile is the default configuration file name for the pod.
	ConfigFile string `json:"configFile,omitempty"`
	// InitImage is the docker image to use as an init container for the pod.
	InitImage string `json:"initImage,omitempty"`
	// Ports are ports to create on the service.
	Ports map[string]ServicePort `json:"ports,omitempty"`
	// InterfaceCount is number of interfaces to be attached to the pod.
	// +optional
	InterfaceCount int `json:"interfaceCount"`
	// InitSleep is the time sleep in the init container
	// +optional
	InitSleep int `json:"initSleep"`
	// Resources are the K8s resources to allocate to lemming container.
	// +optional
	Resources corev1.ResourceRequirements `json:"resources"`
	// TLS is the configuration the key/certs to use for management.
	// +optional
	TLS *TLSSpec `json:"tls"`
}

LemmingSpec defines the desired state of Lemming.

func (*LemmingSpec) DeepCopy

func (in *LemmingSpec) DeepCopy() *LemmingSpec

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

func (*LemmingSpec) DeepCopyInto

func (in *LemmingSpec) DeepCopyInto(out *LemmingSpec)

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

type LemmingStatus

type LemmingStatus struct {
	// Phase is the overall status of the Lemming.
	Phase LemmingPhase `json:"phase"`
	// Message describes why the lemming is in the current phase.
	Message string `json:"message"`
}

LemmingStatus defines the observed state of Lemming

func (*LemmingStatus) DeepCopy

func (in *LemmingStatus) DeepCopy() *LemmingStatus

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

func (*LemmingStatus) DeepCopyInto

func (in *LemmingStatus) DeepCopyInto(out *LemmingStatus)

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

type SelfSignedSpec

type SelfSignedSpec struct {
	/// Common name to set in the cert.
	CommonName string `json:"commonName"`
	// RSA keysize to use for key generation.
	KeySize int `json:"keySize"`
}

SelfSignedSpec is the configuration to generate a self-signed cert.

func (*SelfSignedSpec) DeepCopy

func (in *SelfSignedSpec) DeepCopy() *SelfSignedSpec

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

func (*SelfSignedSpec) DeepCopyInto

func (in *SelfSignedSpec) DeepCopyInto(out *SelfSignedSpec)

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

type ServicePort

type ServicePort struct {
	// InnerPort is port on the container to expose.
	InnerPort int32 `json:"innerPort"`
	// OuterPort is port on the container to expose.
	OuterPort int32 `json:"outerPort"`
}

ServicePort describes an external L4 port on the device.

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 TLSSpec

type TLSSpec struct {
	// SelfSigned generates a new self signed certificate.
	// +optional
	SelfSigned *SelfSignedSpec `json:"selfSigned"`
}

TLSSpec is the configuration the key/certs to use for management.

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.

Jump to

Keyboard shortcuts

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