You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

3211 lines
204 KiB

<html><body>
<style>
body, h1, h2, h3, div, span, p, pre, a {
margin: 0;
padding: 0;
border: 0;
font-weight: inherit;
font-style: inherit;
font-size: 100%;
font-family: inherit;
vertical-align: baseline;
}
body {
font-size: 13px;
padding: 1em;
}
h1 {
font-size: 26px;
margin-bottom: 1em;
}
h2 {
font-size: 24px;
margin-bottom: 1em;
}
h3 {
font-size: 20px;
margin-bottom: 1em;
margin-top: 1em;
}
pre, code {
line-height: 1.5;
font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace;
}
pre {
margin-top: 0.5em;
}
h1, h2, h3, p {
font-family: Arial, sans serif;
}
h1, h2, h3 {
border-bottom: solid #CCC 1px;
}
.toc_element {
margin-top: 0.5em;
}
.firstline {
margin-left: 2 em;
}
.method {
margin-top: 1em;
border: solid 1px #CCC;
padding: 1em;
background: #EEE;
}
.details {
font-weight: bold;
font-size: 14px;
}
</style>
<h1><a href="run_v1alpha1.html">Cloud Run API</a> . <a href="run_v1alpha1.namespaces.html">namespaces</a> . <a href="run_v1alpha1.namespaces.revisions.html">revisions</a></h1>
<h2>Instance Methods</h2>
<p class="toc_element">
<code><a href="#delete">delete(name, kind=None, propagationPolicy=None, orphanDependents=None, apiVersion=None, x__xgafv=None)</a></code></p>
<p class="firstline">Rpc to delete a revision.</p>
<p class="toc_element">
<code><a href="#get">get(name, x__xgafv=None)</a></code></p>
<p class="firstline">Rpc to get information about a revision.</p>
<p class="toc_element">
<code><a href="#list">list(parent, labelSelector=None, includeUninitialized=None, x__xgafv=None, resourceVersion=None, limit=None, watch=None, continue=None, fieldSelector=None)</a></code></p>
<p class="firstline">Rpc to list revisions.</p>
<h3>Method Details</h3>
<div class="method">
<code class="details" id="delete">delete(name, kind=None, propagationPolicy=None, orphanDependents=None, apiVersion=None, x__xgafv=None)</code>
<pre>Rpc to delete a revision.
Args:
name: string, The name of the revision being deleted. If needed, replace
{namespace_id} with the project ID. (required)
kind: string, Cloud Run currently ignores this parameter.
propagationPolicy: string, Specifies the propagation policy of delete. Cloud Run currently ignores
this setting, and deletes in the background. Please see
kubernetes.io/docs/concepts/workloads/controllers/garbage-collection/ for
more information.
orphanDependents: boolean, Deprecated.
Specifies the cascade behavior on delete.
Cloud Run only supports cascading behavior, so this must be false.
This attribute is deprecated, and is now replaced with PropagationPolicy
See https://github.com/kubernetes/kubernetes/issues/46659 for more info.
apiVersion: string, Cloud Run currently ignores this parameter.
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # A generic empty message that you can re-use to avoid defining duplicated
# empty messages in your APIs. A typical example is to use it as the request
# or the response type of an API method. For instance:
#
# service Foo {
# rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
# }
#
# The JSON representation for `Empty` is empty JSON object `{}`.
}</pre>
</div>
<div class="method">
<code class="details" id="get">get(name, x__xgafv=None)</code>
<pre>Rpc to get information about a revision.
Args:
name: string, The name of the revision being retrieved. If needed, replace
{namespace_id} with the project ID. (required)
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # Revision is an immutable snapshot of code and configuration. A revision
# references a container image. Revisions are created by updates to a
# Configuration.
#
# Cloud Run does not currently support referencing a build that is responsible
# for materializing the container image from source.
#
# See also:
# https://github.com/knative/serving/blob/master/docs/spec/overview.md#revision
"status": { # RevisionStatus communicates the observed state of the Revision (from the # Status communicates the observed state of the Revision (from the
# controller).
# controller).
"observedGeneration": 42, # ObservedGeneration is the 'Generation' of the Revision that
# was last processed by the controller.
#
# Clients polling for completed reconciliation should poll until
# observedGeneration = metadata.generation, and the Ready condition's status
# is True or False.
"imageDigest": "A String", # ImageDigest holds the resolved digest for the image specified
# within .Spec.Container.Image. The digest is resolved during the creation
# of Revision. This field holds the digest value regardless of whether
# a tag or digest was originally specified in the Container object.
"serviceName": "A String", # Not currently used by Cloud Run.
"conditions": [ # Conditions communicates information about ongoing/complete
# reconciliation processes that bring the "spec" inline with the observed
# state of the world.
#
# As a Revision is being prepared, it will incrementally
# update conditions "ResourcesAvailable", "ContainerHealthy", and "Active",
# which contribute to the overall "Ready" condition.
{ # RevisionCondition defines a readiness condition for a Revision.
"status": "A String", # Status of the condition, one of True, False, Unknown.
"severity": "A String", # How to interpret failures of this condition, one of Error, Warning, Info
# +optional
"lastTransitionTime": "A String", # Last time the condition transitioned from one status to another.
# +optional
"reason": "A String", # One-word CamelCase reason for the condition's last transition.
# +optional
"message": "A String", # Human readable message indicating details about the current status.
# +optional
"type": "A String", # RevisionConditionType is used to communicate the status of the
# reconciliation process. See also:
# https://github.com/knative/serving/blob/master/docs/spec/errors.md#error-conditions-and-reporting
# Types include:
#
# * "Ready": True when the Revision is ready.
# * "ResourcesAvailable": True when underlying resources have been
# provisioned.
# * "ContainerHealthy": True when the Revision readiness check completes.
# * "Active": True when the Revision may receive traffic.
},
],
"logUrl": "A String", # Specifies the generated logging url for this particular revision
# based on the revision url template specified in the controller's config.
# +optional
},
"kind": "A String", # The kind of this resource, in this case "Revision".
"spec": { # RevisionSpec holds the desired state of the Revision (from the client). # Spec holds the desired state of the Revision (from the client).
"container": { # A single application container. # Container defines the unit of execution for this Revision.
# In the context of a Revision, we disallow a number of the fields of
# this Container, including: name, ports, and volumeMounts.
# The runtime contract is documented here:
# https://github.com/knative/serving/blob/master/docs/runtime-contract.md
# This specifies both the container to run, the command to run in the container
# and the arguments to supply to it.
# Note that additional arguments may be supplied by the system to the container
# at runtime.
"tty": True or False, # Whether this container should allocate a TTY for itself, also requires
# 'stdin' to be true. Default is false. +optional
"stdin": True or False, # Whether this container should allocate a buffer for stdin in the container
# runtime. If this is not set, reads from stdin in the container will always
# result in EOF. Default is false. +optional
"securityContext": { # SecurityContext holds security configuration that will be applied to a # Security options the pod should run with.
# More info: https://kubernetes.io/docs/concepts/policy/security-context/
# More info:
# https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
# +optional
# container. Some fields are present in both SecurityContext and
# PodSecurityContext. When both are set, the values in SecurityContext take
# precedence.
"readOnlyRootFilesystem": True or False, # Whether this container has a read-only root filesystem.
# Default is false.
# +optional
"runAsGroup": "A String", # The GID to run the entrypoint of the container process.
# Uses runtime default if unset.
# May also be set in PodSecurityContext. If set in both SecurityContext and
# PodSecurityContext, the value specified in SecurityContext takes
# precedence. +optional
"runAsUser": "A String", # The UID to run the entrypoint of the container process.
# Defaults to user specified in image metadata if unspecified.
# May also be set in PodSecurityContext. If set in both SecurityContext and
# PodSecurityContext, the value specified in SecurityContext takes
# precedence. +optional
"allowPrivilegeEscalation": True or False, # AllowPrivilegeEscalation controls whether a process can gain more
# privileges than its parent process. This bool directly controls if
# the no_new_privs flag will be set on the container process.
# AllowPrivilegeEscalation is true always when the container is:
# 1) run as Privileged
# 2) has CAP_SYS_ADMIN
# +optional
"capabilities": { # Adds and removes POSIX capabilities from running containers. # The capabilities to add/drop when running containers.
# Defaults to the default set of capabilities granted by the container
# runtime. +optional
"add": [ # Added capabilities
# +optional
"A String",
],
"drop": [ # Removed capabilities
# +optional
"A String",
],
},
"runAsNonRoot": True or False, # Indicates that the container must run as a non-root user.
# If true, the Kubelet will validate the image at runtime to ensure that it
# does not run as UID 0 (root) and fail to start the container if it does.
# If unset or false, no such validation will be performed.
# May also be set in PodSecurityContext. If set in both SecurityContext and
# PodSecurityContext, the value specified in SecurityContext takes
# precedence. +optional
"seLinuxOptions": { # SELinuxOptions are the labels to be applied to the container # The SELinux context to be applied to the container.
# If unspecified, the container runtime will allocate a random SELinux
# context for each container. May also be set in PodSecurityContext. If set
# in both SecurityContext and PodSecurityContext, the value specified in
# SecurityContext takes precedence. +optional
"role": "A String", # Role is a SELinux role label that applies to the container.
# +optional
"type": "A String", # Type is a SELinux type label that applies to the container.
# +optional
"user": "A String", # User is a SELinux user label that applies to the container.
# +optional
"level": "A String", # Level is SELinux level label that applies to the container.
# +optional
},
"privileged": True or False, # Run container in privileged mode.
# Processes in privileged containers are essentially equivalent to root on
# the host. Defaults to false. +optional
},
"name": "A String", # Name of the container specified as a DNS_LABEL.
# Each container must have a unique name (DNS_LABEL).
# Cannot be updated.
"envFrom": [ # List of sources to populate environment variables in the container.
# The keys defined within a source must be a C_IDENTIFIER. All invalid keys
# will be reported as an event when the container is starting. When a key
# exists in multiple sources, the value associated with the last source will
# take precedence. Values defined by an Env with a duplicate key will take
# precedence. Cannot be updated. +optional
{ # EnvFromSource represents the source of a set of ConfigMaps
"secretRef": { # SecretEnvSource selects a Secret to populate the environment # The Secret to select from
# +optional
# variables with.
#
# The contents of the target Secret's Data field will represent the
# key-value pairs as environment variables.
"localObjectReference": { # LocalObjectReference contains enough information to let you locate the # The Secret to select from.
# referenced object inside the same namespace.
"name": "A String", # Name of the referent.
# More info:
# https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
},
"optional": True or False, # Specify whether the Secret must be defined
# +optional
},
"configMapRef": { # ConfigMapEnvSource selects a ConfigMap to populate the environment # The ConfigMap to select from
# +optional
# variables with.
#
# The contents of the target ConfigMap's Data field will represent the
# key-value pairs as environment variables.
"localObjectReference": { # LocalObjectReference contains enough information to let you locate the # The ConfigMap to select from.
# referenced object inside the same namespace.
"name": "A String", # Name of the referent.
# More info:
# https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
},
"optional": True or False, # Specify whether the ConfigMap must be defined
# +optional
},
"prefix": "A String", # An optional identifier to prepend to each key in the ConfigMap. Must be a
# C_IDENTIFIER. +optional
},
],
"env": [ # List of environment variables to set in the container.
# Cannot be updated.
# +optional
{ # EnvVar represents an environment variable present in a Container.
"name": "A String", # Name of the environment variable. Must be a C_IDENTIFIER.
"value": "A String", # Variable references $(VAR_NAME) are expanded
# using the previous defined environment variables in the container and
# any route environment variables. If a variable cannot be resolved,
# the reference in the input string will be unchanged. The $(VAR_NAME)
# syntax can be escaped with a double $$, ie: $$(VAR_NAME). Escaped
# references will never be expanded, regardless of whether the variable
# exists or not.
# Defaults to "".
# +optional
},
],
"volumeMounts": [ # Pod volumes to mount into the container's filesystem.
# Cannot be updated.
# +optional
{ # VolumeMount describes a mounting of a Volume within a container.
"readOnly": True or False, # Mounted read-only if true, read-write otherwise (false or unspecified).
# Defaults to false.
# +optional
"mountPropagation": "A String", # mountPropagation determines how mounts are propagated from the host
# to container and the other way around.
# When not set, MountPropagationHostToContainer is used.
# This field is beta in 1.10.
# +optional
"subPath": "A String", # Path within the volume from which the container's volume should be mounted.
# Defaults to "" (volume's root).
# +optional
"name": "A String", # This must match the Name of a Volume.
"mountPath": "A String", # Path within the container at which the volume should be mounted. Must
# not contain ':'.
},
],
"volumeDevices": [ # volumeDevices is the list of block devices to be used by the container.
# This is an alpha feature and may change in the future.
# +optional
{ # volumeDevice describes a mapping of a raw block device within a container.
"devicePath": "A String", # devicePath is the path inside of the container that the device will be
# mapped to.
"name": "A String", # name must match the name of a persistentVolumeClaim in the pod
},
],
"args": [ # Arguments to the entrypoint.
# The docker image's CMD is used if this is not provided.
# Variable references $(VAR_NAME) are expanded using the container's
# environment. If a variable cannot be resolved, the reference in the input
# string will be unchanged. The $(VAR_NAME) syntax can be escaped with a
# double $$, ie: $$(VAR_NAME). Escaped references will never be expanded,
# regardless of whether the variable exists or not.
# Cannot be updated.
# More info:
# https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
# +optional
"A String",
],
"stdinOnce": True or False, # Whether the container runtime should close the stdin channel after it has
# been opened by a single attach. When stdin is true the stdin stream will
# remain open across multiple attach sessions. If stdinOnce is set to true,
# stdin is opened on container start, is empty until the first client
# attaches to stdin, and then remains open and accepts data until the client
# disconnects, at which time stdin is closed and remains closed until the
# container is restarted. If this flag is false, a container processes that
# reads from stdin will never receive an EOF. Default is false +optional
"terminationMessagePolicy": "A String", # Indicate how the termination message should be populated. File will use the
# contents of terminationMessagePath to populate the container status message
# on both success and failure. FallbackToLogsOnError will use the last chunk
# of container log output if the termination message file is empty and the
# container exited with an error. The log output is limited to 2048 bytes or
# 80 lines, whichever is smaller. Defaults to File. Cannot be updated.
# +optional
"lifecycle": { # Lifecycle describes actions that the management system should take in # Actions that the management system should take in response to container
# lifecycle events. Cannot be updated. +optional
# response to container lifecycle events. For the PostStart and PreStop
# lifecycle handlers, management of the container blocks until the action is
# complete, unless the container process fails, in which case the handler is
# aborted.
"preStop": { # Handler defines a specific action that should be taken # PreStop is called immediately before a container is terminated.
# The container is terminated after the handler completes.
# The reason for termination is passed to the handler.
# Regardless of the outcome of the handler, the container is eventually
# terminated. Other management of the container blocks until the hook
# completes. More info:
# https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
# +optional
"tcpSocket": { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
# TCP hooks not yet supported
"host": "A String", # Optional: Host name to connect to, defaults to the pod IP.
# +optional
"port": { # IntOrString is a type that can hold an int32 or a string. When used in # Number or name of the port to access on the container.
# Number must be in the range 1 to 65535.
# Name must be an IANA_SVC_NAME.
# JSON or YAML marshalling and unmarshalling, it produces or consumes the
# inner type. This allows you to have, for example, a JSON field that can
# accept a name or number.
"strVal": "A String", # The string value.
"type": "A String", # The type of the value.
"intVal": 42, # The int value.
},
},
"httpGet": { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
# +optional
"path": "A String", # Path to access on the HTTP server.
# +optional
"host": "A String", # Host name to connect to, defaults to the pod IP. You probably want to set
# "Host" in httpHeaders instead.
# +optional
"scheme": "A String", # Scheme to use for connecting to the host.
# Defaults to HTTP.
# +optional
"port": { # IntOrString is a type that can hold an int32 or a string. When used in # Name or number of the port to access on the container.
# Number must be in the range 1 to 65535.
# Name must be an IANA_SVC_NAME.
# JSON or YAML marshalling and unmarshalling, it produces or consumes the
# inner type. This allows you to have, for example, a JSON field that can
# accept a name or number.
"strVal": "A String", # The string value.
"type": "A String", # The type of the value.
"intVal": 42, # The int value.
},
"httpHeaders": [ # Custom headers to set in the request. HTTP allows repeated headers.
# +optional
{ # HTTPHeader describes a custom header to be used in HTTP probes
"name": "A String", # The header field name
"value": "A String", # The header field value
},
],
},
"exec": { # ExecAction describes a "run in container" action. # One and only one of the following should be specified.
# Exec specifies the action to take.
# +optional
"command": "A String", # Command is the command line to execute inside the container, the working
# directory for the command is root ('/') in the container's filesystem. The
# command is simply exec'd, it is not run inside a shell, so traditional
# shell instructions ('|', etc) won't work. To use a shell, you need to
# explicitly call out to that shell. Exit status of 0 is treated as
# live/healthy and non-zero is unhealthy. +optional
},
},
"postStart": { # Handler defines a specific action that should be taken # PostStart is called immediately after a container is created. If the
# handler fails, the container is terminated and restarted according to its
# restart policy. Other management of the container blocks until the hook
# completes. More info:
# https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
# +optional
"tcpSocket": { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
# TCP hooks not yet supported
"host": "A String", # Optional: Host name to connect to, defaults to the pod IP.
# +optional
"port": { # IntOrString is a type that can hold an int32 or a string. When used in # Number or name of the port to access on the container.
# Number must be in the range 1 to 65535.
# Name must be an IANA_SVC_NAME.
# JSON or YAML marshalling and unmarshalling, it produces or consumes the
# inner type. This allows you to have, for example, a JSON field that can
# accept a name or number.
"strVal": "A String", # The string value.
"type": "A String", # The type of the value.
"intVal": 42, # The int value.
},
},
"httpGet": { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
# +optional
"path": "A String", # Path to access on the HTTP server.
# +optional
"host": "A String", # Host name to connect to, defaults to the pod IP. You probably want to set
# "Host" in httpHeaders instead.
# +optional
"scheme": "A String", # Scheme to use for connecting to the host.
# Defaults to HTTP.
# +optional
"port": { # IntOrString is a type that can hold an int32 or a string. When used in # Name or number of the port to access on the container.
# Number must be in the range 1 to 65535.
# Name must be an IANA_SVC_NAME.
# JSON or YAML marshalling and unmarshalling, it produces or consumes the
# inner type. This allows you to have, for example, a JSON field that can
# accept a name or number.
"strVal": "A String", # The string value.
"type": "A String", # The type of the value.
"intVal": 42, # The int value.
},
"httpHeaders": [ # Custom headers to set in the request. HTTP allows repeated headers.
# +optional
{ # HTTPHeader describes a custom header to be used in HTTP probes
"name": "A String", # The header field name
"value": "A String", # The header field value
},
],
},
"exec": { # ExecAction describes a "run in container" action. # One and only one of the following should be specified.
# Exec specifies the action to take.
# +optional
"command": "A String", # Command is the command line to execute inside the container, the working
# directory for the command is root ('/') in the container's filesystem. The
# command is simply exec'd, it is not run inside a shell, so traditional
# shell instructions ('|', etc) won't work. To use a shell, you need to
# explicitly call out to that shell. Exit status of 0 is treated as
# live/healthy and non-zero is unhealthy. +optional
},
},
},
"command": [ # Entrypoint array. Not executed within a shell.
# The docker image's ENTRYPOINT is used if this is not provided.
# Variable references $(VAR_NAME) are expanded using the container's
# environment. If a variable cannot be resolved, the reference in the input
# string will be unchanged. The $(VAR_NAME) syntax can be escaped with a
# double $$, ie: $$(VAR_NAME). Escaped references will never be expanded,
# regardless of whether the variable exists or not.
# Cannot be updated.
# More info:
# https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
# +optional
"A String",
],
"livenessProbe": { # Probe describes a health check to be performed against a container to # Periodic probe of container liveness.
# Container will be restarted if the probe fails.
# Cannot be updated.
# More info:
# https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
# +optional
# determine whether it is alive or ready to receive traffic.
"timeoutSeconds": 42, # Number of seconds after which the probe times out.
# Defaults to 1 second. Minimum value is 1.
# More info:
# https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
# +optional
"initialDelaySeconds": 42, # Number of seconds after the container has started before liveness probes
# are initiated. More info:
# https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
# +optional
"handler": { # Handler defines a specific action that should be taken # The action taken to determine the health of a container
"tcpSocket": { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
# TCP hooks not yet supported
"host": "A String", # Optional: Host name to connect to, defaults to the pod IP.
# +optional
"port": { # IntOrString is a type that can hold an int32 or a string. When used in # Number or name of the port to access on the container.
# Number must be in the range 1 to 65535.
# Name must be an IANA_SVC_NAME.
# JSON or YAML marshalling and unmarshalling, it produces or consumes the
# inner type. This allows you to have, for example, a JSON field that can
# accept a name or number.
"strVal": "A String", # The string value.
"type": "A String", # The type of the value.
"intVal": 42, # The int value.
},
},
"httpGet": { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
# +optional
"path": "A String", # Path to access on the HTTP server.
# +optional
"host": "A String", # Host name to connect to, defaults to the pod IP. You probably want to set
# "Host" in httpHeaders instead.
# +optional
"scheme": "A String", # Scheme to use for connecting to the host.
# Defaults to HTTP.
# +optional
"port": { # IntOrString is a type that can hold an int32 or a string. When used in # Name or number of the port to access on the container.
# Number must be in the range 1 to 65535.
# Name must be an IANA_SVC_NAME.
# JSON or YAML marshalling and unmarshalling, it produces or consumes the
# inner type. This allows you to have, for example, a JSON field that can
# accept a name or number.
"strVal": "A String", # The string value.
"type": "A String", # The type of the value.
"intVal": 42, # The int value.
},
"httpHeaders": [ # Custom headers to set in the request. HTTP allows repeated headers.
# +optional
{ # HTTPHeader describes a custom header to be used in HTTP probes
"name": "A String", # The header field name
"value": "A String", # The header field value
},
],
},
"exec": { # ExecAction describes a "run in container" action. # One and only one of the following should be specified.
# Exec specifies the action to take.
# +optional
"command": "A String", # Command is the command line to execute inside the container, the working
# directory for the command is root ('/') in the container's filesystem. The
# command is simply exec'd, it is not run inside a shell, so traditional
# shell instructions ('|', etc) won't work. To use a shell, you need to
# explicitly call out to that shell. Exit status of 0 is treated as
# live/healthy and non-zero is unhealthy. +optional
},
},
"periodSeconds": 42, # How often (in seconds) to perform the probe.
# Default to 10 seconds. Minimum value is 1.
# +optional
"successThreshold": 42, # Minimum consecutive successes for the probe to be considered successful
# after having failed. Defaults to 1. Must be 1 for liveness. Minimum value
# is 1. +optional
"failureThreshold": 42, # Minimum consecutive failures for the probe to be considered failed after
# having succeeded. Defaults to 3. Minimum value is 1. +optional
},
"image": "A String", # Docker image name.
# More info: https://kubernetes.io/docs/concepts/containers/images
"imagePullPolicy": "A String", # Image pull policy.
# One of Always, Never, IfNotPresent.
# Defaults to Always if :latest tag is specified, or IfNotPresent otherwise.
# Cannot be updated.
# More info:
# https://kubernetes.io/docs/concepts/containers/images#updating-images
# +optional
"readinessProbe": { # Probe describes a health check to be performed against a container to # Periodic probe of container service readiness.
# Container will be removed from service endpoints if the probe fails.
# Cannot be updated.
# More info:
# https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
# +optional
# determine whether it is alive or ready to receive traffic.
"timeoutSeconds": 42, # Number of seconds after which the probe times out.
# Defaults to 1 second. Minimum value is 1.
# More info:
# https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
# +optional
"initialDelaySeconds": 42, # Number of seconds after the container has started before liveness probes
# are initiated. More info:
# https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
# +optional
"handler": { # Handler defines a specific action that should be taken # The action taken to determine the health of a container
"tcpSocket": { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
# TCP hooks not yet supported
"host": "A String", # Optional: Host name to connect to, defaults to the pod IP.
# +optional
"port": { # IntOrString is a type that can hold an int32 or a string. When used in # Number or name of the port to access on the container.
# Number must be in the range 1 to 65535.
# Name must be an IANA_SVC_NAME.
# JSON or YAML marshalling and unmarshalling, it produces or consumes the
# inner type. This allows you to have, for example, a JSON field that can
# accept a name or number.
"strVal": "A String", # The string value.
"type": "A String", # The type of the value.
"intVal": 42, # The int value.
},
},
"httpGet": { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
# +optional
"path": "A String", # Path to access on the HTTP server.
# +optional
"host": "A String", # Host name to connect to, defaults to the pod IP. You probably want to set
# "Host" in httpHeaders instead.
# +optional
"scheme": "A String", # Scheme to use for connecting to the host.
# Defaults to HTTP.
# +optional
"port": { # IntOrString is a type that can hold an int32 or a string. When used in # Name or number of the port to access on the container.
# Number must be in the range 1 to 65535.
# Name must be an IANA_SVC_NAME.
# JSON or YAML marshalling and unmarshalling, it produces or consumes the
# inner type. This allows you to have, for example, a JSON field that can
# accept a name or number.
"strVal": "A String", # The string value.
"type": "A String", # The type of the value.
"intVal": 42, # The int value.
},
"httpHeaders": [ # Custom headers to set in the request. HTTP allows repeated headers.
# +optional
{ # HTTPHeader describes a custom header to be used in HTTP probes
"name": "A String", # The header field name
"value": "A String", # The header field value
},
],
},
"exec": { # ExecAction describes a "run in container" action. # One and only one of the following should be specified.
# Exec specifies the action to take.
# +optional
"command": "A String", # Command is the command line to execute inside the container, the working
# directory for the command is root ('/') in the container's filesystem. The
# command is simply exec'd, it is not run inside a shell, so traditional
# shell instructions ('|', etc) won't work. To use a shell, you need to
# explicitly call out to that shell. Exit status of 0 is treated as
# live/healthy and non-zero is unhealthy. +optional
},
},
"periodSeconds": 42, # How often (in seconds) to perform the probe.
# Default to 10 seconds. Minimum value is 1.
# +optional
"successThreshold": 42, # Minimum consecutive successes for the probe to be considered successful
# after having failed. Defaults to 1. Must be 1 for liveness. Minimum value
# is 1. +optional
"failureThreshold": 42, # Minimum consecutive failures for the probe to be considered failed after
# having succeeded. Defaults to 3. Minimum value is 1. +optional
},
"terminationMessagePath": "A String", # Optional: Path at which the file to which the container's termination
# message will be written is mounted into the container's filesystem. Message
# written is intended to be brief final status, such as an assertion failure
# message. Will be truncated by the node if greater than 4096 bytes. The
# total message length across all containers will be limited to 12kb.
# Defaults to /dev/termination-log.
# Cannot be updated.
# +optional
"ports": [ # List of ports to expose from the container. Exposing a port here gives
# the system additional information about the network connections a
# container uses, but is primarily informational. Not specifying a port here
# DOES NOT prevent that port from being exposed. Any port which is
# listening on the default "0.0.0.0" address inside a container will be
# accessible from the network.
# Cannot be updated.
# +optional
{ # ContainerPort represents a network port in a single container.
"protocol": "A String", # Protocol for port. Must be UDP or TCP.
# Defaults to "TCP".
# +optional
"hostIP": "A String", # What host IP to bind the external port to.
# +optional
"containerPort": 42, # Number of port to expose on the pod's IP address.
# This must be a valid port number, 0 < x < 65536.
"name": "A String", # If specified, this must be an IANA_SVC_NAME and unique within the pod. Each
# named port in a pod must have a unique name. Name for the port that can be
# referred to by services.
# +optional
"hostPort": 42, # Number of port to expose on the host.
# If specified, this must be a valid port number, 0 < x < 65536.
# If HostNetwork is specified, this must match ContainerPort.
# Most containers do not need this.
# +optional
},
],
"resources": { # ResourceRequirements describes the compute resource requirements. # Compute Resources required by this container.
# Cannot be updated.
# More info:
# https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
# +optional
"requests": { # Requests describes the minimum amount of compute resources required.
# If Requests is omitted for a container, it defaults to Limits if that is
# explicitly specified, otherwise to an implementation-defined value.
# The values of the map is string form of the 'quantity' k8s type:
# https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go
"a_key": "A String",
},
"requestsInMap": { # Requests describes the minimum amount of compute resources required.
# If Requests is omitted for a container, it defaults to Limits if that is
# explicitly specified, otherwise to an implementation-defined value.
# This is a temporary field created to migrate away from the
# map<string, Quantity> requests field. This is done to become compliant
# with k8s style API.
# This field is deprecated in favor of requests field.
"a_key": { # The view model of a single quantity, e.g. "800 MiB". Corresponds to
# https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/generated.proto
"string": "A String", # Stringified version of the quantity, e.g., "800 MiB".
},
},
"limitsInMap": { # Limits describes the maximum amount of compute resources allowed.
# This is a temporary field created to migrate away from the
# map<string, Quantity> limits field. This is done to become compliant
# with k8s style API.
# This field is deprecated in favor of limits field.
"a_key": { # The view model of a single quantity, e.g. "800 MiB". Corresponds to
# https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/generated.proto
"string": "A String", # Stringified version of the quantity, e.g., "800 MiB".
},
},
"limits": { # Limits describes the maximum amount of compute resources allowed.
# The values of the map is string form of the 'quantity' k8s type:
# https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go
"a_key": "A String",
},
},
"workingDir": "A String", # Container's working directory.
# If not specified, the container runtime's default will be used, which
# might be configured in the container image.
# Cannot be updated.
# +optional
},
"serviceAccountName": "A String", # Not currently used by Cloud Run.
"timeoutSeconds": 42, # TimeoutSeconds holds the max duration the instance is allowed for
# responding to a request.
# Not currently used by Cloud Run.
"servingState": "A String", # ServingState holds a value describing the state the resources
# are in for this Revision.
# Users must not specify this when creating a revision. It is expected
# that the system will manipulate this based on routability and load.
#
# Populated by the system.
# Read-only.
"generation": 42, # Deprecated and not currently populated by Cloud Run. See
# metadata.generation instead, which is the sequence number containing the
# latest generation of the desired state.
#
# Read-only.
"concurrencyModel": "A String", # ConcurrencyModel specifies the desired concurrency model
# (Single or Multi) for the Revision. Defaults to Multi.
# Deprecated in favor of ContainerConcurrency.
# +optional
"containerConcurrency": 42, # ContainerConcurrency specifies the maximum allowed in-flight (concurrent)
# requests per container of the Revision. Values are:
# - `0` thread-safe, the system should manage the max concurrency. This is
# the default value.
# - `1` not-thread-safe. Single concurrency
# - `2-N` thread-safe, max concurrency of N
"volumes": [
{ # Volume represents a named volume in a container.
"configMap": { # Adapts a ConfigMap into a volume.
# The contents of the target ConfigMap's Data field will be presented in a
# volume as files using the keys in the Data field as the file names, unless
# the items element is populated with specific mappings of keys to paths.
"items": [ # If unspecified, each key-value pair in the Data field of the referenced
# Secret will be projected into the volume as a file whose name is the
# key and content is the value. If specified, the listed keys will be
# projected into the specified paths, and unlisted keys will not be
# present. If a key is specified which is not present in the Secret,
# the volume setup will error unless it is marked optional.
{ # Maps a string key to a path within a volume.
"path": "A String", # The relative path of the file to map the key to.
# May not be an absolute path.
# May not contain the path element '..'.
# May not start with the string '..'.
"mode": 42, # Mode bits to use on this file, must be a value between 0 and 0777. If not
# specified, the volume defaultMode will be used. This might be in conflict
# with other options that affect the file mode, like fsGroup, and the result
# can be other mode bits set. +optional
"key": "A String", # The key to project.
},
],
"optional": True or False, # Specify whether the Secret or its keys must be defined.
"name": "A String", # Name of the config.
"defaultMode": 42, # Mode bits to use on created files by default. Must be a value between 0 and
# 0777. Defaults to 0644. Directories within the path are not affected by
# this setting. This might be in conflict with other options that affect the
# file mode, like fsGroup, and the result can be other mode bits set.
},
"secret": { # The contents of the target Secret's Data field will be presented in a volume
# as files using the keys in the Data field as the file names.
"items": [ # If unspecified, each key-value pair in the Data field of the referenced
# Secret will be projected into the volume as a file whose name is the
# key and content is the value. If specified, the listed keys will be
# projected into the specified paths, and unlisted keys will not be
# present. If a key is specified which is not present in the Secret,
# the volume setup will error unless it is marked optional.
{ # Maps a string key to a path within a volume.
"path": "A String", # The relative path of the file to map the key to.
# May not be an absolute path.
# May not contain the path element '..'.
# May not start with the string '..'.
"mode": 42, # Mode bits to use on this file, must be a value between 0 and 0777. If not
# specified, the volume defaultMode will be used. This might be in conflict
# with other options that affect the file mode, like fsGroup, and the result
# can be other mode bits set. +optional
"key": "A String", # The key to project.
},
],
"optional": True or False, # Specify whether the Secret or its keys must be defined.
"defaultMode": 42, # Mode bits to use on created files by default. Must be a value between 0 and
# 0777. Defaults to 0644. Directories within the path are not affected by
# this setting. This might be in conflict with other options that affect the
# file mode, like fsGroup, and the result can be other mode bits set.
"secretName": "A String", # Name of the secret in the container's namespace to use.
},
"name": "A String", # Volume's name.
},
],
"containers": [ # Containers holds the single container that defines the unit of execution
# for this Revision. In the context of a Revision, we disallow a number of
# fields on this Container, including: name and lifecycle.
{ # A single application container.
# This specifies both the container to run, the command to run in the container
# and the arguments to supply to it.
# Note that additional arguments may be supplied by the system to the container
# at runtime.
"tty": True or False, # Whether this container should allocate a TTY for itself, also requires
# 'stdin' to be true. Default is false. +optional
"stdin": True or False, # Whether this container should allocate a buffer for stdin in the container
# runtime. If this is not set, reads from stdin in the container will always
# result in EOF. Default is false. +optional
"securityContext": { # SecurityContext holds security configuration that will be applied to a # Security options the pod should run with.
# More info: https://kubernetes.io/docs/concepts/policy/security-context/
# More info:
# https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
# +optional
# container. Some fields are present in both SecurityContext and
# PodSecurityContext. When both are set, the values in SecurityContext take
# precedence.
"readOnlyRootFilesystem": True or False, # Whether this container has a read-only root filesystem.
# Default is false.
# +optional
"runAsGroup": "A String", # The GID to run the entrypoint of the container process.
# Uses runtime default if unset.
# May also be set in PodSecurityContext. If set in both SecurityContext and
# PodSecurityContext, the value specified in SecurityContext takes
# precedence. +optional
"runAsUser": "A String", # The UID to run the entrypoint of the container process.
# Defaults to user specified in image metadata if unspecified.
# May also be set in PodSecurityContext. If set in both SecurityContext and
# PodSecurityContext, the value specified in SecurityContext takes
# precedence. +optional
"allowPrivilegeEscalation": True or False, # AllowPrivilegeEscalation controls whether a process can gain more
# privileges than its parent process. This bool directly controls if
# the no_new_privs flag will be set on the container process.
# AllowPrivilegeEscalation is true always when the container is:
# 1) run as Privileged
# 2) has CAP_SYS_ADMIN
# +optional
"capabilities": { # Adds and removes POSIX capabilities from running containers. # The capabilities to add/drop when running containers.
# Defaults to the default set of capabilities granted by the container
# runtime. +optional
"add": [ # Added capabilities
# +optional
"A String",
],
"drop": [ # Removed capabilities
# +optional
"A String",
],
},
"runAsNonRoot": True or False, # Indicates that the container must run as a non-root user.
# If true, the Kubelet will validate the image at runtime to ensure that it
# does not run as UID 0 (root) and fail to start the container if it does.
# If unset or false, no such validation will be performed.
# May also be set in PodSecurityContext. If set in both SecurityContext and
# PodSecurityContext, the value specified in SecurityContext takes
# precedence. +optional
"seLinuxOptions": { # SELinuxOptions are the labels to be applied to the container # The SELinux context to be applied to the container.
# If unspecified, the container runtime will allocate a random SELinux
# context for each container. May also be set in PodSecurityContext. If set
# in both SecurityContext and PodSecurityContext, the value specified in
# SecurityContext takes precedence. +optional
"role": "A String", # Role is a SELinux role label that applies to the container.
# +optional
"type": "A String", # Type is a SELinux type label that applies to the container.
# +optional
"user": "A String", # User is a SELinux user label that applies to the container.
# +optional
"level": "A String", # Level is SELinux level label that applies to the container.
# +optional
},
"privileged": True or False, # Run container in privileged mode.
# Processes in privileged containers are essentially equivalent to root on
# the host. Defaults to false. +optional
},
"name": "A String", # Name of the container specified as a DNS_LABEL.
# Each container must have a unique name (DNS_LABEL).
# Cannot be updated.
"envFrom": [ # List of sources to populate environment variables in the container.
# The keys defined within a source must be a C_IDENTIFIER. All invalid keys
# will be reported as an event when the container is starting. When a key
# exists in multiple sources, the value associated with the last source will
# take precedence. Values defined by an Env with a duplicate key will take
# precedence. Cannot be updated. +optional
{ # EnvFromSource represents the source of a set of ConfigMaps
"secretRef": { # SecretEnvSource selects a Secret to populate the environment # The Secret to select from
# +optional
# variables with.
#
# The contents of the target Secret's Data field will represent the
# key-value pairs as environment variables.
"localObjectReference": { # LocalObjectReference contains enough information to let you locate the # The Secret to select from.
# referenced object inside the same namespace.
"name": "A String", # Name of the referent.
# More info:
# https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
},
"optional": True or False, # Specify whether the Secret must be defined
# +optional
},
"configMapRef": { # ConfigMapEnvSource selects a ConfigMap to populate the environment # The ConfigMap to select from
# +optional
# variables with.
#
# The contents of the target ConfigMap's Data field will represent the
# key-value pairs as environment variables.
"localObjectReference": { # LocalObjectReference contains enough information to let you locate the # The ConfigMap to select from.
# referenced object inside the same namespace.
"name": "A String", # Name of the referent.
# More info:
# https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
},
"optional": True or False, # Specify whether the ConfigMap must be defined
# +optional
},
"prefix": "A String", # An optional identifier to prepend to each key in the ConfigMap. Must be a
# C_IDENTIFIER. +optional
},
],
"env": [ # List of environment variables to set in the container.
# Cannot be updated.
# +optional
{ # EnvVar represents an environment variable present in a Container.
"name": "A String", # Name of the environment variable. Must be a C_IDENTIFIER.
"value": "A String", # Variable references $(VAR_NAME) are expanded
# using the previous defined environment variables in the container and
# any route environment variables. If a variable cannot be resolved,
# the reference in the input string will be unchanged. The $(VAR_NAME)
# syntax can be escaped with a double $$, ie: $$(VAR_NAME). Escaped
# references will never be expanded, regardless of whether the variable
# exists or not.
# Defaults to "".
# +optional
},
],
"volumeMounts": [ # Pod volumes to mount into the container's filesystem.
# Cannot be updated.
# +optional
{ # VolumeMount describes a mounting of a Volume within a container.
"readOnly": True or False, # Mounted read-only if true, read-write otherwise (false or unspecified).
# Defaults to false.
# +optional
"mountPropagation": "A String", # mountPropagation determines how mounts are propagated from the host
# to container and the other way around.
# When not set, MountPropagationHostToContainer is used.
# This field is beta in 1.10.
# +optional
"subPath": "A String", # Path within the volume from which the container's volume should be mounted.
# Defaults to "" (volume's root).
# +optional
"name": "A String", # This must match the Name of a Volume.
"mountPath": "A String", # Path within the container at which the volume should be mounted. Must
# not contain ':'.
},
],
"volumeDevices": [ # volumeDevices is the list of block devices to be used by the container.
# This is an alpha feature and may change in the future.
# +optional
{ # volumeDevice describes a mapping of a raw block device within a container.
"devicePath": "A String", # devicePath is the path inside of the container that the device will be
# mapped to.
"name": "A String", # name must match the name of a persistentVolumeClaim in the pod
},
],
"args": [ # Arguments to the entrypoint.
# The docker image's CMD is used if this is not provided.
# Variable references $(VAR_NAME) are expanded using the container's
# environment. If a variable cannot be resolved, the reference in the input
# string will be unchanged. The $(VAR_NAME) syntax can be escaped with a
# double $$, ie: $$(VAR_NAME). Escaped references will never be expanded,
# regardless of whether the variable exists or not.
# Cannot be updated.
# More info:
# https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
# +optional
"A String",
],
"stdinOnce": True or False, # Whether the container runtime should close the stdin channel after it has
# been opened by a single attach. When stdin is true the stdin stream will
# remain open across multiple attach sessions. If stdinOnce is set to true,
# stdin is opened on container start, is empty until the first client
# attaches to stdin, and then remains open and accepts data until the client
# disconnects, at which time stdin is closed and remains closed until the
# container is restarted. If this flag is false, a container processes that
# reads from stdin will never receive an EOF. Default is false +optional
"terminationMessagePolicy": "A String", # Indicate how the termination message should be populated. File will use the
# contents of terminationMessagePath to populate the container status message
# on both success and failure. FallbackToLogsOnError will use the last chunk
# of container log output if the termination message file is empty and the
# container exited with an error. The log output is limited to 2048 bytes or
# 80 lines, whichever is smaller. Defaults to File. Cannot be updated.
# +optional
"lifecycle": { # Lifecycle describes actions that the management system should take in # Actions that the management system should take in response to container
# lifecycle events. Cannot be updated. +optional
# response to container lifecycle events. For the PostStart and PreStop
# lifecycle handlers, management of the container blocks until the action is
# complete, unless the container process fails, in which case the handler is
# aborted.
"preStop": { # Handler defines a specific action that should be taken # PreStop is called immediately before a container is terminated.
# The container is terminated after the handler completes.
# The reason for termination is passed to the handler.
# Regardless of the outcome of the handler, the container is eventually
# terminated. Other management of the container blocks until the hook
# completes. More info:
# https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
# +optional
"tcpSocket": { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
# TCP hooks not yet supported
"host": "A String", # Optional: Host name to connect to, defaults to the pod IP.
# +optional
"port": { # IntOrString is a type that can hold an int32 or a string. When used in # Number or name of the port to access on the container.
# Number must be in the range 1 to 65535.
# Name must be an IANA_SVC_NAME.
# JSON or YAML marshalling and unmarshalling, it produces or consumes the
# inner type. This allows you to have, for example, a JSON field that can
# accept a name or number.
"strVal": "A String", # The string value.
"type": "A String", # The type of the value.
"intVal": 42, # The int value.
},
},
"httpGet": { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
# +optional
"path": "A String", # Path to access on the HTTP server.
# +optional
"host": "A String", # Host name to connect to, defaults to the pod IP. You probably want to set
# "Host" in httpHeaders instead.
# +optional
"scheme": "A String", # Scheme to use for connecting to the host.
# Defaults to HTTP.
# +optional
"port": { # IntOrString is a type that can hold an int32 or a string. When used in # Name or number of the port to access on the container.
# Number must be in the range 1 to 65535.
# Name must be an IANA_SVC_NAME.
# JSON or YAML marshalling and unmarshalling, it produces or consumes the
# inner type. This allows you to have, for example, a JSON field that can
# accept a name or number.
"strVal": "A String", # The string value.
"type": "A String", # The type of the value.
"intVal": 42, # The int value.
},
"httpHeaders": [ # Custom headers to set in the request. HTTP allows repeated headers.
# +optional
{ # HTTPHeader describes a custom header to be used in HTTP probes
"name": "A String", # The header field name
"value": "A String", # The header field value
},
],
},
"exec": { # ExecAction describes a "run in container" action. # One and only one of the following should be specified.
# Exec specifies the action to take.
# +optional
"command": "A String", # Command is the command line to execute inside the container, the working
# directory for the command is root ('/') in the container's filesystem. The
# command is simply exec'd, it is not run inside a shell, so traditional
# shell instructions ('|', etc) won't work. To use a shell, you need to
# explicitly call out to that shell. Exit status of 0 is treated as
# live/healthy and non-zero is unhealthy. +optional
},
},
"postStart": { # Handler defines a specific action that should be taken # PostStart is called immediately after a container is created. If the
# handler fails, the container is terminated and restarted according to its
# restart policy. Other management of the container blocks until the hook
# completes. More info:
# https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
# +optional
"tcpSocket": { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
# TCP hooks not yet supported
"host": "A String", # Optional: Host name to connect to, defaults to the pod IP.
# +optional
"port": { # IntOrString is a type that can hold an int32 or a string. When used in # Number or name of the port to access on the container.
# Number must be in the range 1 to 65535.
# Name must be an IANA_SVC_NAME.
# JSON or YAML marshalling and unmarshalling, it produces or consumes the
# inner type. This allows you to have, for example, a JSON field that can
# accept a name or number.
"strVal": "A String", # The string value.
"type": "A String", # The type of the value.
"intVal": 42, # The int value.
},
},
"httpGet": { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
# +optional
"path": "A String", # Path to access on the HTTP server.
# +optional
"host": "A String", # Host name to connect to, defaults to the pod IP. You probably want to set
# "Host" in httpHeaders instead.
# +optional
"scheme": "A String", # Scheme to use for connecting to the host.
# Defaults to HTTP.
# +optional
"port": { # IntOrString is a type that can hold an int32 or a string. When used in # Name or number of the port to access on the container.
# Number must be in the range 1 to 65535.
# Name must be an IANA_SVC_NAME.
# JSON or YAML marshalling and unmarshalling, it produces or consumes the
# inner type. This allows you to have, for example, a JSON field that can
# accept a name or number.
"strVal": "A String", # The string value.
"type": "A String", # The type of the value.
"intVal": 42, # The int value.
},
"httpHeaders": [ # Custom headers to set in the request. HTTP allows repeated headers.
# +optional
{ # HTTPHeader describes a custom header to be used in HTTP probes
"name": "A String", # The header field name
"value": "A String", # The header field value
},
],
},
"exec": { # ExecAction describes a "run in container" action. # One and only one of the following should be specified.
# Exec specifies the action to take.
# +optional
"command": "A String", # Command is the command line to execute inside the container, the working
# directory for the command is root ('/') in the container's filesystem. The
# command is simply exec'd, it is not run inside a shell, so traditional
# shell instructions ('|', etc) won't work. To use a shell, you need to
# explicitly call out to that shell. Exit status of 0 is treated as
# live/healthy and non-zero is unhealthy. +optional
},
},
},
"command": [ # Entrypoint array. Not executed within a shell.
# The docker image's ENTRYPOINT is used if this is not provided.
# Variable references $(VAR_NAME) are expanded using the container's
# environment. If a variable cannot be resolved, the reference in the input
# string will be unchanged. The $(VAR_NAME) syntax can be escaped with a
# double $$, ie: $$(VAR_NAME). Escaped references will never be expanded,
# regardless of whether the variable exists or not.
# Cannot be updated.
# More info:
# https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
# +optional
"A String",
],
"livenessProbe": { # Probe describes a health check to be performed against a container to # Periodic probe of container liveness.
# Container will be restarted if the probe fails.
# Cannot be updated.
# More info:
# https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
# +optional
# determine whether it is alive or ready to receive traffic.
"timeoutSeconds": 42, # Number of seconds after which the probe times out.
# Defaults to 1 second. Minimum value is 1.
# More info:
# https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
# +optional
"initialDelaySeconds": 42, # Number of seconds after the container has started before liveness probes
# are initiated. More info:
# https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
# +optional
"handler": { # Handler defines a specific action that should be taken # The action taken to determine the health of a container
"tcpSocket": { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
# TCP hooks not yet supported
"host": "A String", # Optional: Host name to connect to, defaults to the pod IP.
# +optional
"port": { # IntOrString is a type that can hold an int32 or a string. When used in # Number or name of the port to access on the container.
# Number must be in the range 1 to 65535.
# Name must be an IANA_SVC_NAME.
# JSON or YAML marshalling and unmarshalling, it produces or consumes the
# inner type. This allows you to have, for example, a JSON field that can
# accept a name or number.
"strVal": "A String", # The string value.
"type": "A String", # The type of the value.
"intVal": 42, # The int value.
},
},
"httpGet": { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
# +optional
"path": "A String", # Path to access on the HTTP server.
# +optional
"host": "A String", # Host name to connect to, defaults to the pod IP. You probably want to set
# "Host" in httpHeaders instead.
# +optional
"scheme": "A String", # Scheme to use for connecting to the host.
# Defaults to HTTP.
# +optional
"port": { # IntOrString is a type that can hold an int32 or a string. When used in # Name or number of the port to access on the container.
# Number must be in the range 1 to 65535.
# Name must be an IANA_SVC_NAME.
# JSON or YAML marshalling and unmarshalling, it produces or consumes the
# inner type. This allows you to have, for example, a JSON field that can
# accept a name or number.
"strVal": "A String", # The string value.
"type": "A String", # The type of the value.
"intVal": 42, # The int value.
},
"httpHeaders": [ # Custom headers to set in the request. HTTP allows repeated headers.
# +optional
{ # HTTPHeader describes a custom header to be used in HTTP probes
"name": "A String", # The header field name
"value": "A String", # The header field value
},
],
},
"exec": { # ExecAction describes a "run in container" action. # One and only one of the following should be specified.
# Exec specifies the action to take.
# +optional
"command": "A String", # Command is the command line to execute inside the container, the working
# directory for the command is root ('/') in the container's filesystem. The
# command is simply exec'd, it is not run inside a shell, so traditional
# shell instructions ('|', etc) won't work. To use a shell, you need to
# explicitly call out to that shell. Exit status of 0 is treated as
# live/healthy and non-zero is unhealthy. +optional
},
},
"periodSeconds": 42, # How often (in seconds) to perform the probe.
# Default to 10 seconds. Minimum value is 1.
# +optional
"successThreshold": 42, # Minimum consecutive successes for the probe to be considered successful
# after having failed. Defaults to 1. Must be 1 for liveness. Minimum value
# is 1. +optional
"failureThreshold": 42, # Minimum consecutive failures for the probe to be considered failed after
# having succeeded. Defaults to 3. Minimum value is 1. +optional
},
"image": "A String", # Docker image name.
# More info: https://kubernetes.io/docs/concepts/containers/images
"imagePullPolicy": "A String", # Image pull policy.
# One of Always, Never, IfNotPresent.
# Defaults to Always if :latest tag is specified, or IfNotPresent otherwise.
# Cannot be updated.
# More info:
# https://kubernetes.io/docs/concepts/containers/images#updating-images
# +optional
"readinessProbe": { # Probe describes a health check to be performed against a container to # Periodic probe of container service readiness.
# Container will be removed from service endpoints if the probe fails.
# Cannot be updated.
# More info:
# https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
# +optional
# determine whether it is alive or ready to receive traffic.
"timeoutSeconds": 42, # Number of seconds after which the probe times out.
# Defaults to 1 second. Minimum value is 1.
# More info:
# https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
# +optional
"initialDelaySeconds": 42, # Number of seconds after the container has started before liveness probes
# are initiated. More info:
# https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
# +optional
"handler": { # Handler defines a specific action that should be taken # The action taken to determine the health of a container
"tcpSocket": { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
# TCP hooks not yet supported
"host": "A String", # Optional: Host name to connect to, defaults to the pod IP.
# +optional
"port": { # IntOrString is a type that can hold an int32 or a string. When used in # Number or name of the port to access on the container.
# Number must be in the range 1 to 65535.
# Name must be an IANA_SVC_NAME.
# JSON or YAML marshalling and unmarshalling, it produces or consumes the
# inner type. This allows you to have, for example, a JSON field that can
# accept a name or number.
"strVal": "A String", # The string value.
"type": "A String", # The type of the value.
"intVal": 42, # The int value.
},
},
"httpGet": { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
# +optional
"path": "A String", # Path to access on the HTTP server.
# +optional
"host": "A String", # Host name to connect to, defaults to the pod IP. You probably want to set
# "Host" in httpHeaders instead.
# +optional
"scheme": "A String", # Scheme to use for connecting to the host.
# Defaults to HTTP.
# +optional
"port": { # IntOrString is a type that can hold an int32 or a string. When used in # Name or number of the port to access on the container.
# Number must be in the range 1 to 65535.
# Name must be an IANA_SVC_NAME.
# JSON or YAML marshalling and unmarshalling, it produces or consumes the
# inner type. This allows you to have, for example, a JSON field that can
# accept a name or number.
"strVal": "A String", # The string value.
"type": "A String", # The type of the value.
"intVal": 42, # The int value.
},
"httpHeaders": [ # Custom headers to set in the request. HTTP allows repeated headers.
# +optional
{ # HTTPHeader describes a custom header to be used in HTTP probes
"name": "A String", # The header field name
"value": "A String", # The header field value
},
],
},
"exec": { # ExecAction describes a "run in container" action. # One and only one of the following should be specified.
# Exec specifies the action to take.
# +optional
"command": "A String", # Command is the command line to execute inside the container, the working
# directory for the command is root ('/') in the container's filesystem. The
# command is simply exec'd, it is not run inside a shell, so traditional
# shell instructions ('|', etc) won't work. To use a shell, you need to
# explicitly call out to that shell. Exit status of 0 is treated as
# live/healthy and non-zero is unhealthy. +optional
},
},
"periodSeconds": 42, # How often (in seconds) to perform the probe.
# Default to 10 seconds. Minimum value is 1.
# +optional
"successThreshold": 42, # Minimum consecutive successes for the probe to be considered successful
# after having failed. Defaults to 1. Must be 1 for liveness. Minimum value
# is 1. +optional
"failureThreshold": 42, # Minimum consecutive failures for the probe to be considered failed after
# having succeeded. Defaults to 3. Minimum value is 1. +optional
},
"terminationMessagePath": "A String", # Optional: Path at which the file to which the container's termination
# message will be written is mounted into the container's filesystem. Message
# written is intended to be brief final status, such as an assertion failure
# message. Will be truncated by the node if greater than 4096 bytes. The
# total message length across all containers will be limited to 12kb.
# Defaults to /dev/termination-log.
# Cannot be updated.
# +optional
"ports": [ # List of ports to expose from the container. Exposing a port here gives
# the system additional information about the network connections a
# container uses, but is primarily informational. Not specifying a port here
# DOES NOT prevent that port from being exposed. Any port which is
# listening on the default "0.0.0.0" address inside a container will be
# accessible from the network.
# Cannot be updated.
# +optional
{ # ContainerPort represents a network port in a single container.
"protocol": "A String", # Protocol for port. Must be UDP or TCP.
# Defaults to "TCP".
# +optional
"hostIP": "A String", # What host IP to bind the external port to.
# +optional
"containerPort": 42, # Number of port to expose on the pod's IP address.
# This must be a valid port number, 0 < x < 65536.
"name": "A String", # If specified, this must be an IANA_SVC_NAME and unique within the pod. Each
# named port in a pod must have a unique name. Name for the port that can be
# referred to by services.
# +optional
"hostPort": 42, # Number of port to expose on the host.
# If specified, this must be a valid port number, 0 < x < 65536.
# If HostNetwork is specified, this must match ContainerPort.
# Most containers do not need this.
# +optional
},
],
"resources": { # ResourceRequirements describes the compute resource requirements. # Compute Resources required by this container.
# Cannot be updated.
# More info:
# https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
# +optional
"requests": { # Requests describes the minimum amount of compute resources required.
# If Requests is omitted for a container, it defaults to Limits if that is
# explicitly specified, otherwise to an implementation-defined value.
# The values of the map is string form of the 'quantity' k8s type:
# https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go
"a_key": "A String",
},
"requestsInMap": { # Requests describes the minimum amount of compute resources required.
# If Requests is omitted for a container, it defaults to Limits if that is
# explicitly specified, otherwise to an implementation-defined value.
# This is a temporary field created to migrate away from the
# map<string, Quantity> requests field. This is done to become compliant
# with k8s style API.
# This field is deprecated in favor of requests field.
"a_key": { # The view model of a single quantity, e.g. "800 MiB". Corresponds to
# https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/generated.proto
"string": "A String", # Stringified version of the quantity, e.g., "800 MiB".
},
},
"limitsInMap": { # Limits describes the maximum amount of compute resources allowed.
# This is a temporary field created to migrate away from the
# map<string, Quantity> limits field. This is done to become compliant
# with k8s style API.
# This field is deprecated in favor of limits field.
"a_key": { # The view model of a single quantity, e.g. "800 MiB". Corresponds to
# https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/generated.proto
"string": "A String", # Stringified version of the quantity, e.g., "800 MiB".
},
},
"limits": { # Limits describes the maximum amount of compute resources allowed.
# The values of the map is string form of the 'quantity' k8s type:
# https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go
"a_key": "A String",
},
},
"workingDir": "A String", # Container's working directory.
# If not specified, the container runtime's default will be used, which
# might be configured in the container image.
# Cannot be updated.
# +optional
},
],
},
"apiVersion": "A String", # The API version for this call such as "v1alpha1".
"metadata": { # ObjectMeta is metadata that all persisted resources must have, which includes # Metadata associated with this Revision, including name, namespace, labels,
# and annotations.
# all objects users must create.
"ownerReferences": [ # List of objects that own this object. If ALL objects in the list have
# been deleted, this object will be garbage collected.
# +optional
{ # OwnerReference contains enough information to let you identify an owning
# object. Currently, an owning object must be in the same namespace, so there
# is no namespace field.
"kind": "A String", # Kind of the referent.
# More info:
# https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds
"uid": "A String", # UID of the referent.
# More info: http://kubernetes.io/docs/user-guide/identifiers#uids
"apiVersion": "A String", # API version of the referent.
"controller": True or False, # If true, this reference points to the managing controller.
# +optional
"blockOwnerDeletion": True or False, # If true, AND if the owner has the "foregroundDeletion" finalizer, then
# the owner cannot be deleted from the key-value store until this
# reference is removed.
# Defaults to false.
# To set this field, a user needs "delete" permission of the owner,
# otherwise 422 (Unprocessable Entity) will be returned.
# +optional
"name": "A String", # Name of the referent.
# More info: http://kubernetes.io/docs/user-guide/identifiers#names
},
],
"name": "A String", # Name must be unique within a namespace, within a Cloud Run region.
# Is required when creating
# resources, although some resources may allow a client to request the
# generation of an appropriate name automatically. Name is primarily intended
# for creation idempotence and configuration definition. Cannot be updated.
# More info: http://kubernetes.io/docs/user-guide/identifiers#names
# +optional
"deletionTimestamp": "A String", # DeletionTimestamp is RFC 3339 date and time at which this resource will be
# deleted. This field is set by the server when a graceful deletion is
# requested by the user, and is not directly settable by a client. The
# resource is expected to be deleted (no longer visible from resource lists,
# and not reachable by name) after the time in this field, once the
# finalizers list is empty. As long as the finalizers list contains items,
# deletion is blocked. Once the deletionTimestamp is set, this value may not
# be unset or be set further into the future, although it may be shortened or
# the resource may be deleted prior to this time. For example, a user may
# request that a pod is deleted in 30 seconds. The Kubelet will react by
# sending a graceful termination signal to the containers in the pod. After
# that 30 seconds, the Kubelet will send a hard termination signal (SIGKILL)
# to the container and after cleanup, remove the pod from the API. In the
# presence of network partitions, this object may still exist after this
# timestamp, until an administrator or automated process can determine the
# resource is fully terminated.
# If not set, graceful deletion of the object has not been requested.
#
# Populated by the system when a graceful deletion is requested.
# Read-only.
# More info:
# https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
# +optional
"clusterName": "A String", # Not currently supported by Cloud Run.
#
# The name of the cluster which the object belongs to.
# This is used to distinguish resources with same name and namespace in
# different clusters. This field is not set anywhere right now and apiserver
# is going to ignore it if set in create or update request. +optional
"deletionGracePeriodSeconds": 42, # Not currently supported by Cloud Run.
#
# Number of seconds allowed for this object to gracefully terminate before
# it will be removed from the system. Only set when deletionTimestamp is also
# set. May only be shortened. Read-only. +optional
"labels": { # Map of string keys and values that can be used to organize and categorize
# (scope and select) objects. May match selectors of replication controllers
# and routes.
# More info: http://kubernetes.io/docs/user-guide/labels
# +optional
"a_key": "A String",
},
"namespace": "A String", # Namespace defines the space within each name must be unique, within a
# Cloud Run region. In Cloud Run the namespace must be equal to either the
# project ID or project number.
"generation": 42, # A sequence number representing a specific generation of the desired state.
# Populated by the system. Read-only.
# +optional
"finalizers": [ # Not currently supported by Cloud Run.
#
# Must be empty before the object is deleted from the registry. Each entry
# is an identifier for the responsible component that will remove the entry
# from the list. If the deletionTimestamp of the object is non-nil, entries
# in this list can only be removed.
# +optional
# +patchStrategy=merge
"A String",
],
"initializers": { # Initializers tracks the progress of initialization. # Not currently supported by Cloud Run.
#
# An initializer is a controller which enforces some system invariant at
# object creation time. This field is a list of initializers that have not
# yet acted on this object. If nil or empty, this object has been completely
# initialized. Otherwise, the object is considered uninitialized and is
# hidden (in list/watch and get calls) from clients that haven't explicitly
# asked to observe uninitialized objects.
#
# When an object is created, the system will populate this list with the
# current set of initializers. Only privileged users may set or modify this
# list. Once it is empty, it may not be modified further by any user.
"pending": [ # Pending is a list of initializers that must execute in order before this
# object is visible. When the last pending initializer is removed, and no
# failing result is set, the initializers struct will be set to nil and the
# object is considered as initialized and visible to all clients.
# +patchMergeKey=name
# +patchStrategy=merge
{ # Initializer is information about an initializer that has not yet completed.
"name": "A String", # name of the process that is responsible for initializing this object.
},
],
},
"resourceVersion": "A String", # An opaque value that represents the internal version of this object that
# can be used by clients to determine when objects have changed. May be used
# for optimistic concurrency, change detection, and the watch operation on a
# resource or set of resources. Clients must treat these values as opaque and
# passed unmodified back to the server. They may only be valid for a
# particular resource or set of resources.
#
# Populated by the system.
# Read-only.
# Value must be treated as opaque by clients and .
# More info:
# https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency
# +optional
"generateName": "A String", # Not currently supported by Cloud Run.
#
# GenerateName is an optional prefix, used by the server, to generate a
# unique name ONLY IF the Name field has not been provided. If this field is
# used, the name returned to the client will be different than the name
# passed. This value will also be combined with a unique suffix. The provided
# value has the same validation rules as the Name field, and may be truncated
# by the length of the suffix required to make the value unique on the
# server.
#
# If this field is specified and the generated name exists, the server will
# NOT return a 409 - instead, it will either return 201 Created or 500 with
# Reason ServerTimeout indicating a unique name could not be found in the
# time allotted, and the client should retry (optionally after the time
# indicated in the Retry-After header).
#
# Applied only if Name is not specified.
# More info:
# https://git.k8s.io/community/contributors/devel/api-conventions.md#idempotency
# +optional
# string generateName = 2;
"creationTimestamp": "A String", # CreationTimestamp is a timestamp representing the server time when this
# object was created. It is not guaranteed to be set in happens-before order
# across separate operations. Clients may not set this value. It is
# represented in RFC3339 form and is in UTC.
#
# Populated by the system.
# Read-only.
# Null for lists.
# More info:
# https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
# +optional
"annotations": { # Annotations is an unstructured key value map stored with a resource that
# may be set by external tools to store and retrieve arbitrary metadata. They
# are not queryable and should be preserved when modifying objects. More
# info: http://kubernetes.io/docs/user-guide/annotations +optional
"a_key": "A String",
},
"selfLink": "A String", # SelfLink is a URL representing this object.
# Populated by the system.
# Read-only.
# +optional
# string selfLink = 4;
"uid": "A String", # UID is the unique in time and space value for this object. It is typically
# generated by the server on successful creation of a resource and is not
# allowed to change on PUT operations.
#
# Populated by the system.
# Read-only.
# More info: http://kubernetes.io/docs/user-guide/identifiers#uids
# +optional
},
}</pre>
</div>
<div class="method">
<code class="details" id="list">list(parent, labelSelector=None, includeUninitialized=None, x__xgafv=None, resourceVersion=None, limit=None, watch=None, continue=None, fieldSelector=None)</code>
<pre>Rpc to list revisions.
Args:
parent: string, The project ID or project number from which the revisions should be listed. (required)
labelSelector: string, Allows to filter resources based on a label. Supported operations are
=, !=, exists, in, and notIn.
includeUninitialized: boolean, Not currently used by Cloud Run.
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
resourceVersion: string, The baseline resource version from which the list or watch operation should
start. Not currently used by Cloud Run.
limit: integer, The maximum number of records that should be returned.
watch: boolean, Flag that indicates that the client expects to watch this resource as well.
Not currently used by Cloud Run.
continue: string, Optional encoded string to continue paging.
fieldSelector: string, Allows to filter resources based on a specific value for a field name.
Send this in a query string format. i.e. 'metadata.name%3Dlorem'.
Not currently used by Cloud Run.
Returns:
An object of the form:
{ # ListRevisionsResponse is a list of Revision resources.
"items": [ # List of Revisions.
{ # Revision is an immutable snapshot of code and configuration. A revision
# references a container image. Revisions are created by updates to a
# Configuration.
#
# Cloud Run does not currently support referencing a build that is responsible
# for materializing the container image from source.
#
# See also:
# https://github.com/knative/serving/blob/master/docs/spec/overview.md#revision
"status": { # RevisionStatus communicates the observed state of the Revision (from the # Status communicates the observed state of the Revision (from the
# controller).
# controller).
"observedGeneration": 42, # ObservedGeneration is the 'Generation' of the Revision that
# was last processed by the controller.
#
# Clients polling for completed reconciliation should poll until
# observedGeneration = metadata.generation, and the Ready condition's status
# is True or False.
"imageDigest": "A String", # ImageDigest holds the resolved digest for the image specified
# within .Spec.Container.Image. The digest is resolved during the creation
# of Revision. This field holds the digest value regardless of whether
# a tag or digest was originally specified in the Container object.
"serviceName": "A String", # Not currently used by Cloud Run.
"conditions": [ # Conditions communicates information about ongoing/complete
# reconciliation processes that bring the "spec" inline with the observed
# state of the world.
#
# As a Revision is being prepared, it will incrementally
# update conditions "ResourcesAvailable", "ContainerHealthy", and "Active",
# which contribute to the overall "Ready" condition.
{ # RevisionCondition defines a readiness condition for a Revision.
"status": "A String", # Status of the condition, one of True, False, Unknown.
"severity": "A String", # How to interpret failures of this condition, one of Error, Warning, Info
# +optional
"lastTransitionTime": "A String", # Last time the condition transitioned from one status to another.
# +optional
"reason": "A String", # One-word CamelCase reason for the condition's last transition.
# +optional
"message": "A String", # Human readable message indicating details about the current status.
# +optional
"type": "A String", # RevisionConditionType is used to communicate the status of the
# reconciliation process. See also:
# https://github.com/knative/serving/blob/master/docs/spec/errors.md#error-conditions-and-reporting
# Types include:
#
# * "Ready": True when the Revision is ready.
# * "ResourcesAvailable": True when underlying resources have been
# provisioned.
# * "ContainerHealthy": True when the Revision readiness check completes.
# * "Active": True when the Revision may receive traffic.
},
],
"logUrl": "A String", # Specifies the generated logging url for this particular revision
# based on the revision url template specified in the controller's config.
# +optional
},
"kind": "A String", # The kind of this resource, in this case "Revision".
"spec": { # RevisionSpec holds the desired state of the Revision (from the client). # Spec holds the desired state of the Revision (from the client).
"container": { # A single application container. # Container defines the unit of execution for this Revision.
# In the context of a Revision, we disallow a number of the fields of
# this Container, including: name, ports, and volumeMounts.
# The runtime contract is documented here:
# https://github.com/knative/serving/blob/master/docs/runtime-contract.md
# This specifies both the container to run, the command to run in the container
# and the arguments to supply to it.
# Note that additional arguments may be supplied by the system to the container
# at runtime.
"tty": True or False, # Whether this container should allocate a TTY for itself, also requires
# 'stdin' to be true. Default is false. +optional
"stdin": True or False, # Whether this container should allocate a buffer for stdin in the container
# runtime. If this is not set, reads from stdin in the container will always
# result in EOF. Default is false. +optional
"securityContext": { # SecurityContext holds security configuration that will be applied to a # Security options the pod should run with.
# More info: https://kubernetes.io/docs/concepts/policy/security-context/
# More info:
# https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
# +optional
# container. Some fields are present in both SecurityContext and
# PodSecurityContext. When both are set, the values in SecurityContext take
# precedence.
"readOnlyRootFilesystem": True or False, # Whether this container has a read-only root filesystem.
# Default is false.
# +optional
"runAsGroup": "A String", # The GID to run the entrypoint of the container process.
# Uses runtime default if unset.
# May also be set in PodSecurityContext. If set in both SecurityContext and
# PodSecurityContext, the value specified in SecurityContext takes
# precedence. +optional
"runAsUser": "A String", # The UID to run the entrypoint of the container process.
# Defaults to user specified in image metadata if unspecified.
# May also be set in PodSecurityContext. If set in both SecurityContext and
# PodSecurityContext, the value specified in SecurityContext takes
# precedence. +optional
"allowPrivilegeEscalation": True or False, # AllowPrivilegeEscalation controls whether a process can gain more
# privileges than its parent process. This bool directly controls if
# the no_new_privs flag will be set on the container process.
# AllowPrivilegeEscalation is true always when the container is:
# 1) run as Privileged
# 2) has CAP_SYS_ADMIN
# +optional
"capabilities": { # Adds and removes POSIX capabilities from running containers. # The capabilities to add/drop when running containers.
# Defaults to the default set of capabilities granted by the container
# runtime. +optional
"add": [ # Added capabilities
# +optional
"A String",
],
"drop": [ # Removed capabilities
# +optional
"A String",
],
},
"runAsNonRoot": True or False, # Indicates that the container must run as a non-root user.
# If true, the Kubelet will validate the image at runtime to ensure that it
# does not run as UID 0 (root) and fail to start the container if it does.
# If unset or false, no such validation will be performed.
# May also be set in PodSecurityContext. If set in both SecurityContext and
# PodSecurityContext, the value specified in SecurityContext takes
# precedence. +optional
"seLinuxOptions": { # SELinuxOptions are the labels to be applied to the container # The SELinux context to be applied to the container.
# If unspecified, the container runtime will allocate a random SELinux
# context for each container. May also be set in PodSecurityContext. If set
# in both SecurityContext and PodSecurityContext, the value specified in
# SecurityContext takes precedence. +optional
"role": "A String", # Role is a SELinux role label that applies to the container.
# +optional
"type": "A String", # Type is a SELinux type label that applies to the container.
# +optional
"user": "A String", # User is a SELinux user label that applies to the container.
# +optional
"level": "A String", # Level is SELinux level label that applies to the container.
# +optional
},
"privileged": True or False, # Run container in privileged mode.
# Processes in privileged containers are essentially equivalent to root on
# the host. Defaults to false. +optional
},
"name": "A String", # Name of the container specified as a DNS_LABEL.
# Each container must have a unique name (DNS_LABEL).
# Cannot be updated.
"envFrom": [ # List of sources to populate environment variables in the container.
# The keys defined within a source must be a C_IDENTIFIER. All invalid keys
# will be reported as an event when the container is starting. When a key
# exists in multiple sources, the value associated with the last source will
# take precedence. Values defined by an Env with a duplicate key will take
# precedence. Cannot be updated. +optional
{ # EnvFromSource represents the source of a set of ConfigMaps
"secretRef": { # SecretEnvSource selects a Secret to populate the environment # The Secret to select from
# +optional
# variables with.
#
# The contents of the target Secret's Data field will represent the
# key-value pairs as environment variables.
"localObjectReference": { # LocalObjectReference contains enough information to let you locate the # The Secret to select from.
# referenced object inside the same namespace.
"name": "A String", # Name of the referent.
# More info:
# https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
},
"optional": True or False, # Specify whether the Secret must be defined
# +optional
},
"configMapRef": { # ConfigMapEnvSource selects a ConfigMap to populate the environment # The ConfigMap to select from
# +optional
# variables with.
#
# The contents of the target ConfigMap's Data field will represent the
# key-value pairs as environment variables.
"localObjectReference": { # LocalObjectReference contains enough information to let you locate the # The ConfigMap to select from.
# referenced object inside the same namespace.
"name": "A String", # Name of the referent.
# More info:
# https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
},
"optional": True or False, # Specify whether the ConfigMap must be defined
# +optional
},
"prefix": "A String", # An optional identifier to prepend to each key in the ConfigMap. Must be a
# C_IDENTIFIER. +optional
},
],
"env": [ # List of environment variables to set in the container.
# Cannot be updated.
# +optional
{ # EnvVar represents an environment variable present in a Container.
"name": "A String", # Name of the environment variable. Must be a C_IDENTIFIER.
"value": "A String", # Variable references $(VAR_NAME) are expanded
# using the previous defined environment variables in the container and
# any route environment variables. If a variable cannot be resolved,
# the reference in the input string will be unchanged. The $(VAR_NAME)
# syntax can be escaped with a double $$, ie: $$(VAR_NAME). Escaped
# references will never be expanded, regardless of whether the variable
# exists or not.
# Defaults to "".
# +optional
},
],
"volumeMounts": [ # Pod volumes to mount into the container's filesystem.
# Cannot be updated.
# +optional
{ # VolumeMount describes a mounting of a Volume within a container.
"readOnly": True or False, # Mounted read-only if true, read-write otherwise (false or unspecified).
# Defaults to false.
# +optional
"mountPropagation": "A String", # mountPropagation determines how mounts are propagated from the host
# to container and the other way around.
# When not set, MountPropagationHostToContainer is used.
# This field is beta in 1.10.
# +optional
"subPath": "A String", # Path within the volume from which the container's volume should be mounted.
# Defaults to "" (volume's root).
# +optional
"name": "A String", # This must match the Name of a Volume.
"mountPath": "A String", # Path within the container at which the volume should be mounted. Must
# not contain ':'.
},
],
"volumeDevices": [ # volumeDevices is the list of block devices to be used by the container.
# This is an alpha feature and may change in the future.
# +optional
{ # volumeDevice describes a mapping of a raw block device within a container.
"devicePath": "A String", # devicePath is the path inside of the container that the device will be
# mapped to.
"name": "A String", # name must match the name of a persistentVolumeClaim in the pod
},
],
"args": [ # Arguments to the entrypoint.
# The docker image's CMD is used if this is not provided.
# Variable references $(VAR_NAME) are expanded using the container's
# environment. If a variable cannot be resolved, the reference in the input
# string will be unchanged. The $(VAR_NAME) syntax can be escaped with a
# double $$, ie: $$(VAR_NAME). Escaped references will never be expanded,
# regardless of whether the variable exists or not.
# Cannot be updated.
# More info:
# https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
# +optional
"A String",
],
"stdinOnce": True or False, # Whether the container runtime should close the stdin channel after it has
# been opened by a single attach. When stdin is true the stdin stream will
# remain open across multiple attach sessions. If stdinOnce is set to true,
# stdin is opened on container start, is empty until the first client
# attaches to stdin, and then remains open and accepts data until the client
# disconnects, at which time stdin is closed and remains closed until the
# container is restarted. If this flag is false, a container processes that
# reads from stdin will never receive an EOF. Default is false +optional
"terminationMessagePolicy": "A String", # Indicate how the termination message should be populated. File will use the
# contents of terminationMessagePath to populate the container status message
# on both success and failure. FallbackToLogsOnError will use the last chunk
# of container log output if the termination message file is empty and the
# container exited with an error. The log output is limited to 2048 bytes or
# 80 lines, whichever is smaller. Defaults to File. Cannot be updated.
# +optional
"lifecycle": { # Lifecycle describes actions that the management system should take in # Actions that the management system should take in response to container
# lifecycle events. Cannot be updated. +optional
# response to container lifecycle events. For the PostStart and PreStop
# lifecycle handlers, management of the container blocks until the action is
# complete, unless the container process fails, in which case the handler is
# aborted.
"preStop": { # Handler defines a specific action that should be taken # PreStop is called immediately before a container is terminated.
# The container is terminated after the handler completes.
# The reason for termination is passed to the handler.
# Regardless of the outcome of the handler, the container is eventually
# terminated. Other management of the container blocks until the hook
# completes. More info:
# https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
# +optional
"tcpSocket": { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
# TCP hooks not yet supported
"host": "A String", # Optional: Host name to connect to, defaults to the pod IP.
# +optional
"port": { # IntOrString is a type that can hold an int32 or a string. When used in # Number or name of the port to access on the container.
# Number must be in the range 1 to 65535.
# Name must be an IANA_SVC_NAME.
# JSON or YAML marshalling and unmarshalling, it produces or consumes the
# inner type. This allows you to have, for example, a JSON field that can
# accept a name or number.
"strVal": "A String", # The string value.
"type": "A String", # The type of the value.
"intVal": 42, # The int value.
},
},
"httpGet": { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
# +optional
"path": "A String", # Path to access on the HTTP server.
# +optional
"host": "A String", # Host name to connect to, defaults to the pod IP. You probably want to set
# "Host" in httpHeaders instead.
# +optional
"scheme": "A String", # Scheme to use for connecting to the host.
# Defaults to HTTP.
# +optional
"port": { # IntOrString is a type that can hold an int32 or a string. When used in # Name or number of the port to access on the container.
# Number must be in the range 1 to 65535.
# Name must be an IANA_SVC_NAME.
# JSON or YAML marshalling and unmarshalling, it produces or consumes the
# inner type. This allows you to have, for example, a JSON field that can
# accept a name or number.
"strVal": "A String", # The string value.
"type": "A String", # The type of the value.
"intVal": 42, # The int value.
},
"httpHeaders": [ # Custom headers to set in the request. HTTP allows repeated headers.
# +optional
{ # HTTPHeader describes a custom header to be used in HTTP probes
"name": "A String", # The header field name
"value": "A String", # The header field value
},
],
},
"exec": { # ExecAction describes a "run in container" action. # One and only one of the following should be specified.
# Exec specifies the action to take.
# +optional
"command": "A String", # Command is the command line to execute inside the container, the working
# directory for the command is root ('/') in the container's filesystem. The
# command is simply exec'd, it is not run inside a shell, so traditional
# shell instructions ('|', etc) won't work. To use a shell, you need to
# explicitly call out to that shell. Exit status of 0 is treated as
# live/healthy and non-zero is unhealthy. +optional
},
},
"postStart": { # Handler defines a specific action that should be taken # PostStart is called immediately after a container is created. If the
# handler fails, the container is terminated and restarted according to its
# restart policy. Other management of the container blocks until the hook
# completes. More info:
# https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
# +optional
"tcpSocket": { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
# TCP hooks not yet supported
"host": "A String", # Optional: Host name to connect to, defaults to the pod IP.
# +optional
"port": { # IntOrString is a type that can hold an int32 or a string. When used in # Number or name of the port to access on the container.
# Number must be in the range 1 to 65535.
# Name must be an IANA_SVC_NAME.
# JSON or YAML marshalling and unmarshalling, it produces or consumes the
# inner type. This allows you to have, for example, a JSON field that can
# accept a name or number.
"strVal": "A String", # The string value.
"type": "A String", # The type of the value.
"intVal": 42, # The int value.
},
},
"httpGet": { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
# +optional
"path": "A String", # Path to access on the HTTP server.
# +optional
"host": "A String", # Host name to connect to, defaults to the pod IP. You probably want to set
# "Host" in httpHeaders instead.
# +optional
"scheme": "A String", # Scheme to use for connecting to the host.
# Defaults to HTTP.
# +optional
"port": { # IntOrString is a type that can hold an int32 or a string. When used in # Name or number of the port to access on the container.
# Number must be in the range 1 to 65535.
# Name must be an IANA_SVC_NAME.
# JSON or YAML marshalling and unmarshalling, it produces or consumes the
# inner type. This allows you to have, for example, a JSON field that can
# accept a name or number.
"strVal": "A String", # The string value.
"type": "A String", # The type of the value.
"intVal": 42, # The int value.
},
"httpHeaders": [ # Custom headers to set in the request. HTTP allows repeated headers.
# +optional
{ # HTTPHeader describes a custom header to be used in HTTP probes
"name": "A String", # The header field name
"value": "A String", # The header field value
},
],
},
"exec": { # ExecAction describes a "run in container" action. # One and only one of the following should be specified.
# Exec specifies the action to take.
# +optional
"command": "A String", # Command is the command line to execute inside the container, the working
# directory for the command is root ('/') in the container's filesystem. The
# command is simply exec'd, it is not run inside a shell, so traditional
# shell instructions ('|', etc) won't work. To use a shell, you need to
# explicitly call out to that shell. Exit status of 0 is treated as
# live/healthy and non-zero is unhealthy. +optional
},
},
},
"command": [ # Entrypoint array. Not executed within a shell.
# The docker image's ENTRYPOINT is used if this is not provided.
# Variable references $(VAR_NAME) are expanded using the container's
# environment. If a variable cannot be resolved, the reference in the input
# string will be unchanged. The $(VAR_NAME) syntax can be escaped with a
# double $$, ie: $$(VAR_NAME). Escaped references will never be expanded,
# regardless of whether the variable exists or not.
# Cannot be updated.
# More info:
# https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
# +optional
"A String",
],
"livenessProbe": { # Probe describes a health check to be performed against a container to # Periodic probe of container liveness.
# Container will be restarted if the probe fails.
# Cannot be updated.
# More info:
# https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
# +optional
# determine whether it is alive or ready to receive traffic.
"timeoutSeconds": 42, # Number of seconds after which the probe times out.
# Defaults to 1 second. Minimum value is 1.
# More info:
# https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
# +optional
"initialDelaySeconds": 42, # Number of seconds after the container has started before liveness probes
# are initiated. More info:
# https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
# +optional
"handler": { # Handler defines a specific action that should be taken # The action taken to determine the health of a container
"tcpSocket": { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
# TCP hooks not yet supported
"host": "A String", # Optional: Host name to connect to, defaults to the pod IP.
# +optional
"port": { # IntOrString is a type that can hold an int32 or a string. When used in # Number or name of the port to access on the container.
# Number must be in the range 1 to 65535.
# Name must be an IANA_SVC_NAME.
# JSON or YAML marshalling and unmarshalling, it produces or consumes the
# inner type. This allows you to have, for example, a JSON field that can
# accept a name or number.
"strVal": "A String", # The string value.
"type": "A String", # The type of the value.
"intVal": 42, # The int value.
},
},
"httpGet": { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
# +optional
"path": "A String", # Path to access on the HTTP server.
# +optional
"host": "A String", # Host name to connect to, defaults to the pod IP. You probably want to set
# "Host" in httpHeaders instead.
# +optional
"scheme": "A String", # Scheme to use for connecting to the host.
# Defaults to HTTP.
# +optional
"port": { # IntOrString is a type that can hold an int32 or a string. When used in # Name or number of the port to access on the container.
# Number must be in the range 1 to 65535.
# Name must be an IANA_SVC_NAME.
# JSON or YAML marshalling and unmarshalling, it produces or consumes the
# inner type. This allows you to have, for example, a JSON field that can
# accept a name or number.
"strVal": "A String", # The string value.
"type": "A String", # The type of the value.
"intVal": 42, # The int value.
},
"httpHeaders": [ # Custom headers to set in the request. HTTP allows repeated headers.
# +optional
{ # HTTPHeader describes a custom header to be used in HTTP probes
"name": "A String", # The header field name
"value": "A String", # The header field value
},
],
},
"exec": { # ExecAction describes a "run in container" action. # One and only one of the following should be specified.
# Exec specifies the action to take.
# +optional
"command": "A String", # Command is the command line to execute inside the container, the working
# directory for the command is root ('/') in the container's filesystem. The
# command is simply exec'd, it is not run inside a shell, so traditional
# shell instructions ('|', etc) won't work. To use a shell, you need to
# explicitly call out to that shell. Exit status of 0 is treated as
# live/healthy and non-zero is unhealthy. +optional
},
},
"periodSeconds": 42, # How often (in seconds) to perform the probe.
# Default to 10 seconds. Minimum value is 1.
# +optional
"successThreshold": 42, # Minimum consecutive successes for the probe to be considered successful
# after having failed. Defaults to 1. Must be 1 for liveness. Minimum value
# is 1. +optional
"failureThreshold": 42, # Minimum consecutive failures for the probe to be considered failed after
# having succeeded. Defaults to 3. Minimum value is 1. +optional
},
"image": "A String", # Docker image name.
# More info: https://kubernetes.io/docs/concepts/containers/images
"imagePullPolicy": "A String", # Image pull policy.
# One of Always, Never, IfNotPresent.
# Defaults to Always if :latest tag is specified, or IfNotPresent otherwise.
# Cannot be updated.
# More info:
# https://kubernetes.io/docs/concepts/containers/images#updating-images
# +optional
"readinessProbe": { # Probe describes a health check to be performed against a container to # Periodic probe of container service readiness.
# Container will be removed from service endpoints if the probe fails.
# Cannot be updated.
# More info:
# https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
# +optional
# determine whether it is alive or ready to receive traffic.
"timeoutSeconds": 42, # Number of seconds after which the probe times out.
# Defaults to 1 second. Minimum value is 1.
# More info:
# https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
# +optional
"initialDelaySeconds": 42, # Number of seconds after the container has started before liveness probes
# are initiated. More info:
# https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
# +optional
"handler": { # Handler defines a specific action that should be taken # The action taken to determine the health of a container
"tcpSocket": { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
# TCP hooks not yet supported
"host": "A String", # Optional: Host name to connect to, defaults to the pod IP.
# +optional
"port": { # IntOrString is a type that can hold an int32 or a string. When used in # Number or name of the port to access on the container.
# Number must be in the range 1 to 65535.
# Name must be an IANA_SVC_NAME.
# JSON or YAML marshalling and unmarshalling, it produces or consumes the
# inner type. This allows you to have, for example, a JSON field that can
# accept a name or number.
"strVal": "A String", # The string value.
"type": "A String", # The type of the value.
"intVal": 42, # The int value.
},
},
"httpGet": { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
# +optional
"path": "A String", # Path to access on the HTTP server.
# +optional
"host": "A String", # Host name to connect to, defaults to the pod IP. You probably want to set
# "Host" in httpHeaders instead.
# +optional
"scheme": "A String", # Scheme to use for connecting to the host.
# Defaults to HTTP.
# +optional
"port": { # IntOrString is a type that can hold an int32 or a string. When used in # Name or number of the port to access on the container.
# Number must be in the range 1 to 65535.
# Name must be an IANA_SVC_NAME.
# JSON or YAML marshalling and unmarshalling, it produces or consumes the
# inner type. This allows you to have, for example, a JSON field that can
# accept a name or number.
"strVal": "A String", # The string value.
"type": "A String", # The type of the value.
"intVal": 42, # The int value.
},
"httpHeaders": [ # Custom headers to set in the request. HTTP allows repeated headers.
# +optional
{ # HTTPHeader describes a custom header to be used in HTTP probes
"name": "A String", # The header field name
"value": "A String", # The header field value
},
],
},
"exec": { # ExecAction describes a "run in container" action. # One and only one of the following should be specified.
# Exec specifies the action to take.
# +optional
"command": "A String", # Command is the command line to execute inside the container, the working
# directory for the command is root ('/') in the container's filesystem. The
# command is simply exec'd, it is not run inside a shell, so traditional
# shell instructions ('|', etc) won't work. To use a shell, you need to
# explicitly call out to that shell. Exit status of 0 is treated as
# live/healthy and non-zero is unhealthy. +optional
},
},
"periodSeconds": 42, # How often (in seconds) to perform the probe.
# Default to 10 seconds. Minimum value is 1.
# +optional
"successThreshold": 42, # Minimum consecutive successes for the probe to be considered successful
# after having failed. Defaults to 1. Must be 1 for liveness. Minimum value
# is 1. +optional
"failureThreshold": 42, # Minimum consecutive failures for the probe to be considered failed after
# having succeeded. Defaults to 3. Minimum value is 1. +optional
},
"terminationMessagePath": "A String", # Optional: Path at which the file to which the container's termination
# message will be written is mounted into the container's filesystem. Message
# written is intended to be brief final status, such as an assertion failure
# message. Will be truncated by the node if greater than 4096 bytes. The
# total message length across all containers will be limited to 12kb.
# Defaults to /dev/termination-log.
# Cannot be updated.
# +optional
"ports": [ # List of ports to expose from the container. Exposing a port here gives
# the system additional information about the network connections a
# container uses, but is primarily informational. Not specifying a port here
# DOES NOT prevent that port from being exposed. Any port which is
# listening on the default "0.0.0.0" address inside a container will be
# accessible from the network.
# Cannot be updated.
# +optional
{ # ContainerPort represents a network port in a single container.
"protocol": "A String", # Protocol for port. Must be UDP or TCP.
# Defaults to "TCP".
# +optional
"hostIP": "A String", # What host IP to bind the external port to.
# +optional
"containerPort": 42, # Number of port to expose on the pod's IP address.
# This must be a valid port number, 0 < x < 65536.
"name": "A String", # If specified, this must be an IANA_SVC_NAME and unique within the pod. Each
# named port in a pod must have a unique name. Name for the port that can be
# referred to by services.
# +optional
"hostPort": 42, # Number of port to expose on the host.
# If specified, this must be a valid port number, 0 < x < 65536.
# If HostNetwork is specified, this must match ContainerPort.
# Most containers do not need this.
# +optional
},
],
"resources": { # ResourceRequirements describes the compute resource requirements. # Compute Resources required by this container.
# Cannot be updated.
# More info:
# https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
# +optional
"requests": { # Requests describes the minimum amount of compute resources required.
# If Requests is omitted for a container, it defaults to Limits if that is
# explicitly specified, otherwise to an implementation-defined value.
# The values of the map is string form of the 'quantity' k8s type:
# https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go
"a_key": "A String",
},
"requestsInMap": { # Requests describes the minimum amount of compute resources required.
# If Requests is omitted for a container, it defaults to Limits if that is
# explicitly specified, otherwise to an implementation-defined value.
# This is a temporary field created to migrate away from the
# map<string, Quantity> requests field. This is done to become compliant
# with k8s style API.
# This field is deprecated in favor of requests field.
"a_key": { # The view model of a single quantity, e.g. "800 MiB". Corresponds to
# https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/generated.proto
"string": "A String", # Stringified version of the quantity, e.g., "800 MiB".
},
},
"limitsInMap": { # Limits describes the maximum amount of compute resources allowed.
# This is a temporary field created to migrate away from the
# map<string, Quantity> limits field. This is done to become compliant
# with k8s style API.
# This field is deprecated in favor of limits field.
"a_key": { # The view model of a single quantity, e.g. "800 MiB". Corresponds to
# https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/generated.proto
"string": "A String", # Stringified version of the quantity, e.g., "800 MiB".
},
},
"limits": { # Limits describes the maximum amount of compute resources allowed.
# The values of the map is string form of the 'quantity' k8s type:
# https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go
"a_key": "A String",
},
},
"workingDir": "A String", # Container's working directory.
# If not specified, the container runtime's default will be used, which
# might be configured in the container image.
# Cannot be updated.
# +optional
},
"serviceAccountName": "A String", # Not currently used by Cloud Run.
"timeoutSeconds": 42, # TimeoutSeconds holds the max duration the instance is allowed for
# responding to a request.
# Not currently used by Cloud Run.
"servingState": "A String", # ServingState holds a value describing the state the resources
# are in for this Revision.
# Users must not specify this when creating a revision. It is expected
# that the system will manipulate this based on routability and load.
#
# Populated by the system.
# Read-only.
"generation": 42, # Deprecated and not currently populated by Cloud Run. See
# metadata.generation instead, which is the sequence number containing the
# latest generation of the desired state.
#
# Read-only.
"concurrencyModel": "A String", # ConcurrencyModel specifies the desired concurrency model
# (Single or Multi) for the Revision. Defaults to Multi.
# Deprecated in favor of ContainerConcurrency.
# +optional
"containerConcurrency": 42, # ContainerConcurrency specifies the maximum allowed in-flight (concurrent)
# requests per container of the Revision. Values are:
# - `0` thread-safe, the system should manage the max concurrency. This is
# the default value.
# - `1` not-thread-safe. Single concurrency
# - `2-N` thread-safe, max concurrency of N
"volumes": [
{ # Volume represents a named volume in a container.
"configMap": { # Adapts a ConfigMap into a volume.
# The contents of the target ConfigMap's Data field will be presented in a
# volume as files using the keys in the Data field as the file names, unless
# the items element is populated with specific mappings of keys to paths.
"items": [ # If unspecified, each key-value pair in the Data field of the referenced
# Secret will be projected into the volume as a file whose name is the
# key and content is the value. If specified, the listed keys will be
# projected into the specified paths, and unlisted keys will not be
# present. If a key is specified which is not present in the Secret,
# the volume setup will error unless it is marked optional.
{ # Maps a string key to a path within a volume.
"path": "A String", # The relative path of the file to map the key to.
# May not be an absolute path.
# May not contain the path element '..'.
# May not start with the string '..'.
"mode": 42, # Mode bits to use on this file, must be a value between 0 and 0777. If not
# specified, the volume defaultMode will be used. This might be in conflict
# with other options that affect the file mode, like fsGroup, and the result
# can be other mode bits set. +optional
"key": "A String", # The key to project.
},
],
"optional": True or False, # Specify whether the Secret or its keys must be defined.
"name": "A String", # Name of the config.
"defaultMode": 42, # Mode bits to use on created files by default. Must be a value between 0 and
# 0777. Defaults to 0644. Directories within the path are not affected by
# this setting. This might be in conflict with other options that affect the
# file mode, like fsGroup, and the result can be other mode bits set.
},
"secret": { # The contents of the target Secret's Data field will be presented in a volume
# as files using the keys in the Data field as the file names.
"items": [ # If unspecified, each key-value pair in the Data field of the referenced
# Secret will be projected into the volume as a file whose name is the
# key and content is the value. If specified, the listed keys will be
# projected into the specified paths, and unlisted keys will not be
# present. If a key is specified which is not present in the Secret,
# the volume setup will error unless it is marked optional.
{ # Maps a string key to a path within a volume.
"path": "A String", # The relative path of the file to map the key to.
# May not be an absolute path.
# May not contain the path element '..'.
# May not start with the string '..'.
"mode": 42, # Mode bits to use on this file, must be a value between 0 and 0777. If not
# specified, the volume defaultMode will be used. This might be in conflict
# with other options that affect the file mode, like fsGroup, and the result
# can be other mode bits set. +optional
"key": "A String", # The key to project.
},
],
"optional": True or False, # Specify whether the Secret or its keys must be defined.
"defaultMode": 42, # Mode bits to use on created files by default. Must be a value between 0 and
# 0777. Defaults to 0644. Directories within the path are not affected by
# this setting. This might be in conflict with other options that affect the
# file mode, like fsGroup, and the result can be other mode bits set.
"secretName": "A String", # Name of the secret in the container's namespace to use.
},
"name": "A String", # Volume's name.
},
],
"containers": [ # Containers holds the single container that defines the unit of execution
# for this Revision. In the context of a Revision, we disallow a number of
# fields on this Container, including: name and lifecycle.
{ # A single application container.
# This specifies both the container to run, the command to run in the container
# and the arguments to supply to it.
# Note that additional arguments may be supplied by the system to the container
# at runtime.
"tty": True or False, # Whether this container should allocate a TTY for itself, also requires
# 'stdin' to be true. Default is false. +optional
"stdin": True or False, # Whether this container should allocate a buffer for stdin in the container
# runtime. If this is not set, reads from stdin in the container will always
# result in EOF. Default is false. +optional
"securityContext": { # SecurityContext holds security configuration that will be applied to a # Security options the pod should run with.
# More info: https://kubernetes.io/docs/concepts/policy/security-context/
# More info:
# https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
# +optional
# container. Some fields are present in both SecurityContext and
# PodSecurityContext. When both are set, the values in SecurityContext take
# precedence.
"readOnlyRootFilesystem": True or False, # Whether this container has a read-only root filesystem.
# Default is false.
# +optional
"runAsGroup": "A String", # The GID to run the entrypoint of the container process.
# Uses runtime default if unset.
# May also be set in PodSecurityContext. If set in both SecurityContext and
# PodSecurityContext, the value specified in SecurityContext takes
# precedence. +optional
"runAsUser": "A String", # The UID to run the entrypoint of the container process.
# Defaults to user specified in image metadata if unspecified.
# May also be set in PodSecurityContext. If set in both SecurityContext and
# PodSecurityContext, the value specified in SecurityContext takes
# precedence. +optional
"allowPrivilegeEscalation": True or False, # AllowPrivilegeEscalation controls whether a process can gain more
# privileges than its parent process. This bool directly controls if
# the no_new_privs flag will be set on the container process.
# AllowPrivilegeEscalation is true always when the container is:
# 1) run as Privileged
# 2) has CAP_SYS_ADMIN
# +optional
"capabilities": { # Adds and removes POSIX capabilities from running containers. # The capabilities to add/drop when running containers.
# Defaults to the default set of capabilities granted by the container
# runtime. +optional
"add": [ # Added capabilities
# +optional
"A String",
],
"drop": [ # Removed capabilities
# +optional
"A String",
],
},
"runAsNonRoot": True or False, # Indicates that the container must run as a non-root user.
# If true, the Kubelet will validate the image at runtime to ensure that it
# does not run as UID 0 (root) and fail to start the container if it does.
# If unset or false, no such validation will be performed.
# May also be set in PodSecurityContext. If set in both SecurityContext and
# PodSecurityContext, the value specified in SecurityContext takes
# precedence. +optional
"seLinuxOptions": { # SELinuxOptions are the labels to be applied to the container # The SELinux context to be applied to the container.
# If unspecified, the container runtime will allocate a random SELinux
# context for each container. May also be set in PodSecurityContext. If set
# in both SecurityContext and PodSecurityContext, the value specified in
# SecurityContext takes precedence. +optional
"role": "A String", # Role is a SELinux role label that applies to the container.
# +optional
"type": "A String", # Type is a SELinux type label that applies to the container.
# +optional
"user": "A String", # User is a SELinux user label that applies to the container.
# +optional
"level": "A String", # Level is SELinux level label that applies to the container.
# +optional
},
"privileged": True or False, # Run container in privileged mode.
# Processes in privileged containers are essentially equivalent to root on
# the host. Defaults to false. +optional
},
"name": "A String", # Name of the container specified as a DNS_LABEL.
# Each container must have a unique name (DNS_LABEL).
# Cannot be updated.
"envFrom": [ # List of sources to populate environment variables in the container.
# The keys defined within a source must be a C_IDENTIFIER. All invalid keys
# will be reported as an event when the container is starting. When a key
# exists in multiple sources, the value associated with the last source will
# take precedence. Values defined by an Env with a duplicate key will take
# precedence. Cannot be updated. +optional
{ # EnvFromSource represents the source of a set of ConfigMaps
"secretRef": { # SecretEnvSource selects a Secret to populate the environment # The Secret to select from
# +optional
# variables with.
#
# The contents of the target Secret's Data field will represent the
# key-value pairs as environment variables.
"localObjectReference": { # LocalObjectReference contains enough information to let you locate the # The Secret to select from.
# referenced object inside the same namespace.
"name": "A String", # Name of the referent.
# More info:
# https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
},
"optional": True or False, # Specify whether the Secret must be defined
# +optional
},
"configMapRef": { # ConfigMapEnvSource selects a ConfigMap to populate the environment # The ConfigMap to select from
# +optional
# variables with.
#
# The contents of the target ConfigMap's Data field will represent the
# key-value pairs as environment variables.
"localObjectReference": { # LocalObjectReference contains enough information to let you locate the # The ConfigMap to select from.
# referenced object inside the same namespace.
"name": "A String", # Name of the referent.
# More info:
# https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
},
"optional": True or False, # Specify whether the ConfigMap must be defined
# +optional
},
"prefix": "A String", # An optional identifier to prepend to each key in the ConfigMap. Must be a
# C_IDENTIFIER. +optional
},
],
"env": [ # List of environment variables to set in the container.
# Cannot be updated.
# +optional
{ # EnvVar represents an environment variable present in a Container.
"name": "A String", # Name of the environment variable. Must be a C_IDENTIFIER.
"value": "A String", # Variable references $(VAR_NAME) are expanded
# using the previous defined environment variables in the container and
# any route environment variables. If a variable cannot be resolved,
# the reference in the input string will be unchanged. The $(VAR_NAME)
# syntax can be escaped with a double $$, ie: $$(VAR_NAME). Escaped
# references will never be expanded, regardless of whether the variable
# exists or not.
# Defaults to "".
# +optional
},
],
"volumeMounts": [ # Pod volumes to mount into the container's filesystem.
# Cannot be updated.
# +optional
{ # VolumeMount describes a mounting of a Volume within a container.
"readOnly": True or False, # Mounted read-only if true, read-write otherwise (false or unspecified).
# Defaults to false.
# +optional
"mountPropagation": "A String", # mountPropagation determines how mounts are propagated from the host
# to container and the other way around.
# When not set, MountPropagationHostToContainer is used.
# This field is beta in 1.10.
# +optional
"subPath": "A String", # Path within the volume from which the container's volume should be mounted.
# Defaults to "" (volume's root).
# +optional
"name": "A String", # This must match the Name of a Volume.
"mountPath": "A String", # Path within the container at which the volume should be mounted. Must
# not contain ':'.
},
],
"volumeDevices": [ # volumeDevices is the list of block devices to be used by the container.
# This is an alpha feature and may change in the future.
# +optional
{ # volumeDevice describes a mapping of a raw block device within a container.
"devicePath": "A String", # devicePath is the path inside of the container that the device will be
# mapped to.
"name": "A String", # name must match the name of a persistentVolumeClaim in the pod
},
],
"args": [ # Arguments to the entrypoint.
# The docker image's CMD is used if this is not provided.
# Variable references $(VAR_NAME) are expanded using the container's
# environment. If a variable cannot be resolved, the reference in the input
# string will be unchanged. The $(VAR_NAME) syntax can be escaped with a
# double $$, ie: $$(VAR_NAME). Escaped references will never be expanded,
# regardless of whether the variable exists or not.
# Cannot be updated.
# More info:
# https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
# +optional
"A String",
],
"stdinOnce": True or False, # Whether the container runtime should close the stdin channel after it has
# been opened by a single attach. When stdin is true the stdin stream will
# remain open across multiple attach sessions. If stdinOnce is set to true,
# stdin is opened on container start, is empty until the first client
# attaches to stdin, and then remains open and accepts data until the client
# disconnects, at which time stdin is closed and remains closed until the
# container is restarted. If this flag is false, a container processes that
# reads from stdin will never receive an EOF. Default is false +optional
"terminationMessagePolicy": "A String", # Indicate how the termination message should be populated. File will use the
# contents of terminationMessagePath to populate the container status message
# on both success and failure. FallbackToLogsOnError will use the last chunk
# of container log output if the termination message file is empty and the
# container exited with an error. The log output is limited to 2048 bytes or
# 80 lines, whichever is smaller. Defaults to File. Cannot be updated.
# +optional
"lifecycle": { # Lifecycle describes actions that the management system should take in # Actions that the management system should take in response to container
# lifecycle events. Cannot be updated. +optional
# response to container lifecycle events. For the PostStart and PreStop
# lifecycle handlers, management of the container blocks until the action is
# complete, unless the container process fails, in which case the handler is
# aborted.
"preStop": { # Handler defines a specific action that should be taken # PreStop is called immediately before a container is terminated.
# The container is terminated after the handler completes.
# The reason for termination is passed to the handler.
# Regardless of the outcome of the handler, the container is eventually
# terminated. Other management of the container blocks until the hook
# completes. More info:
# https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
# +optional
"tcpSocket": { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
# TCP hooks not yet supported
"host": "A String", # Optional: Host name to connect to, defaults to the pod IP.
# +optional
"port": { # IntOrString is a type that can hold an int32 or a string. When used in # Number or name of the port to access on the container.
# Number must be in the range 1 to 65535.
# Name must be an IANA_SVC_NAME.
# JSON or YAML marshalling and unmarshalling, it produces or consumes the
# inner type. This allows you to have, for example, a JSON field that can
# accept a name or number.
"strVal": "A String", # The string value.
"type": "A String", # The type of the value.
"intVal": 42, # The int value.
},
},
"httpGet": { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
# +optional
"path": "A String", # Path to access on the HTTP server.
# +optional
"host": "A String", # Host name to connect to, defaults to the pod IP. You probably want to set
# "Host" in httpHeaders instead.
# +optional
"scheme": "A String", # Scheme to use for connecting to the host.
# Defaults to HTTP.
# +optional
"port": { # IntOrString is a type that can hold an int32 or a string. When used in # Name or number of the port to access on the container.
# Number must be in the range 1 to 65535.
# Name must be an IANA_SVC_NAME.
# JSON or YAML marshalling and unmarshalling, it produces or consumes the
# inner type. This allows you to have, for example, a JSON field that can
# accept a name or number.
"strVal": "A String", # The string value.
"type": "A String", # The type of the value.
"intVal": 42, # The int value.
},
"httpHeaders": [ # Custom headers to set in the request. HTTP allows repeated headers.
# +optional
{ # HTTPHeader describes a custom header to be used in HTTP probes
"name": "A String", # The header field name
"value": "A String", # The header field value
},
],
},
"exec": { # ExecAction describes a "run in container" action. # One and only one of the following should be specified.
# Exec specifies the action to take.
# +optional
"command": "A String", # Command is the command line to execute inside the container, the working
# directory for the command is root ('/') in the container's filesystem. The
# command is simply exec'd, it is not run inside a shell, so traditional
# shell instructions ('|', etc) won't work. To use a shell, you need to
# explicitly call out to that shell. Exit status of 0 is treated as
# live/healthy and non-zero is unhealthy. +optional
},
},
"postStart": { # Handler defines a specific action that should be taken # PostStart is called immediately after a container is created. If the
# handler fails, the container is terminated and restarted according to its
# restart policy. Other management of the container blocks until the hook
# completes. More info:
# https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
# +optional
"tcpSocket": { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
# TCP hooks not yet supported
"host": "A String", # Optional: Host name to connect to, defaults to the pod IP.
# +optional
"port": { # IntOrString is a type that can hold an int32 or a string. When used in # Number or name of the port to access on the container.
# Number must be in the range 1 to 65535.
# Name must be an IANA_SVC_NAME.
# JSON or YAML marshalling and unmarshalling, it produces or consumes the
# inner type. This allows you to have, for example, a JSON field that can
# accept a name or number.
"strVal": "A String", # The string value.
"type": "A String", # The type of the value.
"intVal": 42, # The int value.
},
},
"httpGet": { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
# +optional
"path": "A String", # Path to access on the HTTP server.
# +optional
"host": "A String", # Host name to connect to, defaults to the pod IP. You probably want to set
# "Host" in httpHeaders instead.
# +optional
"scheme": "A String", # Scheme to use for connecting to the host.
# Defaults to HTTP.
# +optional
"port": { # IntOrString is a type that can hold an int32 or a string. When used in # Name or number of the port to access on the container.
# Number must be in the range 1 to 65535.
# Name must be an IANA_SVC_NAME.
# JSON or YAML marshalling and unmarshalling, it produces or consumes the
# inner type. This allows you to have, for example, a JSON field that can
# accept a name or number.
"strVal": "A String", # The string value.
"type": "A String", # The type of the value.
"intVal": 42, # The int value.
},
"httpHeaders": [ # Custom headers to set in the request. HTTP allows repeated headers.
# +optional
{ # HTTPHeader describes a custom header to be used in HTTP probes
"name": "A String", # The header field name
"value": "A String", # The header field value
},
],
},
"exec": { # ExecAction describes a "run in container" action. # One and only one of the following should be specified.
# Exec specifies the action to take.
# +optional
"command": "A String", # Command is the command line to execute inside the container, the working
# directory for the command is root ('/') in the container's filesystem. The
# command is simply exec'd, it is not run inside a shell, so traditional
# shell instructions ('|', etc) won't work. To use a shell, you need to
# explicitly call out to that shell. Exit status of 0 is treated as
# live/healthy and non-zero is unhealthy. +optional
},
},
},
"command": [ # Entrypoint array. Not executed within a shell.
# The docker image's ENTRYPOINT is used if this is not provided.
# Variable references $(VAR_NAME) are expanded using the container's
# environment. If a variable cannot be resolved, the reference in the input
# string will be unchanged. The $(VAR_NAME) syntax can be escaped with a
# double $$, ie: $$(VAR_NAME). Escaped references will never be expanded,
# regardless of whether the variable exists or not.
# Cannot be updated.
# More info:
# https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
# +optional
"A String",
],
"livenessProbe": { # Probe describes a health check to be performed against a container to # Periodic probe of container liveness.
# Container will be restarted if the probe fails.
# Cannot be updated.
# More info:
# https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
# +optional
# determine whether it is alive or ready to receive traffic.
"timeoutSeconds": 42, # Number of seconds after which the probe times out.
# Defaults to 1 second. Minimum value is 1.
# More info:
# https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
# +optional
"initialDelaySeconds": 42, # Number of seconds after the container has started before liveness probes
# are initiated. More info:
# https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
# +optional
"handler": { # Handler defines a specific action that should be taken # The action taken to determine the health of a container
"tcpSocket": { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
# TCP hooks not yet supported
"host": "A String", # Optional: Host name to connect to, defaults to the pod IP.
# +optional
"port": { # IntOrString is a type that can hold an int32 or a string. When used in # Number or name of the port to access on the container.
# Number must be in the range 1 to 65535.
# Name must be an IANA_SVC_NAME.
# JSON or YAML marshalling and unmarshalling, it produces or consumes the
# inner type. This allows you to have, for example, a JSON field that can
# accept a name or number.
"strVal": "A String", # The string value.
"type": "A String", # The type of the value.
"intVal": 42, # The int value.
},
},
"httpGet": { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
# +optional
"path": "A String", # Path to access on the HTTP server.
# +optional
"host": "A String", # Host name to connect to, defaults to the pod IP. You probably want to set
# "Host" in httpHeaders instead.
# +optional
"scheme": "A String", # Scheme to use for connecting to the host.
# Defaults to HTTP.
# +optional
"port": { # IntOrString is a type that can hold an int32 or a string. When used in # Name or number of the port to access on the container.
# Number must be in the range 1 to 65535.
# Name must be an IANA_SVC_NAME.
# JSON or YAML marshalling and unmarshalling, it produces or consumes the
# inner type. This allows you to have, for example, a JSON field that can
# accept a name or number.
"strVal": "A String", # The string value.
"type": "A String", # The type of the value.
"intVal": 42, # The int value.
},
"httpHeaders": [ # Custom headers to set in the request. HTTP allows repeated headers.
# +optional
{ # HTTPHeader describes a custom header to be used in HTTP probes
"name": "A String", # The header field name
"value": "A String", # The header field value
},
],
},
"exec": { # ExecAction describes a "run in container" action. # One and only one of the following should be specified.
# Exec specifies the action to take.
# +optional
"command": "A String", # Command is the command line to execute inside the container, the working
# directory for the command is root ('/') in the container's filesystem. The
# command is simply exec'd, it is not run inside a shell, so traditional
# shell instructions ('|', etc) won't work. To use a shell, you need to
# explicitly call out to that shell. Exit status of 0 is treated as
# live/healthy and non-zero is unhealthy. +optional
},
},
"periodSeconds": 42, # How often (in seconds) to perform the probe.
# Default to 10 seconds. Minimum value is 1.
# +optional
"successThreshold": 42, # Minimum consecutive successes for the probe to be considered successful
# after having failed. Defaults to 1. Must be 1 for liveness. Minimum value
# is 1. +optional
"failureThreshold": 42, # Minimum consecutive failures for the probe to be considered failed after
# having succeeded. Defaults to 3. Minimum value is 1. +optional
},
"image": "A String", # Docker image name.
# More info: https://kubernetes.io/docs/concepts/containers/images
"imagePullPolicy": "A String", # Image pull policy.
# One of Always, Never, IfNotPresent.
# Defaults to Always if :latest tag is specified, or IfNotPresent otherwise.
# Cannot be updated.
# More info:
# https://kubernetes.io/docs/concepts/containers/images#updating-images
# +optional
"readinessProbe": { # Probe describes a health check to be performed against a container to # Periodic probe of container service readiness.
# Container will be removed from service endpoints if the probe fails.
# Cannot be updated.
# More info:
# https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
# +optional
# determine whether it is alive or ready to receive traffic.
"timeoutSeconds": 42, # Number of seconds after which the probe times out.
# Defaults to 1 second. Minimum value is 1.
# More info:
# https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
# +optional
"initialDelaySeconds": 42, # Number of seconds after the container has started before liveness probes
# are initiated. More info:
# https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
# +optional
"handler": { # Handler defines a specific action that should be taken # The action taken to determine the health of a container
"tcpSocket": { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
# TCP hooks not yet supported
"host": "A String", # Optional: Host name to connect to, defaults to the pod IP.
# +optional
"port": { # IntOrString is a type that can hold an int32 or a string. When used in # Number or name of the port to access on the container.
# Number must be in the range 1 to 65535.
# Name must be an IANA_SVC_NAME.
# JSON or YAML marshalling and unmarshalling, it produces or consumes the
# inner type. This allows you to have, for example, a JSON field that can
# accept a name or number.
"strVal": "A String", # The string value.
"type": "A String", # The type of the value.
"intVal": 42, # The int value.
},
},
"httpGet": { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
# +optional
"path": "A String", # Path to access on the HTTP server.
# +optional
"host": "A String", # Host name to connect to, defaults to the pod IP. You probably want to set
# "Host" in httpHeaders instead.
# +optional
"scheme": "A String", # Scheme to use for connecting to the host.
# Defaults to HTTP.
# +optional
"port": { # IntOrString is a type that can hold an int32 or a string. When used in # Name or number of the port to access on the container.
# Number must be in the range 1 to 65535.
# Name must be an IANA_SVC_NAME.
# JSON or YAML marshalling and unmarshalling, it produces or consumes the
# inner type. This allows you to have, for example, a JSON field that can
# accept a name or number.
"strVal": "A String", # The string value.
"type": "A String", # The type of the value.
"intVal": 42, # The int value.
},
"httpHeaders": [ # Custom headers to set in the request. HTTP allows repeated headers.
# +optional
{ # HTTPHeader describes a custom header to be used in HTTP probes
"name": "A String", # The header field name
"value": "A String", # The header field value
},
],
},
"exec": { # ExecAction describes a "run in container" action. # One and only one of the following should be specified.
# Exec specifies the action to take.
# +optional
"command": "A String", # Command is the command line to execute inside the container, the working
# directory for the command is root ('/') in the container's filesystem. The
# command is simply exec'd, it is not run inside a shell, so traditional
# shell instructions ('|', etc) won't work. To use a shell, you need to
# explicitly call out to that shell. Exit status of 0 is treated as
# live/healthy and non-zero is unhealthy. +optional
},
},
"periodSeconds": 42, # How often (in seconds) to perform the probe.
# Default to 10 seconds. Minimum value is 1.
# +optional
"successThreshold": 42, # Minimum consecutive successes for the probe to be considered successful
# after having failed. Defaults to 1. Must be 1 for liveness. Minimum value
# is 1. +optional
"failureThreshold": 42, # Minimum consecutive failures for the probe to be considered failed after
# having succeeded. Defaults to 3. Minimum value is 1. +optional
},
"terminationMessagePath": "A String", # Optional: Path at which the file to which the container's termination
# message will be written is mounted into the container's filesystem. Message
# written is intended to be brief final status, such as an assertion failure
# message. Will be truncated by the node if greater than 4096 bytes. The
# total message length across all containers will be limited to 12kb.
# Defaults to /dev/termination-log.
# Cannot be updated.
# +optional
"ports": [ # List of ports to expose from the container. Exposing a port here gives
# the system additional information about the network connections a
# container uses, but is primarily informational. Not specifying a port here
# DOES NOT prevent that port from being exposed. Any port which is
# listening on the default "0.0.0.0" address inside a container will be
# accessible from the network.
# Cannot be updated.
# +optional
{ # ContainerPort represents a network port in a single container.
"protocol": "A String", # Protocol for port. Must be UDP or TCP.
# Defaults to "TCP".
# +optional
"hostIP": "A String", # What host IP to bind the external port to.
# +optional
"containerPort": 42, # Number of port to expose on the pod's IP address.
# This must be a valid port number, 0 < x < 65536.
"name": "A String", # If specified, this must be an IANA_SVC_NAME and unique within the pod. Each
# named port in a pod must have a unique name. Name for the port that can be
# referred to by services.
# +optional
"hostPort": 42, # Number of port to expose on the host.
# If specified, this must be a valid port number, 0 < x < 65536.
# If HostNetwork is specified, this must match ContainerPort.
# Most containers do not need this.
# +optional
},
],
"resources": { # ResourceRequirements describes the compute resource requirements. # Compute Resources required by this container.
# Cannot be updated.
# More info:
# https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
# +optional
"requests": { # Requests describes the minimum amount of compute resources required.
# If Requests is omitted for a container, it defaults to Limits if that is
# explicitly specified, otherwise to an implementation-defined value.
# The values of the map is string form of the 'quantity' k8s type:
# https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go
"a_key": "A String",
},
"requestsInMap": { # Requests describes the minimum amount of compute resources required.
# If Requests is omitted for a container, it defaults to Limits if that is
# explicitly specified, otherwise to an implementation-defined value.
# This is a temporary field created to migrate away from the
# map<string, Quantity> requests field. This is done to become compliant
# with k8s style API.
# This field is deprecated in favor of requests field.
"a_key": { # The view model of a single quantity, e.g. "800 MiB". Corresponds to
# https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/generated.proto
"string": "A String", # Stringified version of the quantity, e.g., "800 MiB".
},
},
"limitsInMap": { # Limits describes the maximum amount of compute resources allowed.
# This is a temporary field created to migrate away from the
# map<string, Quantity> limits field. This is done to become compliant
# with k8s style API.
# This field is deprecated in favor of limits field.
"a_key": { # The view model of a single quantity, e.g. "800 MiB". Corresponds to
# https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/generated.proto
"string": "A String", # Stringified version of the quantity, e.g., "800 MiB".
},
},
"limits": { # Limits describes the maximum amount of compute resources allowed.
# The values of the map is string form of the 'quantity' k8s type:
# https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go
"a_key": "A String",
},
},
"workingDir": "A String", # Container's working directory.
# If not specified, the container runtime's default will be used, which
# might be configured in the container image.
# Cannot be updated.
# +optional
},
],
},
"apiVersion": "A String", # The API version for this call such as "v1alpha1".
"metadata": { # ObjectMeta is metadata that all persisted resources must have, which includes # Metadata associated with this Revision, including name, namespace, labels,
# and annotations.
# all objects users must create.
"ownerReferences": [ # List of objects that own this object. If ALL objects in the list have
# been deleted, this object will be garbage collected.
# +optional
{ # OwnerReference contains enough information to let you identify an owning
# object. Currently, an owning object must be in the same namespace, so there
# is no namespace field.
"kind": "A String", # Kind of the referent.
# More info:
# https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds
"uid": "A String", # UID of the referent.
# More info: http://kubernetes.io/docs/user-guide/identifiers#uids
"apiVersion": "A String", # API version of the referent.
"controller": True or False, # If true, this reference points to the managing controller.
# +optional
"blockOwnerDeletion": True or False, # If true, AND if the owner has the "foregroundDeletion" finalizer, then
# the owner cannot be deleted from the key-value store until this
# reference is removed.
# Defaults to false.
# To set this field, a user needs "delete" permission of the owner,
# otherwise 422 (Unprocessable Entity) will be returned.
# +optional
"name": "A String", # Name of the referent.
# More info: http://kubernetes.io/docs/user-guide/identifiers#names
},
],
"name": "A String", # Name must be unique within a namespace, within a Cloud Run region.
# Is required when creating
# resources, although some resources may allow a client to request the
# generation of an appropriate name automatically. Name is primarily intended
# for creation idempotence and configuration definition. Cannot be updated.
# More info: http://kubernetes.io/docs/user-guide/identifiers#names
# +optional
"deletionTimestamp": "A String", # DeletionTimestamp is RFC 3339 date and time at which this resource will be
# deleted. This field is set by the server when a graceful deletion is
# requested by the user, and is not directly settable by a client. The
# resource is expected to be deleted (no longer visible from resource lists,
# and not reachable by name) after the time in this field, once the
# finalizers list is empty. As long as the finalizers list contains items,
# deletion is blocked. Once the deletionTimestamp is set, this value may not
# be unset or be set further into the future, although it may be shortened or
# the resource may be deleted prior to this time. For example, a user may
# request that a pod is deleted in 30 seconds. The Kubelet will react by
# sending a graceful termination signal to the containers in the pod. After
# that 30 seconds, the Kubelet will send a hard termination signal (SIGKILL)
# to the container and after cleanup, remove the pod from the API. In the
# presence of network partitions, this object may still exist after this
# timestamp, until an administrator or automated process can determine the
# resource is fully terminated.
# If not set, graceful deletion of the object has not been requested.
#
# Populated by the system when a graceful deletion is requested.
# Read-only.
# More info:
# https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
# +optional
"clusterName": "A String", # Not currently supported by Cloud Run.
#
# The name of the cluster which the object belongs to.
# This is used to distinguish resources with same name and namespace in
# different clusters. This field is not set anywhere right now and apiserver
# is going to ignore it if set in create or update request. +optional
"deletionGracePeriodSeconds": 42, # Not currently supported by Cloud Run.
#
# Number of seconds allowed for this object to gracefully terminate before
# it will be removed from the system. Only set when deletionTimestamp is also
# set. May only be shortened. Read-only. +optional
"labels": { # Map of string keys and values that can be used to organize and categorize
# (scope and select) objects. May match selectors of replication controllers
# and routes.
# More info: http://kubernetes.io/docs/user-guide/labels
# +optional
"a_key": "A String",
},
"namespace": "A String", # Namespace defines the space within each name must be unique, within a
# Cloud Run region. In Cloud Run the namespace must be equal to either the
# project ID or project number.
"generation": 42, # A sequence number representing a specific generation of the desired state.
# Populated by the system. Read-only.
# +optional
"finalizers": [ # Not currently supported by Cloud Run.
#
# Must be empty before the object is deleted from the registry. Each entry
# is an identifier for the responsible component that will remove the entry
# from the list. If the deletionTimestamp of the object is non-nil, entries
# in this list can only be removed.
# +optional
# +patchStrategy=merge
"A String",
],
"initializers": { # Initializers tracks the progress of initialization. # Not currently supported by Cloud Run.
#
# An initializer is a controller which enforces some system invariant at
# object creation time. This field is a list of initializers that have not
# yet acted on this object. If nil or empty, this object has been completely
# initialized. Otherwise, the object is considered uninitialized and is
# hidden (in list/watch and get calls) from clients that haven't explicitly
# asked to observe uninitialized objects.
#
# When an object is created, the system will populate this list with the
# current set of initializers. Only privileged users may set or modify this
# list. Once it is empty, it may not be modified further by any user.
"pending": [ # Pending is a list of initializers that must execute in order before this
# object is visible. When the last pending initializer is removed, and no
# failing result is set, the initializers struct will be set to nil and the
# object is considered as initialized and visible to all clients.
# +patchMergeKey=name
# +patchStrategy=merge
{ # Initializer is information about an initializer that has not yet completed.
"name": "A String", # name of the process that is responsible for initializing this object.
},
],
},
"resourceVersion": "A String", # An opaque value that represents the internal version of this object that
# can be used by clients to determine when objects have changed. May be used
# for optimistic concurrency, change detection, and the watch operation on a
# resource or set of resources. Clients must treat these values as opaque and
# passed unmodified back to the server. They may only be valid for a
# particular resource or set of resources.
#
# Populated by the system.
# Read-only.
# Value must be treated as opaque by clients and .
# More info:
# https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency
# +optional
"generateName": "A String", # Not currently supported by Cloud Run.
#
# GenerateName is an optional prefix, used by the server, to generate a
# unique name ONLY IF the Name field has not been provided. If this field is
# used, the name returned to the client will be different than the name
# passed. This value will also be combined with a unique suffix. The provided
# value has the same validation rules as the Name field, and may be truncated
# by the length of the suffix required to make the value unique on the
# server.
#
# If this field is specified and the generated name exists, the server will
# NOT return a 409 - instead, it will either return 201 Created or 500 with
# Reason ServerTimeout indicating a unique name could not be found in the
# time allotted, and the client should retry (optionally after the time
# indicated in the Retry-After header).
#
# Applied only if Name is not specified.
# More info:
# https://git.k8s.io/community/contributors/devel/api-conventions.md#idempotency
# +optional
# string generateName = 2;
"creationTimestamp": "A String", # CreationTimestamp is a timestamp representing the server time when this
# object was created. It is not guaranteed to be set in happens-before order
# across separate operations. Clients may not set this value. It is
# represented in RFC3339 form and is in UTC.
#
# Populated by the system.
# Read-only.
# Null for lists.
# More info:
# https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
# +optional
"annotations": { # Annotations is an unstructured key value map stored with a resource that
# may be set by external tools to store and retrieve arbitrary metadata. They
# are not queryable and should be preserved when modifying objects. More
# info: http://kubernetes.io/docs/user-guide/annotations +optional
"a_key": "A String",
},
"selfLink": "A String", # SelfLink is a URL representing this object.
# Populated by the system.
# Read-only.
# +optional
# string selfLink = 4;
"uid": "A String", # UID is the unique in time and space value for this object. It is typically
# generated by the server on successful creation of a resource and is not
# allowed to change on PUT operations.
#
# Populated by the system.
# Read-only.
# More info: http://kubernetes.io/docs/user-guide/identifiers#uids
# +optional
},
},
],
"kind": "A String", # The kind of this resource, in this case "RevisionList".
"unreachable": [ # Locations that could not be reached.
"A String",
],
"apiVersion": "A String", # The API version for this call such as "v1alpha1".
"metadata": { # ListMeta describes metadata that synthetic resources must have, including # Metadata associated with this revision list.
# lists and various status objects. A resource may have only one of
# {ObjectMeta, ListMeta}.
"continue": "A String", # continue may be set if the user set a limit on the number of items
# returned, and indicates that the server has more data available. The value
# is opaque and may be used to issue another request to the endpoint that
# served this list to retrieve the next set of available objects. Continuing
# a list may not be possible if the server configuration has changed or more
# than a few minutes have passed. The resourceVersion field returned when
# using this continue value will be identical to the value in the first
# response.
"selfLink": "A String", # SelfLink is a URL representing this object.
# Populated by the system.
# Read-only.
# +optional
"resourceVersion": "A String", # String that identifies the server's internal version of this object that
# can be used by clients to determine when objects have changed. Value must
# be treated as opaque by clients and passed unmodified back to the server.
# Populated by the system.
# Read-only.
# More info:
# https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency
# +optional
},
}</pre>
</div>
</body></html>