Documentation
¶
Overview ¶
Package v1alpha2 contains API Schema definitions for the v1alpha2 API group +kubebuilder:object:generate=true +groupName=rig.dev
Index ¶
- Variables
- func MaxAllowedCronJobName(capsuleName string) int
- type CPUTarget
- type Capsule
- func (in *Capsule) DeepCopy() *Capsule
- func (in *Capsule) DeepCopyInto(out *Capsule)
- func (in *Capsule) DeepCopyObject() runtime.Object
- func (r *Capsule) Default()
- func (c *Capsule) Hub()
- func (r *Capsule) SetupWebhookWithManager(mgr ctrl.Manager) error
- func (r *Capsule) ValidateCreate() (admission.Warnings, error)
- func (r *Capsule) ValidateDelete() (admission.Warnings, error)
- func (r *Capsule) ValidateUpdate(_ runtime.Object) (admission.Warnings, error)
- type CapsuleInterface
- type CapsuleInterfaceIngress
- type CapsuleInterfaceLoadBalancer
- type CapsuleList
- type CapsulePublicInterface
- type CapsuleScale
- type CapsuleSpec
- type CapsuleStatus
- type CronJob
- type CustomMetric
- type DeploymentStatus
- type Env
- type EnvReference
- type File
- type FileContentReference
- type HTTPPathRoute
- type HorizontalScale
- type HostRoute
- type InstanceMetric
- type Instances
- type InterfaceGRPCProbe
- type InterfaceProbe
- type JobCommand
- type ObjectMetric
- type OwnedResource
- type PathMatchType
- type ResourceLimits
- type ResourceRequest
- type RouteOptions
- type URL
- type UsedResource
- type VerticalScale
Constants ¶
This section is empty.
Variables ¶
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
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"`
}
CPUTarget defines an autoscaler target for the CPU metric If empty, no autoscaling will be done
func (*CPUTarget) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CPUTarget.
func (*CPUTarget) DeepCopyInto ¶
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Capsule.
func (*Capsule) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Capsule) DeepCopyObject ¶
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) SetupWebhookWithManager ¶
func (*Capsule) ValidateCreate ¶
ValidateCreate implements webhook.Validator so a webhook will be registered for the type
func (*Capsule) ValidateDelete ¶
ValidateDelete 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"`
// Port specifies what port the interface should have.
//+kubebuilder:validation:Minimum=1
//+kubebuilder:validation:Maximum=65535
Port int32 `json:"port"`
// Liveness specifies that this interface should be used for
// liveness probing. Only one of the Capsule interfaces can be
// used as liveness probe.
Liveness *InterfaceProbe `json:"liveness,omitempty"`
// Readiness specifies that this interface should be used for
// readiness probing. Only one of the Capsule interfaces can be
// used as readiness probe.
Readiness *InterfaceProbe `json:"readiness,omitempty"`
// Public specifies if and how the interface should be published.
Public *CapsulePublicInterface `json:"public,omitempty"`
// Host routes that are mapped to this interface.
Routes []HostRoute `json:"routes,omitempty"`
}
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"`
// 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"`
}
CapsuleInterfaceIngress defines that the interface should be exposed as http ingress
func (*CapsuleInterfaceIngress) DeepCopy ¶
func (in *CapsuleInterfaceIngress) DeepCopy() *CapsuleInterfaceIngress
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"`
}
CapsuleInterfaceLoadBalancer defines that the interface should be exposed as a L4 loadbalancer
func (*CapsuleInterfaceLoadBalancer) DeepCopy ¶
func (in *CapsuleInterfaceLoadBalancer) DeepCopy() *CapsuleInterfaceLoadBalancer
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CapsuleInterfaceLoadBalancer.
func (*CapsuleInterfaceLoadBalancer) DeepCopyInto ¶
func (in *CapsuleInterfaceLoadBalancer) DeepCopyInto(out *CapsuleInterfaceLoadBalancer)
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"`
// 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"`
}
CapsulePublicInterface defines how to publicly expose the interface
func (*CapsulePublicInterface) DeepCopy ¶
func (in *CapsulePublicInterface) DeepCopy() *CapsulePublicInterface
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"`
// Vertical specifies the vertical scaling of the Capsule.
Vertical *VerticalScale `json:"vertical,omitempty"`
}
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"`
}
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"`
// +kubebuilder:validation:Required
Schedule string `json:"schedule"`
URL *URL `json:"url,omitempty"`
Command *JobCommand `json:"command,omitempty"`
// Defaults to 6
MaxRetries *uint `json:"maxRetries,omitempty"`
TimeoutSeconds *uint `json:"timeoutSeconds,omitempty"`
}
func (*CronJob) DeepCopy ¶ added in v1.5.2
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CronJob.
func (*CronJob) DeepCopyInto ¶ added in v1.5.2
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"`
// ObjectMetric defines a custom object-based metric
ObjectMetric *ObjectMetric `json:"objectMetric,omitempty"`
}
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"`
// From holds a list of references to secrets and configmaps which should
// be mounted as environment variables.
From []EnvReference `json:"from,omitempty"`
}
Env defines what secrets and configmaps should be used for environment variables in the capsule.
func (*Env) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Env.
func (*Env) DeepCopyInto ¶
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new File.
func (*File) DeepCopyInto ¶
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 ¶
func (in *FileContentReference) DeepCopy() *FileContentReference
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"`
// The method of matching. By default, `PathPrefix` is used.
// +kubebuilder:validation:Enum=PathPrefix;Exact
Match PathMatchType `json:"match,omitempty"`
}
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"`
// CPUTarget specifies that this Capsule should be scaled using CPU
// utilization.
CPUTarget *CPUTarget `json:"cpuTarget,omitempty"`
// CustomMetrics specifies custom metrics emitted by the custom.metrics.k8s.io API
// which the autoscaler should scale on
CustomMetrics []CustomMetric `json:"customMetrics,omitempty"`
}
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"`
// Host of the route. This field is required and cannot be empty.
Host string `json:"host"`
// HTTP paths of the host that maps to the interface. If empty, all paths are
// automatically matched.
Paths []HTTPPathRoute `json:"paths,omitempty"`
// 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
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HostRoute.
func (*HostRoute) DeepCopyInto ¶ added in v1.8.0
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"`
// MatchLabels is a set of key, value pairs which filters the metric series
MatchLabels map[string]string `json:"matchLabels,omitempty"`
// +kubebuilder:validation:Required
// AverageValue defines the average value across all instances which the autoscaler scales towards
AverageValue string `json:"averageValue"`
}
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"`
// Max specifies the maximum amount of instances to run. Omit to
// disable autoscaling.
Max *uint32 `json:"max,omitempty"`
}
Instances specifies the minimum and maximum amount of capsule instances.
func (*Instances) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Instances.
func (*Instances) DeepCopyInto ¶
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"`
}
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 InterfaceProbe ¶
type InterfaceProbe struct {
// Path is the HTTP path of the probe. Path is mutually
// exclusive with the TCP and GCRP fields.
Path string `json:"path,omitempty"`
// TCP specifies that this is a simple TCP listen probe.
TCP bool `json:"tcp,omitempty"`
// GRPC specifies that this is a GRCP probe.
GRPC *InterfaceGRPCProbe `json:"grpc,omitempty"`
}
InterfaceProbe specifies an interface probe
func (*InterfaceProbe) DeepCopy ¶
func (in *InterfaceProbe) DeepCopy() *InterfaceProbe
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InterfaceProbe.
func (*InterfaceProbe) DeepCopyInto ¶
func (in *InterfaceProbe) DeepCopyInto(out *InterfaceProbe)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type JobCommand ¶ added in v1.5.2
type JobCommand struct {
// +kubebuilder:validation:Required
Command string `json:"command"`
Args []string `json:"args,omitempty"`
}
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"`
// MatchLabels is a set of key, value pairs which filters the metric series
MatchLabels map[string]string `json:"matchLabels,omitempty"`
// 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"`
// 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"`
// +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"`
}
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 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" )
type ResourceLimits ¶
type ResourceLimits struct {
// Request specifies the resource request.
Request *resource.Quantity `json:"request,omitempty"`
// Limit specifies the resource limit.
Limit *resource.Quantity `json:"limit,omitempty"`
}
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"`
}
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"`
}
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"`
// +kubebuilder:validation:Required
Path string `json:"path"`
QueryParameters map[string]string `json:"queryParameters,omitempty"`
}
func (*URL) DeepCopy ¶ added in v1.5.2
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new URL.
func (*URL) DeepCopyInto ¶ added in v1.5.2
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"`
// Memory specifies the Memory resource request and limit
Memory *ResourceLimits `json:"memory,omitempty"`
// GPU specifies the GPU resource request and limit
GPU *ResourceRequest `json:"gpu,omitempty"`
}
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.