Skip to main content

rig.platform/v1

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

FieldDescription
apiVersion stringrig.platform/v1
kind stringCapsule
kind stringKind is a string value representing the REST resource this object represents.
Servers may infer this from the endpoint the client submits requests to.
Cannot be updated.
In CamelCase.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
apiVersion stringAPIVersion defines the versioned schema of this representation of an object.
Servers should convert recognized schemas to the latest internal value, and
may reject unrecognized values.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
name stringName,Project,Environment is unique
Project,Name referes to an existing Capsule type with the given name and project
Will throw an error (in the platform) if the Capsule does not exist
project stringProject references an existing Project type with the given name
Will throw an error (in the platform) if the Project does not exist
environment stringEnvironment references an existing Environment type with the given name
Will throw an error (in the platform) if the Environment does not exist
The environment also needs to be present in the parent Capsule
spec CapsuleSpec

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.
routes HostRoute arrayHost routes that are mapped to this interface.

CapsuleSet

FieldDescription
apiVersion stringrig.platform/v1
kind stringCapsuleSet
kind stringKind is a string value representing the REST resource this object represents.
Servers may infer this from the endpoint the client submits requests to.
Cannot be updated.
In CamelCase.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
apiVersion stringAPIVersion defines the versioned schema of this representation of an object.
Servers should convert recognized schemas to the latest internal value, and
may reject unrecognized values.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
name stringName,Project is unique
project stringProject references an existing Project type with the given name
Will throw an error (in the platform) if the Project does not exist
spec CapsuleSpecCapsule-level defaults
environments object (keys:string, values:CapsuleSpec)
environmentRefs string array

CapsuleSpec

Appears in:

FieldDescription
annotations object (keys:string, values:string)
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.
nolint:lll
files File arrayFiles is a list of files to mount in the container. These can either be
based on ConfigMaps or Secrets.
env EnvironmentVariablesEnv defines the environment variables set in the Capsule
scale ScaleScale specifies the scaling of the Capsule.
cronJobs CronJob array
autoAddRigServiceAccounts boolean
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

Environment

FieldDescription
apiVersion stringrig.platform/v1
kind stringEnvironment
kind stringKind is a string value representing the REST resource this object represents.
Servers may infer this from the endpoint the client submits requests to.
Cannot be updated.
In CamelCase.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
apiVersion stringAPIVersion defines the versioned schema of this representation of an object.
Servers should convert recognized schemas to the latest internal value, and
may reject unrecognized values.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
name stringName is unique
namespaceTemplate string
operatorVersion string
cluster string
spec ProjEnvCapsuleBaseEnvironment level defaults
ephemeral boolean
activeProjects string array
global boolean

EnvironmentSource

Appears in:

FieldDescription
name stringName is the name of the kubernetes object containing the environment source.
kind EnvironmentSourceKindKind is the kind of source, either ConfigMap or Secret.

EnvironmentSourceKind

Underlying type: string

Appears in:

EnvironmentVariables

EnvironmentVariables defines the environment variables injected into a Capsule.

Appears in:

FieldDescription
raw object (keys:string, values:string)Raw is a list of environment variables as key-value pairs.
sources EnvironmentSource arraySources is a list of source files which will be injected as environment variables.
They can be references to either ConfigMaps or Secrets.

File

Appears in:

FieldDescription
path string
asSecret boolean
bytes integer
string string
ref FileReference

FileReference

FileReference defines the name of a k8s 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
min integerMin specifies the minimum amount of instances to run.
max integerMax specifies the maximum amount of instances to run. Omit to
disable autoscaling.
instances InstancesInstances specifies minimum and maximum amount of Capsule
instances.
Deprecated; use min and max instead.
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

HostCapsule

FieldDescription
apiVersion stringrig.platform/v1
kind stringHostCapsule
kind stringKind is a string value representing the REST resource this object represents.
Servers may infer this from the endpoint the client submits requests to.
Cannot be updated.
In CamelCase.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
apiVersion stringAPIVersion defines the versioned schema of this representation of an object.
Servers should convert recognized schemas to the latest internal value, and
may reject unrecognized values.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
name stringName,Project,Environment is unique
Project,Name referes to an existing Capsule type with the given name and project
Will throw an error (in the platform) if the Capsule does not exist
project stringProject references an existing Project type with the given name
Will throw an error (in the platform) if the Project does not exist
environment stringEnvironment references an existing Environment type with the given name
Will throw an error (in the platform) if the Environment does not exist
The environment also needs to be present in the parent Capsule
network HostNetworkNetwork mapping between the host network and the Kubernetes cluster network. When activated,
traffic between the two networks will be tunneled according to the rules specified here.

HostNetwork

Appears in:

FieldDescription
hostInterfaces ProxyInterface arrayHostInterfaces are interfaces activated on the local machine (the host) and forwarded
to the Kubernetes cluster capsules.
capsuleInterfaces ProxyInterface arrayCapsuleInterfaces are interfaces activated on the Capsule within the Kubernetes cluster
and forwarded to the local machine (the host). The traffic is directed to a single target,
e.g. localhost:8080.
tunnelPort integerTunnelPort for which the proxy-capsule should listen on. This is automatically set by the tooling.

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.

InterfaceOptions

Appears in:

FieldDescription
tcp booleanTCP enables layer-4 proxying in favor of layer-7 HTTP proxying.
allowOrigin stringAllowOrigin sets the Access-Control-Allow-Origin Header on responses to
the provided value, allowing local by-pass of CORS rules.
Ignored if TCP is enabled.
changeOrigin booleanChangeOrigin changes the Host header to match the given target. If not set,
the Host header will be that of the original request.
This does not impact the Origin header - use Headers to set that.
Ignored if TCP is enabled.
headers object (keys:string, values:string)Headers to set on the proxy-requests.
Ignored if TCP is enabled.

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

PathMatchType

Underlying type: string

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

Appears in:

ProjEnvCapsuleBase

Appears in:

FieldDescription
files File array
env EnvironmentVariables

Project

FieldDescription
apiVersion stringrig.platform/v1
kind stringProject
kind stringKind is a string value representing the REST resource this object represents.
Servers may infer this from the endpoint the client submits requests to.
Cannot be updated.
In CamelCase.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
apiVersion stringAPIVersion defines the versioned schema of this representation of an object.
Servers should convert recognized schemas to the latest internal value, and
may reject unrecognized values.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
name stringName is unique
spec ProjEnvCapsuleBaseProject level defaults

ProxyInterface

Appears in:

FieldDescription
port integerPort to accept traffic from.
target stringTarget is the address:port to forward traffic to.
options InterfaceOptionsOptions to further configure the proxying aspects of the interface.

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.

Scale

Appears in:

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

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.