Skip to main content

rig.dev/v1alpha2

Package v1alpha2 contains API Schema definitions for the v1alpha2 API group

Resource Types

CPUTarget

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

Appears in:

FieldDescription
utilization integerUtilization specifies the average CPU target. If the average
exceeds this number new instances will be added.

Capsule

Capsule is the Schema for the capsules API

FieldDescription
apiVersion stringrig.dev/v1alpha2
kind stringCapsule
metadata ObjectMetaRefer to Kubernetes API documentation for fields of metadata.
spec CapsuleSpecSpec holds the specification of the Capsule.

CapsuleInterface

CapsuleInterface defines an interface for a capsule

Appears in:

FieldDescription
name stringName specifies a descriptive name of the interface.
port integerPort specifies what port the interface should have.
liveness InterfaceLivenessProbeLiveness specifies that this interface should be used for
liveness probing. Only one of the Capsule interfaces can be
used as liveness probe.
readiness InterfaceReadinessProbeReadiness specifies that this interface should be used for
readiness probing. Only one of the Capsule interfaces can be
used as readiness probe.
public CapsulePublicInterfacePublic specifies if and how the interface should be published.
routes HostRoute arrayHost routes that are mapped to this interface.

CapsuleInterfaceIngress

CapsuleInterfaceIngress defines that the interface should be exposed as http ingress

Appears in:

FieldDescription
host stringHost specifies the DNS name of the Ingress resource.
paths string arrayPaths specifies a list of paths. In order for a request to
hit the ingress at least one of these must match the request.

CapsuleInterfaceLoadBalancer

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

Appears in:

FieldDescription
port integerPort is the external port on the LoadBalancer

CapsulePublicInterface

CapsulePublicInterface defines how to publicly expose the interface

Appears in:

FieldDescription
ingress CapsuleInterfaceIngressIngress specifies that this interface should be exposed through an
Ingress resource. The Ingress field is mutually exclusive with the
LoadBalancer field.
loadBalancer CapsuleInterfaceLoadBalancerLoadBalancer specifies that this interface should be exposed through a
LoadBalancer Service. The LoadBalancer field is mutually exclusive with
the Ingress field.

CapsuleScale

CapsuleScale specifies the horizontal and vertical scaling of the Capsule.

Appears in:

FieldDescription
horizontal HorizontalScaleHorizontal specifies the horizontal scaling of the Capsule.
vertical VerticalScaleVertical specifies the vertical scaling of the Capsule.

CapsuleSpec

CapsuleSpec defines the desired state of Capsule

Appears in:

FieldDescription
image stringImage specifies what image the Capsule should run.
command stringCommand is run as a command in the shell. If left unspecified, the
container will run using what is specified as ENTRYPOINT in the
Dockerfile.
args string arrayArgs 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.
interfaces CapsuleInterface arrayInterfaces 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.
files File arrayFiles is a list of files to mount in the container. These can either be
based on ConfigMaps or Secrets.
scale CapsuleScaleScale specifies the scaling of the Capsule.
nodeSelector object (keys:string, values:string)NodeSelector is a selector for what nodes the Capsule should live on.
env EnvEnv specifies configuration for how the container should obtain
environment variables.
cronJobs CronJob array
extensions object (keys:string, values:RawMessage)Extensions are extra, typed fields defined by the platform for custom behaviour implemented through plugins

CronJob

Appears in:

FieldDescription
name string
schedule string
url URL
command JobCommand
maxRetries integerDefaults to 6
timeoutSeconds integer

CustomMetric

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

Appears in:

FieldDescription
instanceMetric InstanceMetricInstanceMetric defines a custom instance-based metric (pod-metric in Kubernetes lingo)
objectMetric ObjectMetricObjectMetric defines a custom object-based metric

Env

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

Appears in:

FieldDescription
disable_automatic booleanDisableAutomatic sets wether the capsule should disable automatically use
of existing secrets and configmaps which share the same name as the capsule
as environment variables.
from EnvReference arrayFrom holds a list of references to secrets and configmaps which should
be mounted as environment variables.

EnvReference

EnvSource holds a reference to either a ConfigMap or a Secret

Appears in:

FieldDescription
kind stringKind is the resource kind of the env reference, must be ConfigMap or Secret.
name stringName is the name of a ConfigMap or Secret in the same namespace as the Capsule.

File

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

Appears in:

FieldDescription
ref FileContentReferenceRef specifies a reference to a ConfigMap or Secret key which holds the contents of the file.
path stringPath specifies the full path where the File should be mounted including
the file name.

FileContentReference

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

Appears in:

FieldDescription
kind stringKind of reference. Can be either ConfigMap or Secret.
name stringName of reference.
key stringKey in reference which holds file contents.

HTTPPathRoute

A HTTP path routing.

Appears in:

FieldDescription
path stringPath of the route.
match PathMatchTypeThe method of matching. By default, PathPrefix is used.

HorizontalScale

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

Appears in:

FieldDescription
instances InstancesInstances specifies minimum and maximum amount of Capsule
instances.
cpuTarget CPUTargetCPUTarget specifies that this Capsule should be scaled using CPU
utilization.
customMetrics CustomMetric arrayCustomMetrics specifies custom metrics emitted by the custom.metrics.k8s.io API
which the autoscaler should scale on

HostRoute

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

Appears in:

FieldDescription
id stringID 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.
host stringHost of the route. This field is required and cannot be empty.
paths HTTPPathRoute arrayHTTP paths of the host that maps to the interface. If empty, all paths are
automatically matched.
annotations object (keys:string, values:string)Annotations of the route option. This can be plugin-specific configuration
that allows custom plugins to add non-standard behavior.

InstanceMetric

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

Appears in:

FieldDescription
metricName stringMetricName is the name of the metric
matchLabels object (keys:string, values:string)MatchLabels is a set of key, value pairs which filters the metric series
averageValue stringAverageValue defines the average value across all instances which the autoscaler scales towards

Instances

Instances specifies the minimum and maximum amount of capsule instances.

Appears in:

FieldDescription
min integerMin specifies the minimum amount of instances to run.
max integerMax specifies the maximum amount of instances to run. Omit to
disable autoscaling.

InterfaceGRPCProbe

InterfaceGRPCProbe specifies a GRPC probe.

Appears in:

FieldDescription
service stringService specifies the gRPC health probe service to probe. This is a
used as service name as per standard gRPC health/v1.
enabled booleanEnabled controls if the gRPC health check is activated.

InterfaceLivenessProbe

InterfaceLivenessProbe specifies an interface probe for liveness checks.

Appears in:

FieldDescription
path stringPath is the HTTP path of the probe. Path is mutually
exclusive with the TCP and GCRP fields.
tcp booleanTCP specifies that this is a simple TCP listen probe.
grpc InterfaceGRPCProbeGRPC specifies that this is a GRCP probe.
startupDelay integerFor slow-starting containers, the startup delay allows liveness
checks to fail for a set duration before restarting the instance.

InterfaceReadinessProbe

InterfaceReadinessProbe specifies an interface probe for readiness checks.

Appears in:

FieldDescription
path stringPath is the HTTP path of the probe. Path is mutually
exclusive with the TCP and GCRP fields.
tcp booleanTCP specifies that this is a simple TCP listen probe.
grpc InterfaceGRPCProbeGRPC specifies that this is a GRCP probe.

JobCommand

Appears in:

FieldDescription
command string
args string array

ObjectMetric

ObjectMetric defines a custom object metric for the autoscaler

Appears in:

FieldDescription
metricName stringMetricName is the name of the metric
matchLabels object (keys:string, values:string)MatchLabels is a set of key, value pairs which filters the metric series
averageValue stringAverageValue 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
value stringValue scales the number of instances towards making the value returned by the metric 'Value'
Exactly one of 'Value' and 'AverageValue' must be set
objectReference CrossVersionObjectReferenceDescribedObject is a reference to the object in the same namespace which is described by the metric

OwnedGlobalResource

Appears in:

FieldDescription
ref TypedObjectReference
state string
message string

PathMatchType

Underlying type: string

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

Appears in:

ProjectEnvironment

Appears in:

FieldDescription
apiVersion stringrig.dev/v1alpha2
kind stringProjectEnvironment
metadata ObjectMetaRefer to Kubernetes API documentation for fields of metadata.
spec ProjectEnvironmentSpecSpec holds the specification of the Project.

ProjectEnvironmentList

ProjectEnvironmentList contains a list of Projects

FieldDescription
apiVersion stringrig.dev/v1alpha2
kind stringProjectEnvironmentList
metadata ListMetaRefer to Kubernetes API documentation for fields of metadata.
items ProjectEnvironment array

ProjectEnvironmentSpec

Appears in:

FieldDescription
project string
environment string

ResourceLimits

ResourceLimits specifies the request and limit of a resource.

Appears in:

FieldDescription
request QuantityRequest specifies the resource request.
limit QuantityLimit specifies the resource limit.

ResourceRequest

ResourceRequest specifies the request of a resource.

Appears in:

FieldDescription
request QuantityRequest specifies the request of a resource.

RouteOptions

Route options.

Appears in:

FieldDescription
annotations object (keys:string, values:string)Annotations of the route option. This can be plugin-specific configuration
that allows custom plugins to add non-standard behavior.

URL

Appears in:

FieldDescription
port integer
path string
queryParameters object (keys:string, values:string)

VerticalScale

VerticalScale specifies the vertical scaling of the Capsule.

Appears in:

FieldDescription
cpu ResourceLimitsCPU specifies the CPU resource request and limit
memory ResourceLimitsMemory specifies the Memory resource request and limit
gpu ResourceRequestGPU specifies the GPU resource request and limit

generated from source code

This page is generated based on go source code. If you have suggestions for improvements for this page, please open an issue at github.com/rigdev/rig, or a pull request with changes to the go source files.