v1alpha1

package
v0.0.0-...-d7a79bd Latest Latest
Warning

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

Go to latest
Published: Apr 21, 2024 License: MIT Imports: 5 Imported by: 0

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the gameserver v1alpha1 API group +kubebuilder:object:generate=true +groupName=gameserver.idebeijer.github.io

Index

Constants

This section is empty.

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "gameserver.idebeijer.github.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
)

Functions

This section is empty.

Types

type GameConfigSource

type GameConfigSource struct {

	// Config is the game config
	Config *string `json:"config,omitempty"`

	// ExistingConfigMap is a reference to a ConfigMap containing the game config
	// If this is set, Config is ignored
	ExistingConfigMap *v1.ConfigMapKeySelector `json:"existingConfigMap,omitempty"`

	// MountPath is the path to mount the config file
	MountPath *string `json:"mountPath,omitempty"`
}

func (*GameConfigSource) DeepCopy

func (in *GameConfigSource) DeepCopy() *GameConfigSource

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

func (*GameConfigSource) DeepCopyInto

func (in *GameConfigSource) DeepCopyInto(out *GameConfigSource)

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

type GameServer

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

	Spec   GameServerSpec   `json:"spec,omitempty"`
	Status GameServerStatus `json:"status,omitempty"`
}

GameServer is the Schema for the gameservers API

func (*GameServer) DeepCopy

func (in *GameServer) DeepCopy() *GameServer

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

func (*GameServer) DeepCopyInto

func (in *GameServer) DeepCopyInto(out *GameServer)

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

func (*GameServer) DeepCopyObject

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

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

type GameServerDataPVC

type GameServerDataPVC struct {
	// Enabled is a flag to enable or disable the PVC
	// +kubebuilder:default=true
	Enabled *bool `json:"enabled,omitempty"`

	// Name is the name of the PVC
	Name *string `json:"name,omitempty"`

	// Resources represents the minimum resources the volume should have.
	// More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
	Resources v1.ResourceRequirements `json:"resources,omitempty"`

	// StorageClassName is the name of the StorageClass required by the claim.
	// More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1
	StorageClassName *string `json:"storageClassName,omitempty"`

	// Selector is the label selector for the PVC
	Selector *metav1.LabelSelector `json:"selector,omitempty"`
}

func (*GameServerDataPVC) DeepCopy

func (in *GameServerDataPVC) DeepCopy() *GameServerDataPVC

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

func (*GameServerDataPVC) DeepCopyInto

func (in *GameServerDataPVC) DeepCopyInto(out *GameServerDataPVC)

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

type GameServerList

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

GameServerList contains a list of GameServer

func (*GameServerList) DeepCopy

func (in *GameServerList) DeepCopy() *GameServerList

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

func (*GameServerList) DeepCopyInto

func (in *GameServerList) DeepCopyInto(out *GameServerList)

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

func (*GameServerList) DeepCopyObject

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

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

type GameServerSpec

type GameServerSpec struct {

	// Image is the container image to run
	Image *string `json:"image"`

	// LinuxGSMConfig is the LinuxGSM configuration
	LinuxGSMConfig *LinuxGSMConfigSource `json:"linuxGSMConfig,omitempty"`

	// GameConfigs is a list of game configs
	GameConfigs []GameConfigSource `json:"gameConfigs,omitempty"`

	// Ports is a list of ports to expose
	Ports []v1.ContainerPort `json:"ports,omitempty"`

	// GameServerDataPVC is the spec for the persistent volume claim
	GameServerDataPVC *GameServerDataPVC `json:"gameServerDataPVC,omitempty"`

	// UseHostNetwork is a flag to use the host network of the node, recommended for game servers but turned off by default
	// +kubebuilder:default=false
	UseHostNetwork *bool `json:"useHostNetwork,omitempty"`

	// AdditionalVolumes is a list of additional volumes to mount
	AdditionalVolumes []v1.Volume `json:"additionalVolumes,omitempty"`

	// AdditionalVolumeMounts is a list of additional volume mounts
	AdditionalVolumeMounts []v1.VolumeMount `json:"additionalVolumeMounts,omitempty"`
}

GameServerSpec defines the desired state of GameServer

func (*GameServerSpec) DeepCopy

func (in *GameServerSpec) DeepCopy() *GameServerSpec

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

func (*GameServerSpec) DeepCopyInto

func (in *GameServerSpec) DeepCopyInto(out *GameServerSpec)

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

type GameServerStatus

type GameServerStatus struct {
	Conditions []metav1.Condition `json:"conditions,omitempty"`
}

GameServerStatus defines the observed state of GameServer

func (*GameServerStatus) DeepCopy

func (in *GameServerStatus) DeepCopy() *GameServerStatus

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

func (*GameServerStatus) DeepCopyInto

func (in *GameServerStatus) DeepCopyInto(out *GameServerStatus)

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

type LinuxGSMConfigSource

type LinuxGSMConfigSource struct {
	// Config is the LinuxGSM config
	Config *string `json:"config,omitempty"`

	// ExistingConfigMap is a reference to a ConfigMap containing the LinuxGSM config
	// If this is set, Config is ignored
	ExistingConfigMap *v1.ConfigMapKeySelector `json:"existingConfigMap,omitempty"`
}

func (*LinuxGSMConfigSource) DeepCopy

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

func (*LinuxGSMConfigSource) DeepCopyInto

func (in *LinuxGSMConfigSource) DeepCopyInto(out *LinuxGSMConfigSource)

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