v1alpha2

package
v1.12.3 Latest Latest
Warning

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

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

Documentation

Overview

Package v1alpha2 contains API Schema definitions for the v1alpha2 API group +kubebuilder:object:generate=true +groupName=rig.dev

Index

Constants

This section is empty.

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "rig.dev", Version: "v1alpha2"}

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

func MaxAllowedCronJobName added in v1.5.2

func MaxAllowedCronJobName(capsuleName string) int

Types

type CPUTarget

type CPUTarget struct {
	// Utilization specifies the average CPU target. If the average
	// exceeds this number new instances will be added.
	//+kubebuilder:validation:Minimum=1
	//+kubebuilder:validation:Maximum=100
	Utilization *uint32 `json:"utilization,omitempty" protobuf:"1"`
}

CPUTarget defines an autoscaler target for the CPU metric If empty, no autoscaling will be done

func (*CPUTarget) DeepCopy

func (in *CPUTarget) DeepCopy() *CPUTarget

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

func (*CPUTarget) DeepCopyInto

func (in *CPUTarget) DeepCopyInto(out *CPUTarget)

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

type Capsule

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

	// Spec holds the specification of the Capsule.
	Spec CapsuleSpec `json:"spec,omitempty"`

	// Status holds the status of the Capsule
	Status *CapsuleStatus `json:"status,omitempty"`
}

Capsule is the Schema for the capsules API

func (*Capsule) DeepCopy

func (in *Capsule) DeepCopy() *Capsule

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

func (*Capsule) DeepCopyInto

func (in *Capsule) DeepCopyInto(out *Capsule)

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

func (*Capsule) DeepCopyObject

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

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

func (*Capsule) Default

func (r *Capsule) Default()

Default implements webhook.Defaulter so a webhook will be registered for the type

func (*Capsule) Hub

func (c *Capsule) Hub()

func (*Capsule) SetupWebhookWithManager

func (r *Capsule) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*Capsule) ValidateCreate

func (r *Capsule) ValidateCreate() (admission.Warnings, error)

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*Capsule) ValidateDelete

func (r *Capsule) ValidateDelete() (admission.Warnings, error)

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*Capsule) ValidateUpdate

func (r *Capsule) ValidateUpdate(_ runtime.Object) (admission.Warnings, error)

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type CapsuleInterface

type CapsuleInterface struct {
	// Name specifies a descriptive name of the interface.
	Name string `json:"name" protobuf:"1"`

	// Port specifies what port the interface should have.
	//+kubebuilder:validation:Minimum=1
	//+kubebuilder:validation:Maximum=65535
	Port int32 `json:"port" protobuf:"2"`

	// Liveness specifies that this interface should be used for
	// liveness probing. Only one of the Capsule interfaces can be
	// used as liveness probe.
	Liveness *InterfaceLivenessProbe `json:"liveness,omitempty" protobuf:"3"`

	// Readiness specifies that this interface should be used for
	// readiness probing. Only one of the Capsule interfaces can be
	// used as readiness probe.
	Readiness *InterfaceReadinessProbe `json:"readiness,omitempty" protobuf:"4"`

	// Public specifies if and how the interface should be published.
	Public *CapsulePublicInterface `json:"public,omitempty" protobuf:"5"`

	// Host routes that are mapped to this interface.
	Routes []HostRoute `json:"routes,omitempty" protobuf:"6"`
}

CapsuleInterface defines an interface for a capsule

func (*CapsuleInterface) DeepCopy

func (in *CapsuleInterface) DeepCopy() *CapsuleInterface

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

func (*CapsuleInterface) DeepCopyInto

func (in *CapsuleInterface) DeepCopyInto(out *CapsuleInterface)

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

type CapsuleInterfaceIngress

type CapsuleInterfaceIngress struct {
	// Host specifies the DNS name of the Ingress resource.
	Host string `json:"host" protobuf:"1"`

	// Paths specifies a list of paths. In order for a request to
	// hit the ingress at least one of these must match the request.
	Paths []string `json:"paths,omitempty" protobuf:"2"`
}

CapsuleInterfaceIngress defines that the interface should be exposed as http ingress

func (*CapsuleInterfaceIngress) DeepCopy

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

func (*CapsuleInterfaceIngress) DeepCopyInto

func (in *CapsuleInterfaceIngress) DeepCopyInto(out *CapsuleInterfaceIngress)

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

type CapsuleInterfaceLoadBalancer

type CapsuleInterfaceLoadBalancer struct {
	// Port is the external port on the LoadBalancer
	//+kubebuilder:validation:Minimum=1
	//+kubebuilder:validation:Maximum=65535
	Port int32 `json:"port" protobuf:"1"`
}

CapsuleInterfaceLoadBalancer defines that the interface should be exposed as a L4 loadbalancer

func (*CapsuleInterfaceLoadBalancer) DeepCopy

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

func (*CapsuleInterfaceLoadBalancer) DeepCopyInto

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

type CapsuleList

type CapsuleList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`

	Items []Capsule `json:"items"`
}

CapsuleList contains a list of Capsule

func (*CapsuleList) DeepCopy

func (in *CapsuleList) DeepCopy() *CapsuleList

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

func (*CapsuleList) DeepCopyInto

func (in *CapsuleList) DeepCopyInto(out *CapsuleList)

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

func (*CapsuleList) DeepCopyObject

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

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

type CapsulePublicInterface

type CapsulePublicInterface struct {
	// Ingress specifies that this interface should be exposed through an
	// Ingress resource. The Ingress field is mutually exclusive with the
	// LoadBalancer field.
	Ingress *CapsuleInterfaceIngress `json:"ingress,omitempty" protobuf:"1"`

	// LoadBalancer specifies that this interface should be exposed through a
	// LoadBalancer Service. The LoadBalancer field is mutually exclusive with
	// the Ingress field.
	LoadBalancer *CapsuleInterfaceLoadBalancer `json:"loadBalancer,omitempty" protobuf:"2"`
}

CapsulePublicInterface defines how to publicly expose the interface

func (*CapsulePublicInterface) DeepCopy

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

func (*CapsulePublicInterface) DeepCopyInto

func (in *CapsulePublicInterface) DeepCopyInto(out *CapsulePublicInterface)

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

type CapsuleScale

type CapsuleScale struct {
	// Horizontal specifies the horizontal scaling of the Capsule.
	Horizontal HorizontalScale `json:"horizontal,omitempty" protobuf:"1"`

	// Vertical specifies the vertical scaling of the Capsule.
	Vertical *VerticalScale `json:"vertical,omitempty" protobuf:"2"`
}

CapsuleScale specifies the horizontal and vertical scaling of the Capsule.

func (*CapsuleScale) DeepCopy

func (in *CapsuleScale) DeepCopy() *CapsuleScale

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

func (*CapsuleScale) DeepCopyInto

func (in *CapsuleScale) DeepCopyInto(out *CapsuleScale)

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

type CapsuleSpec

type CapsuleSpec struct {
	// Image specifies what image the Capsule should run.
	Image string `json:"image"`

	// Command is run as a command in the shell. If left unspecified, the
	// container will run using what is specified as ENTRYPOINT in the
	// Dockerfile.
	Command string `json:"command,omitempty"`

	// Args is a list of arguments either passed to the Command or if Command
	// is left empty the arguments will be passed to the ENTRYPOINT of the
	// docker image.
	Args []string `json:"args,omitempty"`

	// Interfaces specifies the list of interfaces the the container should
	// have. Specifying interfaces will create the corresponding kubernetes
	// Services and Ingresses depending on how the interface is configured.
	Interfaces []CapsuleInterface `json:"interfaces,omitempty"`

	// Files is a list of files to mount in the container. These can either be
	// based on ConfigMaps or Secrets.
	Files []File `json:"files,omitempty"`

	// Scale specifies the scaling of the Capsule.
	Scale CapsuleScale `json:"scale,omitempty"`

	// NodeSelector is a selector for what nodes the Capsule should live on.
	NodeSelector map[string]string `json:"nodeSelector,omitempty"`

	// Env specifies configuration for how the container should obtain
	// environment variables.
	Env Env `json:"env,omitempty"`

	CronJobs []CronJob `json:"cronJobs,omitempty"`

	// +kubebuilder:validation:Schemaless
	// +kubebuilder:pruning:PreserveUnknownFields
	// +kubebuilder:validation:Type=object
	// Extensions are extra, typed fields defined by the platform for custom behaviour implemented through plugins
	Extensions map[string]json.RawMessage `json:"extensions,omitempty"`
}

CapsuleSpec defines the desired state of Capsule

func (*CapsuleSpec) DeepCopy

func (in *CapsuleSpec) DeepCopy() *CapsuleSpec

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

func (*CapsuleSpec) DeepCopyInto

func (in *CapsuleSpec) DeepCopyInto(out *CapsuleSpec)

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

type CapsuleStatus

type CapsuleStatus struct {
	Replicas           uint32            `json:"replicas,omitempty"`
	ObservedGeneration int64             `json:"observedGeneration,omitempty"`
	OwnedResources     []OwnedResource   `json:"ownedResources,omitempty"`
	UsedResources      []UsedResource    `json:"usedResources,omitempty"`
	Deployment         *DeploymentStatus `json:"deploymentStatus,omitempty"`
	Errors             []string          `json:"errors,omitempty"`
}

CapsuleStatus defines the observed state of Capsule

func (*CapsuleStatus) DeepCopy

func (in *CapsuleStatus) DeepCopy() *CapsuleStatus

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

func (*CapsuleStatus) DeepCopyInto

func (in *CapsuleStatus) DeepCopyInto(out *CapsuleStatus)

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

type CronJob added in v1.5.2

type CronJob struct {
	// +kubebuilder:validation:Required
	Name string `json:"name" protobuf:"1"`
	// +kubebuilder:validation:Required
	Schedule string `json:"schedule" protobuf:"2"`

	URL     *URL        `json:"url,omitempty" protobuf:"3"`
	Command *JobCommand `json:"command,omitempty" protobuf:"4"`
	// Defaults to 6
	MaxRetries     *uint `json:"maxRetries,omitempty" protobuf:"5"`
	TimeoutSeconds *uint `json:"timeoutSeconds,omitempty" protobuf:"6"`
}

func (*CronJob) DeepCopy added in v1.5.2

func (in *CronJob) DeepCopy() *CronJob

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

func (*CronJob) DeepCopyInto added in v1.5.2

func (in *CronJob) DeepCopyInto(out *CronJob)

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

type CustomMetric

type CustomMetric struct {
	// InstanceMetric defines a custom instance-based metric (pod-metric in Kubernetes lingo)
	InstanceMetric *InstanceMetric `json:"instanceMetric,omitempty" protobuf:"1"`
	// ObjectMetric defines a custom object-based metric
	ObjectMetric *ObjectMetric `json:"objectMetric,omitempty" protobuf:"2"`
}

CustomMetric defines a custom metrics emitted by the custom.metrics.k8s.io API which the autoscaler should scale on Exactly one of InstanceMetric and ObjectMetric must be provided

func (*CustomMetric) DeepCopy

func (in *CustomMetric) DeepCopy() *CustomMetric

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

func (*CustomMetric) DeepCopyInto

func (in *CustomMetric) DeepCopyInto(out *CustomMetric)

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

type DeploymentStatus

type DeploymentStatus struct {
	// +kubebuilder:validation:Enum=created;failed
	State   string `json:"state,omitempty"`
	Message string `json:"message,omitempty"`
}

func (*DeploymentStatus) DeepCopy

func (in *DeploymentStatus) DeepCopy() *DeploymentStatus

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

func (*DeploymentStatus) DeepCopyInto

func (in *DeploymentStatus) DeepCopyInto(out *DeploymentStatus)

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

type Env

type Env struct {
	// DisableAutomatic sets wether the capsule should disable automatically use
	// of existing secrets and configmaps which share the same name as the capsule
	// as environment variables.
	DisableAutomatic bool `json:"disable_automatic,omitempty" protobuf:"1"`

	// From holds a list of references to secrets and configmaps which should
	// be mounted as environment variables.
	From []EnvReference `json:"from,omitempty" protobuf:"2"`
}

Env defines what secrets and configmaps should be used for environment variables in the capsule.

func (*Env) DeepCopy

func (in *Env) DeepCopy() *Env

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

func (*Env) DeepCopyInto

func (in *Env) DeepCopyInto(out *Env)

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

type EnvReference

type EnvReference struct {
	// Kind is the resource kind of the env reference, must be ConfigMap or Secret.
	Kind string `json:"kind"`
	// Name is the name of a ConfigMap or Secret in the same namespace as the Capsule.
	Name string `json:"name"`
}

EnvSource holds a reference to either a ConfigMap or a Secret

func (*EnvReference) DeepCopy

func (in *EnvReference) DeepCopy() *EnvReference

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

func (*EnvReference) DeepCopyInto

func (in *EnvReference) DeepCopyInto(out *EnvReference)

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

type File

type File struct {
	// Ref specifies a reference to a ConfigMap or Secret key which holds the contents of the file.
	Ref *FileContentReference `json:"ref,omitempty"`

	// Path specifies the full path where the File should be mounted including
	// the file name.
	Path string `json:"path"`
}

File defines a mounted file and where to retrieve the contents from

func (*File) DeepCopy

func (in *File) DeepCopy() *File

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

func (*File) DeepCopyInto

func (in *File) DeepCopyInto(out *File)

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

type FileContentReference

type FileContentReference struct {
	// Kind of reference. Can be either ConfigMap or Secret.
	Kind string `json:"kind"`

	// Name of reference.
	Name string `json:"name"`

	// Key in reference which holds file contents.
	Key string `json:"key"`
}

FileContentRef defines the name of a config resource and the key from which to retrieve the contents

func (*FileContentReference) DeepCopy

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

func (*FileContentReference) DeepCopyInto

func (in *FileContentReference) DeepCopyInto(out *FileContentReference)

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

type HTTPPathRoute added in v1.8.0

type HTTPPathRoute struct {
	// Path of the route.
	Path string `json:"path" protobuf:"1"`
	// The method of matching. By default, `PathPrefix` is used.
	// +kubebuilder:validation:Enum=PathPrefix;Exact;RegularExpression
	Match PathMatchType `json:"match,omitempty" protobuf:"2"`
}

A HTTP path routing.

func (*HTTPPathRoute) DeepCopy added in v1.8.0

func (in *HTTPPathRoute) DeepCopy() *HTTPPathRoute

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

func (*HTTPPathRoute) DeepCopyInto added in v1.8.0

func (in *HTTPPathRoute) DeepCopyInto(out *HTTPPathRoute)

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

type HorizontalScale

type HorizontalScale struct {
	// Instances specifies minimum and maximum amount of Capsule
	// instances.
	Instances Instances `json:"instances" protobuf:"1"`

	// CPUTarget specifies that this Capsule should be scaled using CPU
	// utilization.
	CPUTarget *CPUTarget `json:"cpuTarget,omitempty" protobuf:"2"`
	// CustomMetrics specifies custom metrics emitted by the custom.metrics.k8s.io API
	// which the autoscaler should scale on
	CustomMetrics []CustomMetric `json:"customMetrics,omitempty" protobuf:"3" patchStrategy:"replace"`
}

HorizontalScale defines the policy for the number of replicas of the capsule It can both be configured with autoscaling and with a static number of replicas

func (*HorizontalScale) DeepCopy

func (in *HorizontalScale) DeepCopy() *HorizontalScale

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

func (*HorizontalScale) DeepCopyInto

func (in *HorizontalScale) DeepCopyInto(out *HorizontalScale)

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

type HostRoute added in v1.8.0

type HostRoute struct {
	// ID of the route. This field is required and cannot be empty, and must be unique for the interface.
	// If this field is changed, it may result in downtime, as it is used to generate resources.
	ID string `json:"id" protobuf:"1"`
	// Host of the route. This field is required and cannot be empty.
	Host string `json:"host" protobuf:"2"`
	// HTTP paths of the host that maps to the interface. If empty, all paths are
	// automatically matched.
	Paths []HTTPPathRoute `json:"paths,omitempty" protobuf:"3"`
	// Options for all paths of this host.
	RouteOptions `json:",inline"`
}

HostRoute is the configuration of a route to the network interface it's configured on.

func (*HostRoute) DeepCopy added in v1.8.0

func (in *HostRoute) DeepCopy() *HostRoute

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

func (*HostRoute) DeepCopyInto added in v1.8.0

func (in *HostRoute) DeepCopyInto(out *HostRoute)

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

type InstanceMetric

type InstanceMetric struct {
	// +kubebuilder:validation:Required
	// MetricName is the name of the metric
	MetricName string `json:"metricName" protobuf:"1"`
	// MatchLabels is a set of key, value pairs which filters the metric series
	MatchLabels map[string]string `json:"matchLabels,omitempty" protobuf:"2"`
	// +kubebuilder:validation:Required
	// AverageValue defines the average value across all instances which the autoscaler scales towards
	AverageValue string `json:"averageValue" protobuf:"3"`
}

InstanceMetric defines a custom instance-based metric (pod-metric in Kubernetes lingo)

func (*InstanceMetric) DeepCopy

func (in *InstanceMetric) DeepCopy() *InstanceMetric

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

func (*InstanceMetric) DeepCopyInto

func (in *InstanceMetric) DeepCopyInto(out *InstanceMetric)

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

type Instances

type Instances struct {
	// Min specifies the minimum amount of instances to run.
	Min uint32 `json:"min" protobuf:"1"`

	// Max specifies the maximum amount of instances to run. Omit to
	// disable autoscaling.
	Max *uint32 `json:"max,omitempty" protobuf:"2"`
}

Instances specifies the minimum and maximum amount of capsule instances.

func (*Instances) DeepCopy

func (in *Instances) DeepCopy() *Instances

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

func (*Instances) DeepCopyInto

func (in *Instances) DeepCopyInto(out *Instances)

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

type InterfaceGRPCProbe

type InterfaceGRPCProbe struct {
	// Service specifies the gRPC health probe service to probe. This is a
	// used as service name as per standard gRPC health/v1.
	Service string `json:"service" protobuf:"1"`

	// Enabled controls if the gRPC health check is activated.
	Enabled bool `json:"enabled,omitempty" protobuf:"2"`
}

InterfaceGRPCProbe specifies a GRPC probe.

func (*InterfaceGRPCProbe) DeepCopy

func (in *InterfaceGRPCProbe) DeepCopy() *InterfaceGRPCProbe

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

func (*InterfaceGRPCProbe) DeepCopyInto

func (in *InterfaceGRPCProbe) DeepCopyInto(out *InterfaceGRPCProbe)

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

type InterfaceLivenessProbe added in v1.11.8

type InterfaceLivenessProbe struct {
	// Path is the HTTP path of the probe. Path is mutually
	// exclusive with the TCP and GCRP fields.
	Path string `json:"path,omitempty" protobuf:"1"`

	// TCP specifies that this is a simple TCP listen probe.
	TCP bool `json:"tcp,omitempty" protobuf:"2"`

	// GRPC specifies that this is a GRCP probe.
	GRPC *InterfaceGRPCProbe `json:"grpc,omitempty" protobuf:"3"`

	// For slow-starting containers, the startup delay allows liveness
	// checks to fail for a set duration before restarting the instance.
	StartupDelay uint32 `json:"startupDelay,omitempty" protobuf:"4"`
}

InterfaceLivenessProbe specifies an interface probe for liveness checks.

func (*InterfaceLivenessProbe) DeepCopy added in v1.11.8

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

func (*InterfaceLivenessProbe) DeepCopyInto added in v1.11.8

func (in *InterfaceLivenessProbe) DeepCopyInto(out *InterfaceLivenessProbe)

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

func (InterfaceLivenessProbe) GetGRPC added in v1.11.8

func (InterfaceLivenessProbe) GetPath added in v1.11.8

func (p InterfaceLivenessProbe) GetPath() string

func (InterfaceLivenessProbe) GetTCP added in v1.11.8

func (p InterfaceLivenessProbe) GetTCP() bool

type InterfaceReadinessProbe added in v1.11.8

type InterfaceReadinessProbe struct {
	// Path is the HTTP path of the probe. Path is mutually
	// exclusive with the TCP and GCRP fields.
	Path string `json:"path,omitempty" protobuf:"1"`

	// TCP specifies that this is a simple TCP listen probe.
	TCP bool `json:"tcp,omitempty" protobuf:"2"`

	// GRPC specifies that this is a GRCP probe.
	GRPC *InterfaceGRPCProbe `json:"grpc,omitempty" protobuf:"3"`
}

InterfaceReadinessProbe specifies an interface probe for readiness checks.

func (*InterfaceReadinessProbe) DeepCopy added in v1.11.8

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

func (*InterfaceReadinessProbe) DeepCopyInto added in v1.11.8

func (in *InterfaceReadinessProbe) DeepCopyInto(out *InterfaceReadinessProbe)

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

func (InterfaceReadinessProbe) GetGRPC added in v1.11.8

func (InterfaceReadinessProbe) GetPath added in v1.11.8

func (p InterfaceReadinessProbe) GetPath() string

func (InterfaceReadinessProbe) GetTCP added in v1.11.8

func (p InterfaceReadinessProbe) GetTCP() bool

type JobCommand added in v1.5.2

type JobCommand struct {
	// +kubebuilder:validation:Required
	Command string   `json:"command" protobuf:"1"`
	Args    []string `json:"args,omitempty" protobuf:"2"`
}

func (*JobCommand) DeepCopy added in v1.5.2

func (in *JobCommand) DeepCopy() *JobCommand

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

func (*JobCommand) DeepCopyInto added in v1.5.2

func (in *JobCommand) DeepCopyInto(out *JobCommand)

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

type ObjectMetric

type ObjectMetric struct {
	// +kubebuilder:validation:Required
	// MetricName is the name of the metric
	MetricName string `json:"metricName" protobuf:"1"`
	// MatchLabels is a set of key, value pairs which filters the metric series
	MatchLabels map[string]string `json:"matchLabels,omitempty" protobuf:"2"`
	// AverageValue scales the number of instances towards making the value returned by the metric
	// divided by the number of instances reach AverageValue
	// Exactly one of 'Value' and 'AverageValue' must be set
	AverageValue string `json:"averageValue,omitempty" protobuf:"3"`
	// Value scales the number of instances towards making the value returned by the metric 'Value'
	// Exactly one of 'Value' and 'AverageValue' must be set
	Value string `json:"value,omitempty" protobuf:"4"`
	// +kubebuilder:validation:Required
	// DescribedObject is a reference to the object in the same namespace which is described by the metric
	DescribedObject autoscalingv2.CrossVersionObjectReference `json:"objectReference" protobuf:"5"`
}

ObjectMetric defines a custom object metric for the autoscaler

func (*ObjectMetric) DeepCopy

func (in *ObjectMetric) DeepCopy() *ObjectMetric

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

func (*ObjectMetric) DeepCopyInto

func (in *ObjectMetric) DeepCopyInto(out *ObjectMetric)

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

type OwnedGlobalResource added in v1.8.2

type OwnedGlobalResource struct {
	Ref *v1.TypedObjectReference `json:"ref"`
	// +kubebuilder:validation:Enum=created;failed;alreadyExists;unchanged;updated;changePending;deleted
	State   string `json:"state,omitempty"`
	Message string `json:"message,omitempty"`
}

func (*OwnedGlobalResource) DeepCopy added in v1.8.2

func (in *OwnedGlobalResource) DeepCopy() *OwnedGlobalResource

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

func (*OwnedGlobalResource) DeepCopyInto added in v1.8.2

func (in *OwnedGlobalResource) DeepCopyInto(out *OwnedGlobalResource)

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

type OwnedResource

type OwnedResource struct {
	Ref *v1.TypedLocalObjectReference `json:"ref"`
	// +kubebuilder:validation:Enum=created;failed;alreadyExists;unchanged;updated;changePending;deleted
	State   string `json:"state,omitempty"`
	Message string `json:"message,omitempty"`
}

func (*OwnedResource) DeepCopy

func (in *OwnedResource) DeepCopy() *OwnedResource

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

func (*OwnedResource) DeepCopyInto

func (in *OwnedResource) DeepCopyInto(out *OwnedResource)

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

type PathMatchType added in v1.8.0

type PathMatchType string

PathMatchType specifies the semantics of how HTTP paths should be compared.

const (
	// Exact match type, for when the path should match exactly.
	Exact PathMatchType = "Exact"
	// Path prefix, for when only the prefix needs to match.
	PathPrefix PathMatchType = "PathPrefix"
	// Path regular expression, for when the path should match a regular expression.
	RegularExpression PathMatchType = "RegularExpression"
)

type ProjectEnvironment added in v1.8.15

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

	// Spec holds the specification of the Project.
	Spec ProjectEnvironmentSpec `json:"spec,omitempty"`

	// Status holds the status of the Project
	Status *ProjectEnvironmentStatus `json:"status,omitempty"`
}

func (*ProjectEnvironment) DeepCopy added in v1.8.15

func (in *ProjectEnvironment) DeepCopy() *ProjectEnvironment

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

func (*ProjectEnvironment) DeepCopyInto added in v1.8.15

func (in *ProjectEnvironment) DeepCopyInto(out *ProjectEnvironment)

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

func (*ProjectEnvironment) DeepCopyObject added in v1.8.15

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

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

type ProjectEnvironmentList added in v1.8.15

type ProjectEnvironmentList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`

	Items []ProjectEnvironment `json:"items"`
}

ProjectEnvironmentList contains a list of Projects

func (*ProjectEnvironmentList) DeepCopy added in v1.8.15

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

func (*ProjectEnvironmentList) DeepCopyInto added in v1.8.15

func (in *ProjectEnvironmentList) DeepCopyInto(out *ProjectEnvironmentList)

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

func (*ProjectEnvironmentList) DeepCopyObject added in v1.8.15

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

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

type ProjectEnvironmentSpec added in v1.8.15

type ProjectEnvironmentSpec struct {
	Project     string `json:"project"`
	Environment string `json:"environment"`
}

func (*ProjectEnvironmentSpec) DeepCopy added in v1.8.15

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

func (*ProjectEnvironmentSpec) DeepCopyInto added in v1.8.15

func (in *ProjectEnvironmentSpec) DeepCopyInto(out *ProjectEnvironmentSpec)

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

type ProjectEnvironmentStatus added in v1.8.15

type ProjectEnvironmentStatus struct {
	ObservedGeneration int64                 `json:"observedGeneration,omitempty"`
	OwnedResources     []OwnedGlobalResource `json:"ownedResources,omitempty"`
	Errors             []string              `json:"errors,omitempty"`
	CreatedNamespace   bool                  `json:"createdNamespace"`
}

func (*ProjectEnvironmentStatus) DeepCopy added in v1.8.15

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

func (*ProjectEnvironmentStatus) DeepCopyInto added in v1.8.15

func (in *ProjectEnvironmentStatus) DeepCopyInto(out *ProjectEnvironmentStatus)

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

type ResourceLimits

type ResourceLimits struct {
	// Request specifies the resource request.
	Request *resource.Quantity `json:"request,omitempty" protobuf:"1"`
	// Limit specifies the resource limit.
	Limit *resource.Quantity `json:"limit,omitempty" protobuf:"2"`
}

ResourceLimits specifies the request and limit of a resource.

func (*ResourceLimits) DeepCopy

func (in *ResourceLimits) DeepCopy() *ResourceLimits

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

func (*ResourceLimits) DeepCopyInto

func (in *ResourceLimits) DeepCopyInto(out *ResourceLimits)

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

type ResourceRequest

type ResourceRequest struct {
	// Request specifies the request of a resource.
	Request resource.Quantity `json:"request,omitempty" protobuf:"1"`
}

ResourceRequest specifies the request of a resource.

func (*ResourceRequest) DeepCopy

func (in *ResourceRequest) DeepCopy() *ResourceRequest

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

func (*ResourceRequest) DeepCopyInto

func (in *ResourceRequest) DeepCopyInto(out *ResourceRequest)

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

type RouteOptions added in v1.8.0

type RouteOptions struct {
	// Annotations of the route option. This can be plugin-specific configuration
	// that allows custom plugins to add non-standard behavior.
	Annotations map[string]string `json:"annotations,omitempty" protobuf:"4"`
}

Route options.

func (*RouteOptions) DeepCopy added in v1.8.0

func (in *RouteOptions) DeepCopy() *RouteOptions

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

func (*RouteOptions) DeepCopyInto added in v1.8.0

func (in *RouteOptions) DeepCopyInto(out *RouteOptions)

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

type URL added in v1.5.2

type URL struct {
	// +kubebuilder:validation:Required
	Port uint16 `json:"port" protobuf:"1"`
	// +kubebuilder:validation:Required
	Path            string            `json:"path" protobuf:"2"`
	QueryParameters map[string]string `json:"queryParameters,omitempty" protobuf:"3"`
}

func (*URL) DeepCopy added in v1.5.2

func (in *URL) DeepCopy() *URL

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

func (*URL) DeepCopyInto added in v1.5.2

func (in *URL) DeepCopyInto(out *URL)

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

type UsedResource

type UsedResource struct {
	Ref *v1.TypedLocalObjectReference `json:"ref"`
	// +kubebuilder:validation:Enum=found;missing;error
	State   string `json:"state,omitempty"`
	Message string `json:"message,omitempty"`
}

func (*UsedResource) DeepCopy

func (in *UsedResource) DeepCopy() *UsedResource

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

func (*UsedResource) DeepCopyInto

func (in *UsedResource) DeepCopyInto(out *UsedResource)

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

type VerticalScale

type VerticalScale struct {
	// CPU specifies the CPU resource request and limit
	CPU *ResourceLimits `json:"cpu,omitempty" protobuf:"1"`

	// Memory specifies the Memory resource request and limit
	Memory *ResourceLimits `json:"memory,omitempty" protobuf:"2"`

	// GPU specifies the GPU resource request and limit
	GPU *ResourceRequest `json:"gpu,omitempty" protobuf:"3"`
}

VerticalScale specifies the vertical scaling of the Capsule.

func (*VerticalScale) DeepCopy

func (in *VerticalScale) DeepCopy() *VerticalScale

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

func (*VerticalScale) DeepCopyInto

func (in *VerticalScale) DeepCopyInto(out *VerticalScale)

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