v1beta1

package
v0.0.0-...-5bc2bc5 Latest Latest
Warning

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

Go to latest
Published: May 4, 2021 License: MIT Imports: 4 Imported by: 0

Documentation

Overview

Package v1beta1 contains API Schema definitions for the valheim v1beta1 API group +kubebuilder:object:generate=true +groupName=valheim.zingerweb.services

Index

Constants

This section is empty.

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "valheim.zingerweb.services", 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 AWS

type AWS struct {
	// Region of the EC2 instance.
	//+kubebuilder:validation:MinLength=1
	//+kubebuilder:validation:Pattern=`^[a-z]{2}-[a-z]{4,}-\d$`
	Region string `json:"region"`

	// Advertised domain of the server. Must live in Route53.
	//+kubebuilder:validation:MinLength=1
	//+kubebuilder:validation:Pattern=`^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$`
	Domain string `json:"domain"`

	// Name of a Secret containing the keys "accessKeyId" and "secretAccessKey".
	//+kubebuilder:validation:MinLength=1
	//+kubebuilder:validation:Pattern=`^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$`
	CredentialSecretName string `json:"credentialSecretName"`

	// Name of a Secret containing the private key for connecting to the EC2 instance.
	//+kubebuilder:validation:MinLength=1
	//+kubebuilder:validation:Pattern=`^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$`
	PrivateKeySecretName string `json:"privateKeySecretName"`

	// EC2 instance ID.
	//+kubebuilder:validation:MinLength=1
	//+kubebuilder:validation:Pattern=`^i-[a-z0-9]{17}$`
	InstanceID string `json:"instanceID"`
}

func (*AWS) DeepCopy

func (in *AWS) DeepCopy() *AWS

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

func (*AWS) DeepCopyInto

func (in *AWS) DeepCopyInto(out *AWS)

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

type K8sDeployment

type K8sDeployment struct {
	// Name of the Deployment for the Valheim server.
	Name string `json:"name"`

	// Name of the volume within the "volumes" field of the Deployment spec. (Not necessarily the
	// name of the PersistentVolumeClaim.)
	//+kubebuilder:default=gamefiles
	//+optional
	GameFilesVolumeName string `json:"gameFilesVolumeName,omitempty"`
}

func (*K8sDeployment) DeepCopy

func (in *K8sDeployment) DeepCopy() *K8sDeployment

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

func (*K8sDeployment) DeepCopyInto

func (in *K8sDeployment) DeepCopyInto(out *K8sDeployment)

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

type Phase

type Phase string
const (
	PhaseReady       Phase = "Ready"
	PhaseError       Phase = "Error"
	PhaseScalingUp   Phase = "ScalingUp"
	PhaseScalingDown Phase = "ScalingDown"
)

type ValheimVerticalScaler

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

	Spec   ValheimVerticalScalerSpec   `json:"spec,omitempty"`
	Status ValheimVerticalScalerStatus `json:"status,omitempty"`
}

ValheimVerticalScaler is the Schema for the valheimverticalscalers API

func (*ValheimVerticalScaler) DeepCopy

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

func (*ValheimVerticalScaler) DeepCopyInto

func (in *ValheimVerticalScaler) DeepCopyInto(out *ValheimVerticalScaler)

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

func (*ValheimVerticalScaler) DeepCopyObject

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

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

type ValheimVerticalScalerList

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

ValheimVerticalScalerList contains a list of ValheimVerticalScaler

func (*ValheimVerticalScalerList) DeepCopy

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

func (*ValheimVerticalScalerList) DeepCopyInto

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

func (*ValheimVerticalScalerList) DeepCopyObject

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

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

type ValheimVerticalScalerSpec

type ValheimVerticalScalerSpec struct {

	// Desired state of the vertical scaler.
	//+kubebuilder:validation:Enum=Down;Up
	//+kubebuilder:default=Down
	//+optional
	Scale string `json:"scale,omitempty"`

	// Configuration pertaining to AWS.
	AWS AWS `json:"aws"`

	// Configuration pertaining to the Valheim server Deployment in the local Kubernetes cluster.
	K8sDeployment K8sDeployment `json:"k8sDeployment"`
}

ValheimVerticalScalerSpec defines the desired state of ValheimVerticalScaler

func (*ValheimVerticalScalerSpec) DeepCopy

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

func (*ValheimVerticalScalerSpec) DeepCopyInto

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

type ValheimVerticalScalerStatus

type ValheimVerticalScalerStatus struct {

	// Basic state of the Valheim server.
	//+kubebuilder:validation:Enum=Ready;Error;ScalingUp;ScalingDown
	//+optional
	Phase Phase `json:"phase,omitempty"`

	// Human readable error message if the scaling has reached an error end state.
	//+optional
	Error string `json:"error,omitempty"`

	// The generation of the ValheimVerticalScaler object that this status is for.
	//+optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
}

ValheimVerticalScalerStatus defines the observed state of ValheimVerticalScaler

func (*ValheimVerticalScalerStatus) DeepCopy

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

func (*ValheimVerticalScalerStatus) DeepCopyInto

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