blob: 45563209fee16d1f10008ea128c02802c30671db [file] [log] [blame]
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001<html><body>
2<style>
3
4body, h1, h2, h3, div, span, p, pre, a {
5 margin: 0;
6 padding: 0;
7 border: 0;
8 font-weight: inherit;
9 font-style: inherit;
10 font-size: 100%;
11 font-family: inherit;
12 vertical-align: baseline;
13}
14
15body {
16 font-size: 13px;
17 padding: 1em;
18}
19
20h1 {
21 font-size: 26px;
22 margin-bottom: 1em;
23}
24
25h2 {
26 font-size: 24px;
27 margin-bottom: 1em;
28}
29
30h3 {
31 font-size: 20px;
32 margin-bottom: 1em;
33 margin-top: 1em;
34}
35
36pre, code {
37 line-height: 1.5;
38 font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace;
39}
40
41pre {
42 margin-top: 0.5em;
43}
44
45h1, h2, h3, p {
46 font-family: Arial, sans serif;
47}
48
49h1, h2, h3 {
50 border-bottom: solid #CCC 1px;
51}
52
53.toc_element {
54 margin-top: 0.5em;
55}
56
57.firstline {
58 margin-left: 2 em;
59}
60
61.method {
62 margin-top: 1em;
63 border: solid 1px #CCC;
64 padding: 1em;
65 background: #EEE;
66}
67
68.details {
69 font-weight: bold;
70 font-size: 14px;
71}
72
73</style>
74
75<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>
76<h2>Instance Methods</h2>
77<p class="toc_element">
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -070078 <code><a href="#delete">delete(name, propagationPolicy=None, kind=None, orphanDependents=None, apiVersion=None, x__xgafv=None)</a></code></p>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -070079<p class="firstline">Rpc to delete a revision.</p>
80<p class="toc_element">
81 <code><a href="#get">get(name, x__xgafv=None)</a></code></p>
82<p class="firstline">Rpc to get information about a revision.</p>
83<p class="toc_element">
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -070084 <code><a href="#list">list(parent, limit=None, watch=None, labelSelector=None, resourceVersion=None, includeUninitialized=None, fieldSelector=None, continue=None, x__xgafv=None)</a></code></p>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -070085<p class="firstline">Rpc to list revisions.</p>
86<h3>Method Details</h3>
87<div class="method">
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -070088 <code class="details" id="delete">delete(name, propagationPolicy=None, kind=None, orphanDependents=None, apiVersion=None, x__xgafv=None)</code>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -070089 <pre>Rpc to delete a revision.
90
91Args:
92 name: string, The name of the revision being deleted. If needed, replace
93{namespace_id} with the project ID. (required)
Bu Sun Kim715bd7f2019-06-14 16:50:42 -070094 propagationPolicy: string, Specifies the propagation policy of delete. Cloud Run currently ignores
95this setting, and deletes in the background. Please see
96kubernetes.io/docs/concepts/workloads/controllers/garbage-collection/ for
97more information.
Bu Sun Kim65020912020-05-20 12:08:20 -070098 kind: string, Cloud Run currently ignores this parameter.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -070099 orphanDependents: boolean, Deprecated.
100Specifies the cascade behavior on delete.
101Cloud Run only supports cascading behavior, so this must be false.
102This attribute is deprecated, and is now replaced with PropagationPolicy
103See https://github.com/kubernetes/kubernetes/issues/46659 for more info.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700104 apiVersion: string, Cloud Run currently ignores this parameter.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700105 x__xgafv: string, V1 error format.
106 Allowed values
107 1 - v1 error format
108 2 - v2 error format
109
110Returns:
111 An object of the form:
112
113 { # A generic empty message that you can re-use to avoid defining duplicated
114 # empty messages in your APIs. A typical example is to use it as the request
115 # or the response type of an API method. For instance:
116 #
117 # service Foo {
118 # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
119 # }
120 #
121 # The JSON representation for `Empty` is empty JSON object `{}`.
122 }</pre>
123</div>
124
125<div class="method">
126 <code class="details" id="get">get(name, x__xgafv=None)</code>
127 <pre>Rpc to get information about a revision.
128
129Args:
130 name: string, The name of the revision being retrieved. If needed, replace
131{namespace_id} with the project ID. (required)
132 x__xgafv: string, V1 error format.
133 Allowed values
134 1 - v1 error format
135 2 - v2 error format
136
137Returns:
138 An object of the form:
139
140 { # Revision is an immutable snapshot of code and configuration. A revision
141 # references a container image. Revisions are created by updates to a
142 # Configuration.
143 #
144 # Cloud Run does not currently support referencing a build that is responsible
145 # for materializing the container image from source.
146 #
147 # See also:
148 # https://github.com/knative/serving/blob/master/docs/spec/overview.md#revision
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700149 &quot;kind&quot;: &quot;A String&quot;, # The kind of this resource, in this case &quot;Revision&quot;.
150 &quot;metadata&quot;: { # ObjectMeta is metadata that all persisted resources must have, which includes # Metadata associated with this Revision, including name, namespace, labels,
151 # and annotations.
152 # all objects users must create.
153 &quot;generateName&quot;: &quot;A String&quot;, # Not currently supported by Cloud Run.
154 #
155 # GenerateName is an optional prefix, used by the server, to generate a
156 # unique name ONLY IF the Name field has not been provided. If this field is
157 # used, the name returned to the client will be different than the name
158 # passed. This value will also be combined with a unique suffix. The provided
159 # value has the same validation rules as the Name field, and may be truncated
160 # by the length of the suffix required to make the value unique on the
161 # server.
162 #
163 # If this field is specified and the generated name exists, the server will
164 # NOT return a 409 - instead, it will either return 201 Created or 500 with
165 # Reason ServerTimeout indicating a unique name could not be found in the
166 # time allotted, and the client should retry (optionally after the time
167 # indicated in the Retry-After header).
168 #
169 # Applied only if Name is not specified.
170 # More info:
171 # https://git.k8s.io/community/contributors/devel/api-conventions.md#idempotency
172 # +optional
173 # string generateName = 2;
174 &quot;name&quot;: &quot;A String&quot;, # Name must be unique within a namespace, within a Cloud Run region.
175 # Is required when creating
176 # resources, although some resources may allow a client to request the
177 # generation of an appropriate name automatically. Name is primarily intended
178 # for creation idempotence and configuration definition. Cannot be updated.
179 # More info: http://kubernetes.io/docs/user-guide/identifiers#names
180 # +optional
181 &quot;deletionGracePeriodSeconds&quot;: 42, # Not currently supported by Cloud Run.
182 #
183 # Number of seconds allowed for this object to gracefully terminate before
184 # it will be removed from the system. Only set when deletionTimestamp is also
185 # set. May only be shortened. Read-only. +optional
186 &quot;clusterName&quot;: &quot;A String&quot;, # Not currently supported by Cloud Run.
187 #
188 # The name of the cluster which the object belongs to.
189 # This is used to distinguish resources with same name and namespace in
190 # different clusters. This field is not set anywhere right now and apiserver
191 # is going to ignore it if set in create or update request. +optional
192 &quot;finalizers&quot;: [ # Not currently supported by Cloud Run.
193 #
194 # Must be empty before the object is deleted from the registry. Each entry
195 # is an identifier for the responsible component that will remove the entry
196 # from the list. If the deletionTimestamp of the object is non-nil, entries
197 # in this list can only be removed.
198 # +optional
199 # +patchStrategy=merge
200 &quot;A String&quot;,
201 ],
202 &quot;deletionTimestamp&quot;: &quot;A String&quot;, # DeletionTimestamp is RFC 3339 date and time at which this resource will be
203 # deleted. This field is set by the server when a graceful deletion is
204 # requested by the user, and is not directly settable by a client. The
205 # resource is expected to be deleted (no longer visible from resource lists,
206 # and not reachable by name) after the time in this field, once the
207 # finalizers list is empty. As long as the finalizers list contains items,
208 # deletion is blocked. Once the deletionTimestamp is set, this value may not
209 # be unset or be set further into the future, although it may be shortened or
210 # the resource may be deleted prior to this time. For example, a user may
211 # request that a pod is deleted in 30 seconds. The Kubelet will react by
212 # sending a graceful termination signal to the containers in the pod. After
213 # that 30 seconds, the Kubelet will send a hard termination signal (SIGKILL)
214 # to the container and after cleanup, remove the pod from the API. In the
215 # presence of network partitions, this object may still exist after this
216 # timestamp, until an administrator or automated process can determine the
217 # resource is fully terminated.
218 # If not set, graceful deletion of the object has not been requested.
219 #
220 # Populated by the system when a graceful deletion is requested.
221 # Read-only.
222 # More info:
223 # https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
224 # +optional
225 &quot;ownerReferences&quot;: [ # List of objects that own this object. If ALL objects in the list have
226 # been deleted, this object will be garbage collected.
227 # +optional
228 { # OwnerReference contains enough information to let you identify an owning
229 # object. Currently, an owning object must be in the same namespace, so there
230 # is no namespace field.
231 &quot;controller&quot;: True or False, # If true, this reference points to the managing controller.
232 # +optional
233 &quot;kind&quot;: &quot;A String&quot;, # Kind of the referent.
234 # More info:
235 # https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds
236 &quot;blockOwnerDeletion&quot;: True or False, # If true, AND if the owner has the &quot;foregroundDeletion&quot; finalizer, then
237 # the owner cannot be deleted from the key-value store until this
238 # reference is removed.
239 # Defaults to false.
240 # To set this field, a user needs &quot;delete&quot; permission of the owner,
241 # otherwise 422 (Unprocessable Entity) will be returned.
242 # +optional
243 &quot;apiVersion&quot;: &quot;A String&quot;, # API version of the referent.
244 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
245 # More info: http://kubernetes.io/docs/user-guide/identifiers#names
246 &quot;uid&quot;: &quot;A String&quot;, # UID of the referent.
247 # More info: http://kubernetes.io/docs/user-guide/identifiers#uids
248 },
249 ],
250 &quot;creationTimestamp&quot;: &quot;A String&quot;, # CreationTimestamp is a timestamp representing the server time when this
251 # object was created. It is not guaranteed to be set in happens-before order
252 # across separate operations. Clients may not set this value. It is
253 # represented in RFC3339 form and is in UTC.
254 #
255 # Populated by the system.
256 # Read-only.
257 # Null for lists.
258 # More info:
259 # https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
260 # +optional
261 &quot;labels&quot;: { # Map of string keys and values that can be used to organize and categorize
262 # (scope and select) objects. May match selectors of replication controllers
263 # and routes.
264 # More info: http://kubernetes.io/docs/user-guide/labels
265 # +optional
266 &quot;a_key&quot;: &quot;A String&quot;,
267 },
268 &quot;generation&quot;: 42, # A sequence number representing a specific generation of the desired state.
269 # Populated by the system. Read-only.
270 # +optional
271 &quot;resourceVersion&quot;: &quot;A String&quot;, # An opaque value that represents the internal version of this object that
272 # can be used by clients to determine when objects have changed. May be used
273 # for optimistic concurrency, change detection, and the watch operation on a
274 # resource or set of resources. Clients must treat these values as opaque and
275 # passed unmodified back to the server. They may only be valid for a
276 # particular resource or set of resources.
277 #
278 # Populated by the system.
279 # Read-only.
280 # Value must be treated as opaque by clients and .
281 # More info:
282 # https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency
283 # +optional
284 &quot;selfLink&quot;: &quot;A String&quot;, # SelfLink is a URL representing this object.
285 # Populated by the system.
286 # Read-only.
287 # +optional
288 # string selfLink = 4;
289 &quot;uid&quot;: &quot;A String&quot;, # UID is the unique in time and space value for this object. It is typically
290 # generated by the server on successful creation of a resource and is not
291 # allowed to change on PUT operations.
292 #
293 # Populated by the system.
294 # Read-only.
295 # More info: http://kubernetes.io/docs/user-guide/identifiers#uids
296 # +optional
297 &quot;namespace&quot;: &quot;A String&quot;, # Namespace defines the space within each name must be unique, within a
298 # Cloud Run region. In Cloud Run the namespace must be equal to either the
299 # project ID or project number.
300 &quot;annotations&quot;: { # Annotations is an unstructured key value map stored with a resource that
301 # may be set by external tools to store and retrieve arbitrary metadata. They
302 # are not queryable and should be preserved when modifying objects. More
303 # info: http://kubernetes.io/docs/user-guide/annotations +optional
304 &quot;a_key&quot;: &quot;A String&quot;,
305 },
306 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700307 &quot;status&quot;: { # RevisionStatus communicates the observed state of the Revision (from the # Status communicates the observed state of the Revision (from the
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700308 # controller).
309 # controller).
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700310 &quot;serviceName&quot;: &quot;A String&quot;, # Not currently used by Cloud Run.
Bu Sun Kim65020912020-05-20 12:08:20 -0700311 &quot;conditions&quot;: [ # Conditions communicates information about ongoing/complete
312 # reconciliation processes that bring the &quot;spec&quot; inline with the observed
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700313 # state of the world.
314 #
315 # As a Revision is being prepared, it will incrementally
Bu Sun Kim65020912020-05-20 12:08:20 -0700316 # update conditions &quot;ResourcesAvailable&quot;, &quot;ContainerHealthy&quot;, and &quot;Active&quot;,
317 # which contribute to the overall &quot;Ready&quot; condition.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700318 { # RevisionCondition defines a readiness condition for a Revision.
Bu Sun Kim65020912020-05-20 12:08:20 -0700319 &quot;message&quot;: &quot;A String&quot;, # Human readable message indicating details about the current status.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700320 # +optional
Bu Sun Kim65020912020-05-20 12:08:20 -0700321 &quot;lastTransitionTime&quot;: &quot;A String&quot;, # Last time the condition transitioned from one status to another.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700322 # +optional
Bu Sun Kim65020912020-05-20 12:08:20 -0700323 &quot;status&quot;: &quot;A String&quot;, # Status of the condition, one of True, False, Unknown.
324 &quot;severity&quot;: &quot;A String&quot;, # How to interpret failures of this condition, one of Error, Warning, Info
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700325 # +optional
Bu Sun Kim65020912020-05-20 12:08:20 -0700326 &quot;reason&quot;: &quot;A String&quot;, # One-word CamelCase reason for the condition&#x27;s last transition.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700327 # +optional
Bu Sun Kim65020912020-05-20 12:08:20 -0700328 &quot;type&quot;: &quot;A String&quot;, # RevisionConditionType is used to communicate the status of the
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700329 # reconciliation process. See also:
330 # https://github.com/knative/serving/blob/master/docs/spec/errors.md#error-conditions-and-reporting
331 # Types include:
332 #
Bu Sun Kim65020912020-05-20 12:08:20 -0700333 # * &quot;Ready&quot;: True when the Revision is ready.
334 # * &quot;ResourcesAvailable&quot;: True when underlying resources have been
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700335 # provisioned.
Bu Sun Kim65020912020-05-20 12:08:20 -0700336 # * &quot;ContainerHealthy&quot;: True when the Revision readiness check completes.
337 # * &quot;Active&quot;: True when the Revision may receive traffic.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700338 },
339 ],
Bu Sun Kim65020912020-05-20 12:08:20 -0700340 &quot;observedGeneration&quot;: 42, # ObservedGeneration is the &#x27;Generation&#x27; of the Revision that
341 # was last processed by the controller.
342 #
343 # Clients polling for completed reconciliation should poll until
344 # observedGeneration = metadata.generation, and the Ready condition&#x27;s status
345 # is True or False.
346 &quot;imageDigest&quot;: &quot;A String&quot;, # ImageDigest holds the resolved digest for the image specified
347 # within .Spec.Container.Image. The digest is resolved during the creation
348 # of Revision. This field holds the digest value regardless of whether
349 # a tag or digest was originally specified in the Container object.
350 &quot;logUrl&quot;: &quot;A String&quot;, # Specifies the generated logging url for this particular revision
351 # based on the revision url template specified in the controller&#x27;s config.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700352 # +optional
353 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700354 &quot;apiVersion&quot;: &quot;A String&quot;, # The API version for this call such as &quot;serving.knative.dev/v1alpha1&quot;.
355 &quot;spec&quot;: { # RevisionSpec holds the desired state of the Revision (from the client). # Spec holds the desired state of the Revision (from the client).
356 &quot;containerConcurrency&quot;: 42, # (Optional)
Dan O'Mearadd494642020-05-01 07:42:23 -0700357 #
358 # ContainerConcurrency specifies the maximum allowed in-flight (concurrent)
359 # requests per container instance of the Revision.
360 #
361 # Cloud Run fully managed: supported, defaults to 80
362 #
363 # Cloud Run on GKE: supported, defaults to 0, which means concurrency
364 # to the application is not limited, and the system decides the
365 # target concurrency for the autoscaler.
Bu Sun Kim65020912020-05-20 12:08:20 -0700366 &quot;containers&quot;: [ # Containers holds the single container that defines the unit of execution
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700367 # for this Revision. In the context of a Revision, we disallow a number of
368 # fields on this Container, including: name and lifecycle.
Dan O'Mearadd494642020-05-01 07:42:23 -0700369 # In Cloud Run, only a single container may be provided.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700370 { # A single application container.
371 # This specifies both the container to run, the command to run in the container
372 # and the arguments to supply to it.
373 # Note that additional arguments may be supplied by the system to the container
374 # at runtime.
Bu Sun Kim65020912020-05-20 12:08:20 -0700375 &quot;terminationMessagePolicy&quot;: &quot;A String&quot;, # Indicate how the termination message should be populated. File will use the
376 # contents of terminationMessagePath to populate the container status message
377 # on both success and failure. FallbackToLogsOnError will use the last chunk
378 # of container log output if the termination message file is empty and the
379 # container exited with an error. The log output is limited to 2048 bytes or
380 # 80 lines, whichever is smaller. Defaults to File. Cannot be updated.
381 # +optional
382 &quot;securityContext&quot;: { # SecurityContext holds security configuration that will be applied to a # Security options the pod should run with.
383 # More info: https://kubernetes.io/docs/concepts/policy/security-context/
384 # More info:
385 # https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
386 # +optional
387 # container. Some fields are present in both SecurityContext and
388 # PodSecurityContext. When both are set, the values in SecurityContext take
389 # precedence.
390 &quot;capabilities&quot;: { # Adds and removes POSIX capabilities from running containers. # The capabilities to add/drop when running containers.
391 # Defaults to the default set of capabilities granted by the container
392 # runtime. +optional
393 &quot;add&quot;: [ # Added capabilities
394 # +optional
395 &quot;A String&quot;,
396 ],
397 &quot;drop&quot;: [ # Removed capabilities
398 # +optional
399 &quot;A String&quot;,
400 ],
401 },
402 &quot;runAsNonRoot&quot;: True or False, # Indicates that the container must run as a non-root user.
403 # If true, the Kubelet will validate the image at runtime to ensure that it
404 # does not run as UID 0 (root) and fail to start the container if it does.
405 # If unset or false, no such validation will be performed.
406 # May also be set in PodSecurityContext. If set in both SecurityContext and
407 # PodSecurityContext, the value specified in SecurityContext takes
408 # precedence. +optional
409 &quot;runAsGroup&quot;: 42, # The GID to run the entrypoint of the container process.
410 # Uses runtime default if unset.
411 # May also be set in PodSecurityContext. If set in both SecurityContext and
412 # PodSecurityContext, the value specified in SecurityContext takes
413 # precedence. +optional
414 &quot;privileged&quot;: True or False, # Run container in privileged mode.
415 # Processes in privileged containers are essentially equivalent to root on
416 # the host. Defaults to false. +optional
417 &quot;allowPrivilegeEscalation&quot;: True or False, # AllowPrivilegeEscalation controls whether a process can gain more
418 # privileges than its parent process. This bool directly controls if
419 # the no_new_privs flag will be set on the container process.
420 # AllowPrivilegeEscalation is true always when the container is:
421 # 1) run as Privileged
422 # 2) has CAP_SYS_ADMIN
423 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700424 &quot;readOnlyRootFilesystem&quot;: True or False, # Whether this container has a read-only root filesystem.
425 # Default is false.
426 # +optional
Bu Sun Kim65020912020-05-20 12:08:20 -0700427 &quot;seLinuxOptions&quot;: { # SELinuxOptions are the labels to be applied to the container # The SELinux context to be applied to the container.
428 # If unspecified, the container runtime will allocate a random SELinux
429 # context for each container. May also be set in PodSecurityContext. If set
430 # in both SecurityContext and PodSecurityContext, the value specified in
431 # SecurityContext takes precedence. +optional
432 &quot;role&quot;: &quot;A String&quot;, # Role is a SELinux role label that applies to the container.
433 # +optional
434 &quot;level&quot;: &quot;A String&quot;, # Level is SELinux level label that applies to the container.
435 # +optional
436 &quot;user&quot;: &quot;A String&quot;, # User is a SELinux user label that applies to the container.
437 # +optional
438 &quot;type&quot;: &quot;A String&quot;, # Type is a SELinux type label that applies to the container.
439 # +optional
440 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700441 &quot;runAsUser&quot;: 42, # The UID to run the entrypoint of the container process.
442 # Defaults to user specified in image metadata if unspecified.
443 # May also be set in PodSecurityContext. If set in both SecurityContext and
444 # PodSecurityContext, the value specified in SecurityContext takes
445 # precedence. +optional
446 },
447 &quot;livenessProbe&quot;: { # Probe describes a health check to be performed against a container to # Periodic probe of container liveness.
448 # Container will be restarted if the probe fails.
449 # Cannot be updated.
450 # More info:
451 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
452 # +optional
453 # determine whether it is alive or ready to receive traffic.
Bu Sun Kim65020912020-05-20 12:08:20 -0700454 &quot;initialDelaySeconds&quot;: 42, # Number of seconds after the container has started before liveness probes
455 # are initiated. More info:
456 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
457 # +optional
458 &quot;timeoutSeconds&quot;: 42, # Number of seconds after which the probe times out.
459 # Defaults to 1 second. Minimum value is 1.
460 # More info:
461 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
462 # +optional
463 &quot;handler&quot;: { # Handler defines a specific action that should be taken # The action taken to determine the health of a container
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700464 &quot;tcpSocket&quot;: { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
465 # TCP hooks not yet supported
466 &quot;port&quot;: { # 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.
467 # Number must be in the range 1 to 65535.
468 # Name must be an IANA_SVC_NAME.
469 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
470 # inner type. This allows you to have, for example, a JSON field that can
471 # accept a name or number.
472 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
473 &quot;type&quot;: 42, # The type of the value.
474 &quot;intVal&quot;: 42, # The int value.
475 },
476 &quot;host&quot;: &quot;A String&quot;, # Optional: Host name to connect to, defaults to the pod IP.
477 # +optional
478 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700479 &quot;exec&quot;: { # ExecAction describes a &quot;run in container&quot; action. # One and only one of the following should be specified.
480 # Exec specifies the action to take.
481 # +optional
482 &quot;command&quot;: &quot;A String&quot;, # Command is the command line to execute inside the container, the working
483 # directory for the command is root (&#x27;/&#x27;) in the container&#x27;s filesystem. The
484 # command is simply exec&#x27;d, it is not run inside a shell, so traditional
485 # shell instructions (&#x27;|&#x27;, etc) won&#x27;t work. To use a shell, you need to
486 # explicitly call out to that shell. Exit status of 0 is treated as
487 # live/healthy and non-zero is unhealthy. +optional
488 },
489 &quot;httpGet&quot;: { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
490 # +optional
491 &quot;httpHeaders&quot;: [ # Custom headers to set in the request. HTTP allows repeated headers.
492 # +optional
493 { # HTTPHeader describes a custom header to be used in HTTP probes
Bu Sun Kim65020912020-05-20 12:08:20 -0700494 &quot;name&quot;: &quot;A String&quot;, # The header field name
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700495 &quot;value&quot;: &quot;A String&quot;, # The header field value
Bu Sun Kim65020912020-05-20 12:08:20 -0700496 },
497 ],
498 &quot;path&quot;: &quot;A String&quot;, # Path to access on the HTTP server.
499 # +optional
500 &quot;port&quot;: { # 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.
501 # Number must be in the range 1 to 65535.
502 # Name must be an IANA_SVC_NAME.
503 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
504 # inner type. This allows you to have, for example, a JSON field that can
505 # accept a name or number.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700506 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
Bu Sun Kim65020912020-05-20 12:08:20 -0700507 &quot;type&quot;: 42, # The type of the value.
508 &quot;intVal&quot;: 42, # The int value.
Bu Sun Kim65020912020-05-20 12:08:20 -0700509 },
510 &quot;host&quot;: &quot;A String&quot;, # Host name to connect to, defaults to the pod IP. You probably want to set
511 # &quot;Host&quot; in httpHeaders instead.
512 # +optional
513 &quot;scheme&quot;: &quot;A String&quot;, # Scheme to use for connecting to the host.
514 # Defaults to HTTP.
515 # +optional
516 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700517 },
518 &quot;successThreshold&quot;: 42, # Minimum consecutive successes for the probe to be considered successful
519 # after having failed. Defaults to 1. Must be 1 for liveness. Minimum value
520 # is 1. +optional
521 &quot;periodSeconds&quot;: 42, # How often (in seconds) to perform the probe.
522 # Default to 10 seconds. Minimum value is 1.
523 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700524 &quot;failureThreshold&quot;: 42, # Minimum consecutive failures for the probe to be considered failed after
525 # having succeeded. Defaults to 3. Minimum value is 1. +optional
Bu Sun Kim65020912020-05-20 12:08:20 -0700526 },
527 &quot;env&quot;: [ # List of environment variables to set in the container.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700528 # Cannot be updated.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700529 # +optional
Dan O'Mearadd494642020-05-01 07:42:23 -0700530 { # EnvVar represents an environment variable present in a Container.
Bu Sun Kim65020912020-05-20 12:08:20 -0700531 &quot;name&quot;: &quot;A String&quot;, # Name of the environment variable. Must be a C_IDENTIFIER.
532 &quot;valueFrom&quot;: { # Cloud Run fully managed: not supported # Cloud Run fully managed: not supported
Dan O'Mearadd494642020-05-01 07:42:23 -0700533 #
534 # Cloud Run on GKE: supported
535 #
Bu Sun Kim65020912020-05-20 12:08:20 -0700536 # Source for the environment variable&#x27;s value. Cannot be used if value is not
Dan O'Mearadd494642020-05-01 07:42:23 -0700537 # empty. +optional
538 #
539 # Cloud Run on GKE: supported
540 #
541 # EnvVarSource represents a source for the value of an EnvVar.
Bu Sun Kim65020912020-05-20 12:08:20 -0700542 &quot;configMapKeyRef&quot;: { # Cloud Run fully managed: not supported # Cloud Run fully managed: not supported
Dan O'Mearadd494642020-05-01 07:42:23 -0700543 #
544 # Cloud Run on GKE: supported
545 #
546 # Selects a key of a ConfigMap.
547 # +optional
548 #
549 # Cloud Run on GKE: supported
550 #
551 # Selects a key from a ConfigMap.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700552 &quot;localObjectReference&quot;: { # LocalObjectReference contains enough information to let you locate the # This field should not be used directly as it is meant to be inlined
553 # directly into the message. Use the &quot;name&quot; field instead.
554 # referenced object inside the same namespace.
555 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
556 # More info:
557 # https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
558 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700559 &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported
Dan O'Mearadd494642020-05-01 07:42:23 -0700560 #
561 # Cloud Run on GKE: supported
562 #
563 # Specify whether the ConfigMap or its key must be defined
564 # +optional
Bu Sun Kim65020912020-05-20 12:08:20 -0700565 &quot;key&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
Dan O'Mearadd494642020-05-01 07:42:23 -0700566 #
567 # Cloud Run on GKE: supported
568 #
569 # The key to select.
Bu Sun Kim65020912020-05-20 12:08:20 -0700570 &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
571 #
572 # Cloud Run on GKE: supported
573 #
574 # The ConfigMap to select from.
Bu Sun Kim65020912020-05-20 12:08:20 -0700575 },
576 &quot;secretKeyRef&quot;: { # Cloud Run fully managed: not supported # Cloud Run fully managed: not supported
577 #
578 # Cloud Run on GKE: supported
579 #
580 # Selects a key of a secret in the pod&#x27;s namespace
581 # +optional
582 #
583 # Cloud Run on GKE: supported
584 #
585 # SecretKeySelector selects a key of a Secret.
Bu Sun Kim65020912020-05-20 12:08:20 -0700586 &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported
587 #
588 # Cloud Run on GKE: supported
589 #
590 # Specify whether the Secret or its key must be defined
591 # +optional
592 &quot;key&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
593 #
594 # Cloud Run on GKE: supported
595 #
596 # The key of the secret to select from. Must be a valid secret key.
597 &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
598 #
599 # Cloud Run on GKE: supported
600 #
601 # The name of the secret in the pod&#x27;s namespace to select from.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700602 &quot;localObjectReference&quot;: { # LocalObjectReference contains enough information to let you locate the # This field should not be used directly as it is meant to be inlined
603 # directly into the message. Use the &quot;name&quot; field instead.
604 # referenced object inside the same namespace.
605 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
606 # More info:
607 # https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
608 },
Dan O'Mearadd494642020-05-01 07:42:23 -0700609 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700610 },
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700611 &quot;value&quot;: &quot;A String&quot;, # Variable references $(VAR_NAME) are expanded
612 # using the previous defined environment variables in the container and
613 # any route environment variables. If a variable cannot be resolved,
614 # the reference in the input string will be unchanged. The $(VAR_NAME)
615 # syntax can be escaped with a double $$, ie: $$(VAR_NAME). Escaped
616 # references will never be expanded, regardless of whether the variable
617 # exists or not.
618 # Defaults to &quot;&quot;.
619 # +optional
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700620 },
Dan O'Mearadd494642020-05-01 07:42:23 -0700621 ],
Bu Sun Kim65020912020-05-20 12:08:20 -0700622 &quot;resources&quot;: { # ResourceRequirements describes the compute resource requirements. # Compute Resources required by this container.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700623 # Cannot be updated.
624 # More info:
625 # https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
626 # +optional
Bu Sun Kim65020912020-05-20 12:08:20 -0700627 &quot;requestsInMap&quot;: { # Requests describes the minimum amount of compute resources required.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700628 # If Requests is omitted for a container, it defaults to Limits if that is
629 # explicitly specified, otherwise to an implementation-defined value.
630 # This is a temporary field created to migrate away from the
Dan O'Mearadd494642020-05-01 07:42:23 -0700631 # map&lt;string, Quantity&gt; requests field. This is done to become compliant
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700632 # with k8s style API.
633 # This field is deprecated in favor of requests field.
Bu Sun Kim65020912020-05-20 12:08:20 -0700634 &quot;a_key&quot;: { # The view model of a single quantity, e.g. &quot;800 MiB&quot;. Corresponds to
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700635 # https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/generated.proto
Bu Sun Kim65020912020-05-20 12:08:20 -0700636 &quot;string&quot;: &quot;A String&quot;, # Stringified version of the quantity, e.g., &quot;800 MiB&quot;.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700637 },
638 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700639 &quot;requests&quot;: { # Requests describes the minimum amount of compute resources required.
Dan O'Mearadd494642020-05-01 07:42:23 -0700640 # If Requests is omitted for a container, it defaults to Limits if that is
641 # explicitly specified, otherwise to an implementation-defined value.
Bu Sun Kim65020912020-05-20 12:08:20 -0700642 # The values of the map is string form of the &#x27;quantity&#x27; k8s type:
Dan O'Mearadd494642020-05-01 07:42:23 -0700643 # https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go
Bu Sun Kim65020912020-05-20 12:08:20 -0700644 &quot;a_key&quot;: &quot;A String&quot;,
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700645 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700646 &quot;limits&quot;: { # Limits describes the maximum amount of compute resources allowed.
647 # The values of the map is string form of the &#x27;quantity&#x27; k8s type:
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700648 # https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go
Bu Sun Kim65020912020-05-20 12:08:20 -0700649 &quot;a_key&quot;: &quot;A String&quot;,
650 },
651 &quot;limitsInMap&quot;: { # Limits describes the maximum amount of compute resources allowed.
652 # This is a temporary field created to migrate away from the
653 # map&lt;string, Quantity&gt; limits field. This is done to become compliant
654 # with k8s style API.
655 # This field is deprecated in favor of limits field.
656 &quot;a_key&quot;: { # The view model of a single quantity, e.g. &quot;800 MiB&quot;. Corresponds to
657 # https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/generated.proto
658 &quot;string&quot;: &quot;A String&quot;, # Stringified version of the quantity, e.g., &quot;800 MiB&quot;.
659 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700660 },
661 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700662 &quot;readinessProbe&quot;: { # Probe describes a health check to be performed against a container to # Periodic probe of container service readiness.
663 # Container will be removed from service endpoints if the probe fails.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700664 # Cannot be updated.
Bu Sun Kim65020912020-05-20 12:08:20 -0700665 # More info:
666 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
667 # +optional
668 # determine whether it is alive or ready to receive traffic.
Bu Sun Kim65020912020-05-20 12:08:20 -0700669 &quot;initialDelaySeconds&quot;: 42, # Number of seconds after the container has started before liveness probes
670 # are initiated. More info:
671 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
672 # +optional
673 &quot;timeoutSeconds&quot;: 42, # Number of seconds after which the probe times out.
674 # Defaults to 1 second. Minimum value is 1.
675 # More info:
676 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
677 # +optional
678 &quot;handler&quot;: { # Handler defines a specific action that should be taken # The action taken to determine the health of a container
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700679 &quot;tcpSocket&quot;: { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
680 # TCP hooks not yet supported
681 &quot;port&quot;: { # 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.
682 # Number must be in the range 1 to 65535.
683 # Name must be an IANA_SVC_NAME.
684 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
685 # inner type. This allows you to have, for example, a JSON field that can
686 # accept a name or number.
687 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
688 &quot;type&quot;: 42, # The type of the value.
689 &quot;intVal&quot;: 42, # The int value.
690 },
691 &quot;host&quot;: &quot;A String&quot;, # Optional: Host name to connect to, defaults to the pod IP.
692 # +optional
693 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700694 &quot;exec&quot;: { # ExecAction describes a &quot;run in container&quot; action. # One and only one of the following should be specified.
695 # Exec specifies the action to take.
696 # +optional
697 &quot;command&quot;: &quot;A String&quot;, # Command is the command line to execute inside the container, the working
698 # directory for the command is root (&#x27;/&#x27;) in the container&#x27;s filesystem. The
699 # command is simply exec&#x27;d, it is not run inside a shell, so traditional
700 # shell instructions (&#x27;|&#x27;, etc) won&#x27;t work. To use a shell, you need to
701 # explicitly call out to that shell. Exit status of 0 is treated as
702 # live/healthy and non-zero is unhealthy. +optional
703 },
704 &quot;httpGet&quot;: { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
705 # +optional
706 &quot;httpHeaders&quot;: [ # Custom headers to set in the request. HTTP allows repeated headers.
707 # +optional
708 { # HTTPHeader describes a custom header to be used in HTTP probes
Bu Sun Kim65020912020-05-20 12:08:20 -0700709 &quot;name&quot;: &quot;A String&quot;, # The header field name
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700710 &quot;value&quot;: &quot;A String&quot;, # The header field value
Bu Sun Kim65020912020-05-20 12:08:20 -0700711 },
712 ],
713 &quot;path&quot;: &quot;A String&quot;, # Path to access on the HTTP server.
714 # +optional
715 &quot;port&quot;: { # 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.
716 # Number must be in the range 1 to 65535.
717 # Name must be an IANA_SVC_NAME.
718 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
719 # inner type. This allows you to have, for example, a JSON field that can
720 # accept a name or number.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700721 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
Bu Sun Kim65020912020-05-20 12:08:20 -0700722 &quot;type&quot;: 42, # The type of the value.
723 &quot;intVal&quot;: 42, # The int value.
Bu Sun Kim65020912020-05-20 12:08:20 -0700724 },
725 &quot;host&quot;: &quot;A String&quot;, # Host name to connect to, defaults to the pod IP. You probably want to set
726 # &quot;Host&quot; in httpHeaders instead.
727 # +optional
728 &quot;scheme&quot;: &quot;A String&quot;, # Scheme to use for connecting to the host.
729 # Defaults to HTTP.
730 # +optional
731 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700732 },
733 &quot;successThreshold&quot;: 42, # Minimum consecutive successes for the probe to be considered successful
734 # after having failed. Defaults to 1. Must be 1 for liveness. Minimum value
735 # is 1. +optional
736 &quot;periodSeconds&quot;: 42, # How often (in seconds) to perform the probe.
737 # Default to 10 seconds. Minimum value is 1.
738 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700739 &quot;failureThreshold&quot;: 42, # Minimum consecutive failures for the probe to be considered failed after
740 # having succeeded. Defaults to 3. Minimum value is 1. +optional
Bu Sun Kim65020912020-05-20 12:08:20 -0700741 },
742 &quot;imagePullPolicy&quot;: &quot;A String&quot;, # Image pull policy.
743 # One of Always, Never, IfNotPresent.
744 # Defaults to Always if :latest tag is specified, or IfNotPresent otherwise.
745 # Cannot be updated.
746 # More info:
747 # https://kubernetes.io/docs/concepts/containers/images#updating-images
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700748 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700749 &quot;lifecycle&quot;: { # Lifecycle describes actions that the management system should take in # Actions that the management system should take in response to container
750 # lifecycle events. Cannot be updated. +optional
751 # response to container lifecycle events. For the PostStart and PreStop
752 # lifecycle handlers, management of the container blocks until the action is
753 # complete, unless the container process fails, in which case the handler is
754 # aborted.
755 &quot;preStop&quot;: { # Handler defines a specific action that should be taken # PreStop is called immediately before a container is terminated.
756 # The container is terminated after the handler completes.
757 # The reason for termination is passed to the handler.
758 # Regardless of the outcome of the handler, the container is eventually
759 # terminated. Other management of the container blocks until the hook
760 # completes. More info:
761 # https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
762 # +optional
763 &quot;tcpSocket&quot;: { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
764 # TCP hooks not yet supported
765 &quot;port&quot;: { # 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.
766 # Number must be in the range 1 to 65535.
767 # Name must be an IANA_SVC_NAME.
768 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
769 # inner type. This allows you to have, for example, a JSON field that can
770 # accept a name or number.
771 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
772 &quot;type&quot;: 42, # The type of the value.
773 &quot;intVal&quot;: 42, # The int value.
774 },
775 &quot;host&quot;: &quot;A String&quot;, # Optional: Host name to connect to, defaults to the pod IP.
776 # +optional
777 },
778 &quot;exec&quot;: { # ExecAction describes a &quot;run in container&quot; action. # One and only one of the following should be specified.
779 # Exec specifies the action to take.
780 # +optional
781 &quot;command&quot;: &quot;A String&quot;, # Command is the command line to execute inside the container, the working
782 # directory for the command is root (&#x27;/&#x27;) in the container&#x27;s filesystem. The
783 # command is simply exec&#x27;d, it is not run inside a shell, so traditional
784 # shell instructions (&#x27;|&#x27;, etc) won&#x27;t work. To use a shell, you need to
785 # explicitly call out to that shell. Exit status of 0 is treated as
786 # live/healthy and non-zero is unhealthy. +optional
787 },
788 &quot;httpGet&quot;: { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
789 # +optional
790 &quot;httpHeaders&quot;: [ # Custom headers to set in the request. HTTP allows repeated headers.
791 # +optional
792 { # HTTPHeader describes a custom header to be used in HTTP probes
793 &quot;name&quot;: &quot;A String&quot;, # The header field name
794 &quot;value&quot;: &quot;A String&quot;, # The header field value
795 },
796 ],
797 &quot;path&quot;: &quot;A String&quot;, # Path to access on the HTTP server.
798 # +optional
799 &quot;port&quot;: { # 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.
800 # Number must be in the range 1 to 65535.
801 # Name must be an IANA_SVC_NAME.
802 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
803 # inner type. This allows you to have, for example, a JSON field that can
804 # accept a name or number.
805 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
806 &quot;type&quot;: 42, # The type of the value.
807 &quot;intVal&quot;: 42, # The int value.
808 },
809 &quot;host&quot;: &quot;A String&quot;, # Host name to connect to, defaults to the pod IP. You probably want to set
810 # &quot;Host&quot; in httpHeaders instead.
811 # +optional
812 &quot;scheme&quot;: &quot;A String&quot;, # Scheme to use for connecting to the host.
813 # Defaults to HTTP.
814 # +optional
815 },
816 },
817 &quot;postStart&quot;: { # Handler defines a specific action that should be taken # PostStart is called immediately after a container is created. If the
818 # handler fails, the container is terminated and restarted according to its
819 # restart policy. Other management of the container blocks until the hook
820 # completes. More info:
821 # https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
822 # +optional
823 &quot;tcpSocket&quot;: { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
824 # TCP hooks not yet supported
825 &quot;port&quot;: { # 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.
826 # Number must be in the range 1 to 65535.
827 # Name must be an IANA_SVC_NAME.
828 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
829 # inner type. This allows you to have, for example, a JSON field that can
830 # accept a name or number.
831 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
832 &quot;type&quot;: 42, # The type of the value.
833 &quot;intVal&quot;: 42, # The int value.
834 },
835 &quot;host&quot;: &quot;A String&quot;, # Optional: Host name to connect to, defaults to the pod IP.
836 # +optional
837 },
838 &quot;exec&quot;: { # ExecAction describes a &quot;run in container&quot; action. # One and only one of the following should be specified.
839 # Exec specifies the action to take.
840 # +optional
841 &quot;command&quot;: &quot;A String&quot;, # Command is the command line to execute inside the container, the working
842 # directory for the command is root (&#x27;/&#x27;) in the container&#x27;s filesystem. The
843 # command is simply exec&#x27;d, it is not run inside a shell, so traditional
844 # shell instructions (&#x27;|&#x27;, etc) won&#x27;t work. To use a shell, you need to
845 # explicitly call out to that shell. Exit status of 0 is treated as
846 # live/healthy and non-zero is unhealthy. +optional
847 },
848 &quot;httpGet&quot;: { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
849 # +optional
850 &quot;httpHeaders&quot;: [ # Custom headers to set in the request. HTTP allows repeated headers.
851 # +optional
852 { # HTTPHeader describes a custom header to be used in HTTP probes
853 &quot;name&quot;: &quot;A String&quot;, # The header field name
854 &quot;value&quot;: &quot;A String&quot;, # The header field value
855 },
856 ],
857 &quot;path&quot;: &quot;A String&quot;, # Path to access on the HTTP server.
858 # +optional
859 &quot;port&quot;: { # 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.
860 # Number must be in the range 1 to 65535.
861 # Name must be an IANA_SVC_NAME.
862 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
863 # inner type. This allows you to have, for example, a JSON field that can
864 # accept a name or number.
865 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
866 &quot;type&quot;: 42, # The type of the value.
867 &quot;intVal&quot;: 42, # The int value.
868 },
869 &quot;host&quot;: &quot;A String&quot;, # Host name to connect to, defaults to the pod IP. You probably want to set
870 # &quot;Host&quot; in httpHeaders instead.
871 # +optional
872 &quot;scheme&quot;: &quot;A String&quot;, # Scheme to use for connecting to the host.
873 # Defaults to HTTP.
874 # +optional
875 },
876 },
877 },
878 &quot;terminationMessagePath&quot;: &quot;A String&quot;, # Optional: Path at which the file to which the container&#x27;s termination
879 # message will be written is mounted into the container&#x27;s filesystem. Message
880 # written is intended to be brief final status, such as an assertion failure
881 # message. Will be truncated by the node if greater than 4096 bytes. The
882 # total message length across all containers will be limited to 12kb.
883 # Defaults to /dev/termination-log.
884 # Cannot be updated.
885 # +optional
886 &quot;stdin&quot;: True or False, # Whether this container should allocate a buffer for stdin in the container
887 # runtime. If this is not set, reads from stdin in the container will always
888 # result in EOF. Default is false. +optional
889 &quot;volumeMounts&quot;: [ # Pod volumes to mount into the container&#x27;s filesystem.
890 # Cannot be updated.
891 # +optional
892 { # VolumeMount describes a mounting of a Volume within a container.
893 &quot;name&quot;: &quot;A String&quot;, # This must match the Name of a Volume.
894 &quot;readOnly&quot;: True or False, # Mounted read-only if true, read-write otherwise (false or unspecified).
895 # Defaults to false.
896 # +optional
897 &quot;mountPropagation&quot;: &quot;A String&quot;, # mountPropagation determines how mounts are propagated from the host
898 # to container and the other way around.
899 # When not set, MountPropagationHostToContainer is used.
900 # This field is beta in 1.10.
901 # +optional
902 &quot;mountPath&quot;: &quot;A String&quot;, # Path within the container at which the volume should be mounted. Must
903 # not contain &#x27;:&#x27;.
904 &quot;subPath&quot;: &quot;A String&quot;, # Path within the volume from which the container&#x27;s volume should be mounted.
905 # Defaults to &quot;&quot; (volume&#x27;s root).
906 # +optional
907 },
908 ],
909 &quot;tty&quot;: True or False, # Whether this container should allocate a TTY for itself, also requires
910 # &#x27;stdin&#x27; to be true. Default is false. +optional
911 &quot;volumeDevices&quot;: [ # volumeDevices is the list of block devices to be used by the container.
912 # This is an alpha feature and may change in the future.
913 # +optional
914 { # volumeDevice describes a mapping of a raw block device within a container.
915 &quot;name&quot;: &quot;A String&quot;, # name must match the name of a persistentVolumeClaim in the pod
916 &quot;devicePath&quot;: &quot;A String&quot;, # devicePath is the path inside of the container that the device will be
917 # mapped to.
918 },
919 ],
920 &quot;stdinOnce&quot;: True or False, # Whether the container runtime should close the stdin channel after it has
921 # been opened by a single attach. When stdin is true the stdin stream will
922 # remain open across multiple attach sessions. If stdinOnce is set to true,
923 # stdin is opened on container start, is empty until the first client
924 # attaches to stdin, and then remains open and accepts data until the client
925 # disconnects, at which time stdin is closed and remains closed until the
926 # container is restarted. If this flag is false, a container processes that
927 # reads from stdin will never receive an EOF. Default is false +optional
928 &quot;args&quot;: [ # Arguments to the entrypoint.
929 # The docker image&#x27;s CMD is used if this is not provided.
930 # Variable references $(VAR_NAME) are expanded using the container&#x27;s
931 # environment. If a variable cannot be resolved, the reference in the input
932 # string will be unchanged. The $(VAR_NAME) syntax can be escaped with a
933 # double $$, ie: $$(VAR_NAME). Escaped references will never be expanded,
934 # regardless of whether the variable exists or not.
935 # Cannot be updated.
936 # More info:
937 # https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
938 # +optional
939 &quot;A String&quot;,
940 ],
941 &quot;workingDir&quot;: &quot;A String&quot;, # Container&#x27;s working directory.
942 # If not specified, the container runtime&#x27;s default will be used, which
943 # might be configured in the container image.
944 # Cannot be updated.
945 # +optional
946 &quot;ports&quot;: [ # List of ports to expose from the container. Exposing a port here gives
947 # the system additional information about the network connections a
948 # container uses, but is primarily informational. Not specifying a port here
949 # DOES NOT prevent that port from being exposed. Any port which is
950 # listening on the default &quot;0.0.0.0&quot; address inside a container will be
951 # accessible from the network.
952 # Cannot be updated.
953 # +optional
954 { # ContainerPort represents a network port in a single container.
955 &quot;hostIP&quot;: &quot;A String&quot;, # What host IP to bind the external port to.
956 # +optional
957 &quot;name&quot;: &quot;A String&quot;, # If specified, this must be an IANA_SVC_NAME and unique within the pod. Each
958 # named port in a pod must have a unique name. Name for the port that can be
959 # referred to by services.
960 # +optional
961 &quot;hostPort&quot;: 42, # Number of port to expose on the host.
962 # If specified, this must be a valid port number, 0 &lt; x &lt; 65536.
963 # If HostNetwork is specified, this must match ContainerPort.
964 # Most containers do not need this.
965 # +optional
966 &quot;containerPort&quot;: 42, # Number of port to expose on the pod&#x27;s IP address.
967 # This must be a valid port number, 0 &lt; x &lt; 65536.
968 &quot;protocol&quot;: &quot;A String&quot;, # Protocol for port. Must be UDP or TCP.
969 # Defaults to &quot;TCP&quot;.
970 # +optional
971 },
972 ],
973 &quot;image&quot;: &quot;A String&quot;, # Docker image name.
974 # More info: https://kubernetes.io/docs/concepts/containers/images
975 &quot;envFrom&quot;: [ # List of sources to populate environment variables in the container.
976 # The keys defined within a source must be a C_IDENTIFIER. All invalid keys
977 # will be reported as an event when the container is starting. When a key
978 # exists in multiple sources, the value associated with the last source will
979 # take precedence. Values defined by an Env with a duplicate key will take
980 # precedence. Cannot be updated. +optional
981 { # EnvFromSource represents the source of a set of ConfigMaps
982 &quot;prefix&quot;: &quot;A String&quot;, # An optional identifier to prepend to each key in the ConfigMap. Must be a
983 # C_IDENTIFIER. +optional
984 &quot;configMapRef&quot;: { # ConfigMapEnvSource selects a ConfigMap to populate the environment # The ConfigMap to select from
985 # +optional
986 # variables with.
987 #
988 # The contents of the target ConfigMap&#x27;s Data field will represent the
989 # key-value pairs as environment variables.
990 &quot;localObjectReference&quot;: { # LocalObjectReference contains enough information to let you locate the # This field should not be used directly as it is meant to be inlined
991 # directly into the message. Use the &quot;name&quot; field instead.
992 # referenced object inside the same namespace.
993 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
994 # More info:
995 # https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
996 },
997 &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported
998 #
999 # Cloud Run for Anthos: supported
1000 #
1001 # Specify whether the ConfigMap must be defined
1002 # +optional
1003 &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
1004 #
1005 # Cloud Run for Anthos: supported
1006 #
1007 # The ConfigMap to select from.
1008 },
1009 &quot;secretRef&quot;: { # SecretEnvSource selects a Secret to populate the environment # The Secret to select from
1010 # +optional
1011 # variables with.
1012 #
1013 # The contents of the target Secret&#x27;s Data field will represent the
1014 # key-value pairs as environment variables.
1015 &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
1016 #
1017 # Cloud Run for Anthos: supported
1018 #
1019 # The Secret to select from.
1020 &quot;localObjectReference&quot;: { # LocalObjectReference contains enough information to let you locate the # This field should not be used directly as it is meant to be inlined
1021 # directly into the message. Use the &quot;name&quot; field instead.
1022 # referenced object inside the same namespace.
1023 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
1024 # More info:
1025 # https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
1026 },
1027 &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported
1028 #
1029 # Cloud Run for Anthos: supported
1030 #
1031 # Specify whether the Secret must be defined
1032 # +optional
1033 },
1034 },
1035 ],
1036 &quot;name&quot;: &quot;A String&quot;, # Name of the container specified as a DNS_LABEL.
1037 # Each container must have a unique name (DNS_LABEL).
1038 # Cannot be updated.
1039 &quot;command&quot;: [ # Entrypoint array. Not executed within a shell.
1040 # The docker image&#x27;s ENTRYPOINT is used if this is not provided.
1041 # Variable references $(VAR_NAME) are expanded using the container&#x27;s
1042 # environment. If a variable cannot be resolved, the reference in the input
1043 # string will be unchanged. The $(VAR_NAME) syntax can be escaped with a
1044 # double $$, ie: $$(VAR_NAME). Escaped references will never be expanded,
1045 # regardless of whether the variable exists or not.
1046 # Cannot be updated.
1047 # More info:
1048 # https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
1049 # +optional
1050 &quot;A String&quot;,
1051 ],
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001052 },
1053 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001054 &quot;serviceAccountName&quot;: &quot;A String&quot;, # Email address of the IAM service account associated with the revision
1055 # of the service. The service account represents the identity of the
1056 # running revision, and determines what permissions the revision has. If
1057 # not provided, the revision will use the project&#x27;s default service account.
Bu Sun Kim65020912020-05-20 12:08:20 -07001058 &quot;generation&quot;: 42, # Deprecated and not currently populated by Cloud Run. See
1059 # metadata.generation instead, which is the sequence number containing the
1060 # latest generation of the desired state.
1061 #
1062 # Read-only.
1063 &quot;servingState&quot;: &quot;A String&quot;, # ServingState holds a value describing the state the resources
1064 # are in for this Revision.
1065 # Users must not specify this when creating a revision. It is expected
1066 # that the system will manipulate this based on routability and load.
1067 #
1068 # Populated by the system.
1069 # Read-only.
1070 &quot;concurrencyModel&quot;: &quot;A String&quot;, # ConcurrencyModel specifies the desired concurrency model
1071 # (Single or Multi) for the Revision. Defaults to Multi.
1072 # Deprecated in favor of ContainerConcurrency.
1073 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001074 &quot;timeoutSeconds&quot;: 42, # TimeoutSeconds holds the max duration the instance is allowed for
1075 # responding to a request.
1076 # Not currently used by Cloud Run.
Bu Sun Kim65020912020-05-20 12:08:20 -07001077 &quot;container&quot;: { # A single application container. # Container defines the unit of execution for this Revision.
1078 # In the context of a Revision, we disallow a number of the fields of
1079 # this Container, including: name, ports, and volumeMounts.
1080 # The runtime contract is documented here:
1081 # https://github.com/knative/serving/blob/master/docs/runtime-contract.md
1082 # This specifies both the container to run, the command to run in the container
1083 # and the arguments to supply to it.
1084 # Note that additional arguments may be supplied by the system to the container
1085 # at runtime.
Bu Sun Kim65020912020-05-20 12:08:20 -07001086 &quot;terminationMessagePolicy&quot;: &quot;A String&quot;, # Indicate how the termination message should be populated. File will use the
1087 # contents of terminationMessagePath to populate the container status message
1088 # on both success and failure. FallbackToLogsOnError will use the last chunk
1089 # of container log output if the termination message file is empty and the
1090 # container exited with an error. The log output is limited to 2048 bytes or
1091 # 80 lines, whichever is smaller. Defaults to File. Cannot be updated.
1092 # +optional
1093 &quot;securityContext&quot;: { # SecurityContext holds security configuration that will be applied to a # Security options the pod should run with.
1094 # More info: https://kubernetes.io/docs/concepts/policy/security-context/
1095 # More info:
1096 # https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
1097 # +optional
1098 # container. Some fields are present in both SecurityContext and
1099 # PodSecurityContext. When both are set, the values in SecurityContext take
1100 # precedence.
1101 &quot;capabilities&quot;: { # Adds and removes POSIX capabilities from running containers. # The capabilities to add/drop when running containers.
1102 # Defaults to the default set of capabilities granted by the container
1103 # runtime. +optional
1104 &quot;add&quot;: [ # Added capabilities
1105 # +optional
1106 &quot;A String&quot;,
1107 ],
1108 &quot;drop&quot;: [ # Removed capabilities
1109 # +optional
1110 &quot;A String&quot;,
1111 ],
1112 },
1113 &quot;runAsNonRoot&quot;: True or False, # Indicates that the container must run as a non-root user.
1114 # If true, the Kubelet will validate the image at runtime to ensure that it
1115 # does not run as UID 0 (root) and fail to start the container if it does.
1116 # If unset or false, no such validation will be performed.
1117 # May also be set in PodSecurityContext. If set in both SecurityContext and
1118 # PodSecurityContext, the value specified in SecurityContext takes
1119 # precedence. +optional
1120 &quot;runAsGroup&quot;: 42, # The GID to run the entrypoint of the container process.
1121 # Uses runtime default if unset.
1122 # May also be set in PodSecurityContext. If set in both SecurityContext and
1123 # PodSecurityContext, the value specified in SecurityContext takes
1124 # precedence. +optional
1125 &quot;privileged&quot;: True or False, # Run container in privileged mode.
1126 # Processes in privileged containers are essentially equivalent to root on
1127 # the host. Defaults to false. +optional
1128 &quot;allowPrivilegeEscalation&quot;: True or False, # AllowPrivilegeEscalation controls whether a process can gain more
1129 # privileges than its parent process. This bool directly controls if
1130 # the no_new_privs flag will be set on the container process.
1131 # AllowPrivilegeEscalation is true always when the container is:
1132 # 1) run as Privileged
1133 # 2) has CAP_SYS_ADMIN
1134 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001135 &quot;readOnlyRootFilesystem&quot;: True or False, # Whether this container has a read-only root filesystem.
1136 # Default is false.
1137 # +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07001138 &quot;seLinuxOptions&quot;: { # SELinuxOptions are the labels to be applied to the container # The SELinux context to be applied to the container.
1139 # If unspecified, the container runtime will allocate a random SELinux
1140 # context for each container. May also be set in PodSecurityContext. If set
1141 # in both SecurityContext and PodSecurityContext, the value specified in
1142 # SecurityContext takes precedence. +optional
1143 &quot;role&quot;: &quot;A String&quot;, # Role is a SELinux role label that applies to the container.
1144 # +optional
1145 &quot;level&quot;: &quot;A String&quot;, # Level is SELinux level label that applies to the container.
1146 # +optional
1147 &quot;user&quot;: &quot;A String&quot;, # User is a SELinux user label that applies to the container.
1148 # +optional
1149 &quot;type&quot;: &quot;A String&quot;, # Type is a SELinux type label that applies to the container.
1150 # +optional
1151 },
Bu Sun Kim65020912020-05-20 12:08:20 -07001152 &quot;runAsUser&quot;: 42, # The UID to run the entrypoint of the container process.
1153 # Defaults to user specified in image metadata if unspecified.
1154 # May also be set in PodSecurityContext. If set in both SecurityContext and
1155 # PodSecurityContext, the value specified in SecurityContext takes
1156 # precedence. +optional
1157 },
1158 &quot;livenessProbe&quot;: { # Probe describes a health check to be performed against a container to # Periodic probe of container liveness.
1159 # Container will be restarted if the probe fails.
1160 # Cannot be updated.
1161 # More info:
1162 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
1163 # +optional
1164 # determine whether it is alive or ready to receive traffic.
Bu Sun Kim65020912020-05-20 12:08:20 -07001165 &quot;initialDelaySeconds&quot;: 42, # Number of seconds after the container has started before liveness probes
1166 # are initiated. More info:
1167 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
1168 # +optional
1169 &quot;timeoutSeconds&quot;: 42, # Number of seconds after which the probe times out.
1170 # Defaults to 1 second. Minimum value is 1.
1171 # More info:
1172 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
1173 # +optional
1174 &quot;handler&quot;: { # Handler defines a specific action that should be taken # The action taken to determine the health of a container
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001175 &quot;tcpSocket&quot;: { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
1176 # TCP hooks not yet supported
1177 &quot;port&quot;: { # 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.
1178 # Number must be in the range 1 to 65535.
1179 # Name must be an IANA_SVC_NAME.
1180 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
1181 # inner type. This allows you to have, for example, a JSON field that can
1182 # accept a name or number.
1183 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
1184 &quot;type&quot;: 42, # The type of the value.
1185 &quot;intVal&quot;: 42, # The int value.
1186 },
1187 &quot;host&quot;: &quot;A String&quot;, # Optional: Host name to connect to, defaults to the pod IP.
1188 # +optional
1189 },
Bu Sun Kim65020912020-05-20 12:08:20 -07001190 &quot;exec&quot;: { # ExecAction describes a &quot;run in container&quot; action. # One and only one of the following should be specified.
1191 # Exec specifies the action to take.
1192 # +optional
1193 &quot;command&quot;: &quot;A String&quot;, # Command is the command line to execute inside the container, the working
1194 # directory for the command is root (&#x27;/&#x27;) in the container&#x27;s filesystem. The
1195 # command is simply exec&#x27;d, it is not run inside a shell, so traditional
1196 # shell instructions (&#x27;|&#x27;, etc) won&#x27;t work. To use a shell, you need to
1197 # explicitly call out to that shell. Exit status of 0 is treated as
1198 # live/healthy and non-zero is unhealthy. +optional
1199 },
1200 &quot;httpGet&quot;: { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
1201 # +optional
1202 &quot;httpHeaders&quot;: [ # Custom headers to set in the request. HTTP allows repeated headers.
1203 # +optional
1204 { # HTTPHeader describes a custom header to be used in HTTP probes
Bu Sun Kim65020912020-05-20 12:08:20 -07001205 &quot;name&quot;: &quot;A String&quot;, # The header field name
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001206 &quot;value&quot;: &quot;A String&quot;, # The header field value
Bu Sun Kim65020912020-05-20 12:08:20 -07001207 },
1208 ],
1209 &quot;path&quot;: &quot;A String&quot;, # Path to access on the HTTP server.
1210 # +optional
1211 &quot;port&quot;: { # 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.
1212 # Number must be in the range 1 to 65535.
1213 # Name must be an IANA_SVC_NAME.
1214 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
1215 # inner type. This allows you to have, for example, a JSON field that can
1216 # accept a name or number.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001217 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
Bu Sun Kim65020912020-05-20 12:08:20 -07001218 &quot;type&quot;: 42, # The type of the value.
1219 &quot;intVal&quot;: 42, # The int value.
Bu Sun Kim65020912020-05-20 12:08:20 -07001220 },
1221 &quot;host&quot;: &quot;A String&quot;, # Host name to connect to, defaults to the pod IP. You probably want to set
1222 # &quot;Host&quot; in httpHeaders instead.
1223 # +optional
1224 &quot;scheme&quot;: &quot;A String&quot;, # Scheme to use for connecting to the host.
1225 # Defaults to HTTP.
1226 # +optional
1227 },
Bu Sun Kim65020912020-05-20 12:08:20 -07001228 },
1229 &quot;successThreshold&quot;: 42, # Minimum consecutive successes for the probe to be considered successful
1230 # after having failed. Defaults to 1. Must be 1 for liveness. Minimum value
1231 # is 1. +optional
1232 &quot;periodSeconds&quot;: 42, # How often (in seconds) to perform the probe.
1233 # Default to 10 seconds. Minimum value is 1.
1234 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001235 &quot;failureThreshold&quot;: 42, # Minimum consecutive failures for the probe to be considered failed after
1236 # having succeeded. Defaults to 3. Minimum value is 1. +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07001237 },
1238 &quot;env&quot;: [ # List of environment variables to set in the container.
1239 # Cannot be updated.
1240 # +optional
1241 { # EnvVar represents an environment variable present in a Container.
Bu Sun Kim65020912020-05-20 12:08:20 -07001242 &quot;name&quot;: &quot;A String&quot;, # Name of the environment variable. Must be a C_IDENTIFIER.
1243 &quot;valueFrom&quot;: { # Cloud Run fully managed: not supported # Cloud Run fully managed: not supported
1244 #
1245 # Cloud Run on GKE: supported
1246 #
1247 # Source for the environment variable&#x27;s value. Cannot be used if value is not
1248 # empty. +optional
1249 #
1250 # Cloud Run on GKE: supported
1251 #
1252 # EnvVarSource represents a source for the value of an EnvVar.
1253 &quot;configMapKeyRef&quot;: { # Cloud Run fully managed: not supported # Cloud Run fully managed: not supported
1254 #
1255 # Cloud Run on GKE: supported
1256 #
1257 # Selects a key of a ConfigMap.
1258 # +optional
1259 #
1260 # Cloud Run on GKE: supported
1261 #
1262 # Selects a key from a ConfigMap.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001263 &quot;localObjectReference&quot;: { # LocalObjectReference contains enough information to let you locate the # This field should not be used directly as it is meant to be inlined
1264 # directly into the message. Use the &quot;name&quot; field instead.
1265 # referenced object inside the same namespace.
1266 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
1267 # More info:
1268 # https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
1269 },
Bu Sun Kim65020912020-05-20 12:08:20 -07001270 &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported
1271 #
1272 # Cloud Run on GKE: supported
1273 #
1274 # Specify whether the ConfigMap or its key must be defined
1275 # +optional
1276 &quot;key&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
1277 #
1278 # Cloud Run on GKE: supported
1279 #
1280 # The key to select.
1281 &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
1282 #
1283 # Cloud Run on GKE: supported
1284 #
1285 # The ConfigMap to select from.
Bu Sun Kim65020912020-05-20 12:08:20 -07001286 },
1287 &quot;secretKeyRef&quot;: { # Cloud Run fully managed: not supported # Cloud Run fully managed: not supported
1288 #
1289 # Cloud Run on GKE: supported
1290 #
1291 # Selects a key of a secret in the pod&#x27;s namespace
1292 # +optional
1293 #
1294 # Cloud Run on GKE: supported
1295 #
1296 # SecretKeySelector selects a key of a Secret.
Bu Sun Kim65020912020-05-20 12:08:20 -07001297 &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported
1298 #
1299 # Cloud Run on GKE: supported
1300 #
1301 # Specify whether the Secret or its key must be defined
1302 # +optional
1303 &quot;key&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
1304 #
1305 # Cloud Run on GKE: supported
1306 #
1307 # The key of the secret to select from. Must be a valid secret key.
1308 &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
1309 #
1310 # Cloud Run on GKE: supported
1311 #
1312 # The name of the secret in the pod&#x27;s namespace to select from.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001313 &quot;localObjectReference&quot;: { # LocalObjectReference contains enough information to let you locate the # This field should not be used directly as it is meant to be inlined
1314 # directly into the message. Use the &quot;name&quot; field instead.
1315 # referenced object inside the same namespace.
1316 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
1317 # More info:
1318 # https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
1319 },
Bu Sun Kim65020912020-05-20 12:08:20 -07001320 },
1321 },
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001322 &quot;value&quot;: &quot;A String&quot;, # Variable references $(VAR_NAME) are expanded
1323 # using the previous defined environment variables in the container and
1324 # any route environment variables. If a variable cannot be resolved,
1325 # the reference in the input string will be unchanged. The $(VAR_NAME)
1326 # syntax can be escaped with a double $$, ie: $$(VAR_NAME). Escaped
1327 # references will never be expanded, regardless of whether the variable
1328 # exists or not.
1329 # Defaults to &quot;&quot;.
1330 # +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07001331 },
1332 ],
1333 &quot;resources&quot;: { # ResourceRequirements describes the compute resource requirements. # Compute Resources required by this container.
1334 # Cannot be updated.
1335 # More info:
1336 # https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
1337 # +optional
1338 &quot;requestsInMap&quot;: { # Requests describes the minimum amount of compute resources required.
1339 # If Requests is omitted for a container, it defaults to Limits if that is
1340 # explicitly specified, otherwise to an implementation-defined value.
1341 # This is a temporary field created to migrate away from the
1342 # map&lt;string, Quantity&gt; requests field. This is done to become compliant
1343 # with k8s style API.
1344 # This field is deprecated in favor of requests field.
1345 &quot;a_key&quot;: { # The view model of a single quantity, e.g. &quot;800 MiB&quot;. Corresponds to
1346 # https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/generated.proto
1347 &quot;string&quot;: &quot;A String&quot;, # Stringified version of the quantity, e.g., &quot;800 MiB&quot;.
1348 },
1349 },
1350 &quot;requests&quot;: { # Requests describes the minimum amount of compute resources required.
1351 # If Requests is omitted for a container, it defaults to Limits if that is
1352 # explicitly specified, otherwise to an implementation-defined value.
1353 # The values of the map is string form of the &#x27;quantity&#x27; k8s type:
1354 # https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go
1355 &quot;a_key&quot;: &quot;A String&quot;,
1356 },
1357 &quot;limits&quot;: { # Limits describes the maximum amount of compute resources allowed.
1358 # The values of the map is string form of the &#x27;quantity&#x27; k8s type:
1359 # https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go
1360 &quot;a_key&quot;: &quot;A String&quot;,
1361 },
1362 &quot;limitsInMap&quot;: { # Limits describes the maximum amount of compute resources allowed.
1363 # This is a temporary field created to migrate away from the
1364 # map&lt;string, Quantity&gt; limits field. This is done to become compliant
1365 # with k8s style API.
1366 # This field is deprecated in favor of limits field.
1367 &quot;a_key&quot;: { # The view model of a single quantity, e.g. &quot;800 MiB&quot;. Corresponds to
1368 # https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/generated.proto
1369 &quot;string&quot;: &quot;A String&quot;, # Stringified version of the quantity, e.g., &quot;800 MiB&quot;.
1370 },
1371 },
1372 },
1373 &quot;readinessProbe&quot;: { # Probe describes a health check to be performed against a container to # Periodic probe of container service readiness.
1374 # Container will be removed from service endpoints if the probe fails.
1375 # Cannot be updated.
1376 # More info:
1377 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
1378 # +optional
1379 # determine whether it is alive or ready to receive traffic.
Bu Sun Kim65020912020-05-20 12:08:20 -07001380 &quot;initialDelaySeconds&quot;: 42, # Number of seconds after the container has started before liveness probes
1381 # are initiated. More info:
1382 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
1383 # +optional
1384 &quot;timeoutSeconds&quot;: 42, # Number of seconds after which the probe times out.
1385 # Defaults to 1 second. Minimum value is 1.
1386 # More info:
1387 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
1388 # +optional
1389 &quot;handler&quot;: { # Handler defines a specific action that should be taken # The action taken to determine the health of a container
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001390 &quot;tcpSocket&quot;: { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
1391 # TCP hooks not yet supported
1392 &quot;port&quot;: { # 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.
1393 # Number must be in the range 1 to 65535.
1394 # Name must be an IANA_SVC_NAME.
1395 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
1396 # inner type. This allows you to have, for example, a JSON field that can
1397 # accept a name or number.
1398 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
1399 &quot;type&quot;: 42, # The type of the value.
1400 &quot;intVal&quot;: 42, # The int value.
1401 },
1402 &quot;host&quot;: &quot;A String&quot;, # Optional: Host name to connect to, defaults to the pod IP.
1403 # +optional
1404 },
Bu Sun Kim65020912020-05-20 12:08:20 -07001405 &quot;exec&quot;: { # ExecAction describes a &quot;run in container&quot; action. # One and only one of the following should be specified.
1406 # Exec specifies the action to take.
1407 # +optional
1408 &quot;command&quot;: &quot;A String&quot;, # Command is the command line to execute inside the container, the working
1409 # directory for the command is root (&#x27;/&#x27;) in the container&#x27;s filesystem. The
1410 # command is simply exec&#x27;d, it is not run inside a shell, so traditional
1411 # shell instructions (&#x27;|&#x27;, etc) won&#x27;t work. To use a shell, you need to
1412 # explicitly call out to that shell. Exit status of 0 is treated as
1413 # live/healthy and non-zero is unhealthy. +optional
1414 },
1415 &quot;httpGet&quot;: { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
1416 # +optional
1417 &quot;httpHeaders&quot;: [ # Custom headers to set in the request. HTTP allows repeated headers.
1418 # +optional
1419 { # HTTPHeader describes a custom header to be used in HTTP probes
Bu Sun Kim65020912020-05-20 12:08:20 -07001420 &quot;name&quot;: &quot;A String&quot;, # The header field name
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001421 &quot;value&quot;: &quot;A String&quot;, # The header field value
Bu Sun Kim65020912020-05-20 12:08:20 -07001422 },
1423 ],
1424 &quot;path&quot;: &quot;A String&quot;, # Path to access on the HTTP server.
1425 # +optional
1426 &quot;port&quot;: { # 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.
1427 # Number must be in the range 1 to 65535.
1428 # Name must be an IANA_SVC_NAME.
1429 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
1430 # inner type. This allows you to have, for example, a JSON field that can
1431 # accept a name or number.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001432 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
Bu Sun Kim65020912020-05-20 12:08:20 -07001433 &quot;type&quot;: 42, # The type of the value.
1434 &quot;intVal&quot;: 42, # The int value.
Bu Sun Kim65020912020-05-20 12:08:20 -07001435 },
1436 &quot;host&quot;: &quot;A String&quot;, # Host name to connect to, defaults to the pod IP. You probably want to set
1437 # &quot;Host&quot; in httpHeaders instead.
1438 # +optional
1439 &quot;scheme&quot;: &quot;A String&quot;, # Scheme to use for connecting to the host.
1440 # Defaults to HTTP.
1441 # +optional
1442 },
Bu Sun Kim65020912020-05-20 12:08:20 -07001443 },
1444 &quot;successThreshold&quot;: 42, # Minimum consecutive successes for the probe to be considered successful
1445 # after having failed. Defaults to 1. Must be 1 for liveness. Minimum value
1446 # is 1. +optional
1447 &quot;periodSeconds&quot;: 42, # How often (in seconds) to perform the probe.
1448 # Default to 10 seconds. Minimum value is 1.
1449 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001450 &quot;failureThreshold&quot;: 42, # Minimum consecutive failures for the probe to be considered failed after
1451 # having succeeded. Defaults to 3. Minimum value is 1. +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07001452 },
1453 &quot;imagePullPolicy&quot;: &quot;A String&quot;, # Image pull policy.
1454 # One of Always, Never, IfNotPresent.
1455 # Defaults to Always if :latest tag is specified, or IfNotPresent otherwise.
1456 # Cannot be updated.
1457 # More info:
1458 # https://kubernetes.io/docs/concepts/containers/images#updating-images
1459 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001460 &quot;lifecycle&quot;: { # Lifecycle describes actions that the management system should take in # Actions that the management system should take in response to container
1461 # lifecycle events. Cannot be updated. +optional
1462 # response to container lifecycle events. For the PostStart and PreStop
1463 # lifecycle handlers, management of the container blocks until the action is
1464 # complete, unless the container process fails, in which case the handler is
1465 # aborted.
1466 &quot;preStop&quot;: { # Handler defines a specific action that should be taken # PreStop is called immediately before a container is terminated.
1467 # The container is terminated after the handler completes.
1468 # The reason for termination is passed to the handler.
1469 # Regardless of the outcome of the handler, the container is eventually
1470 # terminated. Other management of the container blocks until the hook
1471 # completes. More info:
1472 # https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
1473 # +optional
1474 &quot;tcpSocket&quot;: { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
1475 # TCP hooks not yet supported
1476 &quot;port&quot;: { # 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.
1477 # Number must be in the range 1 to 65535.
1478 # Name must be an IANA_SVC_NAME.
1479 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
1480 # inner type. This allows you to have, for example, a JSON field that can
1481 # accept a name or number.
1482 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
1483 &quot;type&quot;: 42, # The type of the value.
1484 &quot;intVal&quot;: 42, # The int value.
1485 },
1486 &quot;host&quot;: &quot;A String&quot;, # Optional: Host name to connect to, defaults to the pod IP.
1487 # +optional
1488 },
1489 &quot;exec&quot;: { # ExecAction describes a &quot;run in container&quot; action. # One and only one of the following should be specified.
1490 # Exec specifies the action to take.
1491 # +optional
1492 &quot;command&quot;: &quot;A String&quot;, # Command is the command line to execute inside the container, the working
1493 # directory for the command is root (&#x27;/&#x27;) in the container&#x27;s filesystem. The
1494 # command is simply exec&#x27;d, it is not run inside a shell, so traditional
1495 # shell instructions (&#x27;|&#x27;, etc) won&#x27;t work. To use a shell, you need to
1496 # explicitly call out to that shell. Exit status of 0 is treated as
1497 # live/healthy and non-zero is unhealthy. +optional
1498 },
1499 &quot;httpGet&quot;: { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
1500 # +optional
1501 &quot;httpHeaders&quot;: [ # Custom headers to set in the request. HTTP allows repeated headers.
1502 # +optional
1503 { # HTTPHeader describes a custom header to be used in HTTP probes
1504 &quot;name&quot;: &quot;A String&quot;, # The header field name
1505 &quot;value&quot;: &quot;A String&quot;, # The header field value
1506 },
1507 ],
1508 &quot;path&quot;: &quot;A String&quot;, # Path to access on the HTTP server.
1509 # +optional
1510 &quot;port&quot;: { # 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.
1511 # Number must be in the range 1 to 65535.
1512 # Name must be an IANA_SVC_NAME.
1513 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
1514 # inner type. This allows you to have, for example, a JSON field that can
1515 # accept a name or number.
1516 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
1517 &quot;type&quot;: 42, # The type of the value.
1518 &quot;intVal&quot;: 42, # The int value.
1519 },
1520 &quot;host&quot;: &quot;A String&quot;, # Host name to connect to, defaults to the pod IP. You probably want to set
1521 # &quot;Host&quot; in httpHeaders instead.
1522 # +optional
1523 &quot;scheme&quot;: &quot;A String&quot;, # Scheme to use for connecting to the host.
1524 # Defaults to HTTP.
1525 # +optional
1526 },
1527 },
1528 &quot;postStart&quot;: { # Handler defines a specific action that should be taken # PostStart is called immediately after a container is created. If the
1529 # handler fails, the container is terminated and restarted according to its
1530 # restart policy. Other management of the container blocks until the hook
1531 # completes. More info:
1532 # https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
1533 # +optional
1534 &quot;tcpSocket&quot;: { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
1535 # TCP hooks not yet supported
1536 &quot;port&quot;: { # 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.
1537 # Number must be in the range 1 to 65535.
1538 # Name must be an IANA_SVC_NAME.
1539 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
1540 # inner type. This allows you to have, for example, a JSON field that can
1541 # accept a name or number.
1542 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
1543 &quot;type&quot;: 42, # The type of the value.
1544 &quot;intVal&quot;: 42, # The int value.
1545 },
1546 &quot;host&quot;: &quot;A String&quot;, # Optional: Host name to connect to, defaults to the pod IP.
1547 # +optional
1548 },
1549 &quot;exec&quot;: { # ExecAction describes a &quot;run in container&quot; action. # One and only one of the following should be specified.
1550 # Exec specifies the action to take.
1551 # +optional
1552 &quot;command&quot;: &quot;A String&quot;, # Command is the command line to execute inside the container, the working
1553 # directory for the command is root (&#x27;/&#x27;) in the container&#x27;s filesystem. The
1554 # command is simply exec&#x27;d, it is not run inside a shell, so traditional
1555 # shell instructions (&#x27;|&#x27;, etc) won&#x27;t work. To use a shell, you need to
1556 # explicitly call out to that shell. Exit status of 0 is treated as
1557 # live/healthy and non-zero is unhealthy. +optional
1558 },
1559 &quot;httpGet&quot;: { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
1560 # +optional
1561 &quot;httpHeaders&quot;: [ # Custom headers to set in the request. HTTP allows repeated headers.
1562 # +optional
1563 { # HTTPHeader describes a custom header to be used in HTTP probes
1564 &quot;name&quot;: &quot;A String&quot;, # The header field name
1565 &quot;value&quot;: &quot;A String&quot;, # The header field value
1566 },
1567 ],
1568 &quot;path&quot;: &quot;A String&quot;, # Path to access on the HTTP server.
1569 # +optional
1570 &quot;port&quot;: { # 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.
1571 # Number must be in the range 1 to 65535.
1572 # Name must be an IANA_SVC_NAME.
1573 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
1574 # inner type. This allows you to have, for example, a JSON field that can
1575 # accept a name or number.
1576 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
1577 &quot;type&quot;: 42, # The type of the value.
1578 &quot;intVal&quot;: 42, # The int value.
1579 },
1580 &quot;host&quot;: &quot;A String&quot;, # Host name to connect to, defaults to the pod IP. You probably want to set
1581 # &quot;Host&quot; in httpHeaders instead.
1582 # +optional
1583 &quot;scheme&quot;: &quot;A String&quot;, # Scheme to use for connecting to the host.
1584 # Defaults to HTTP.
1585 # +optional
1586 },
1587 },
1588 },
1589 &quot;terminationMessagePath&quot;: &quot;A String&quot;, # Optional: Path at which the file to which the container&#x27;s termination
1590 # message will be written is mounted into the container&#x27;s filesystem. Message
1591 # written is intended to be brief final status, such as an assertion failure
1592 # message. Will be truncated by the node if greater than 4096 bytes. The
1593 # total message length across all containers will be limited to 12kb.
1594 # Defaults to /dev/termination-log.
1595 # Cannot be updated.
1596 # +optional
1597 &quot;stdin&quot;: True or False, # Whether this container should allocate a buffer for stdin in the container
1598 # runtime. If this is not set, reads from stdin in the container will always
1599 # result in EOF. Default is false. +optional
1600 &quot;volumeMounts&quot;: [ # Pod volumes to mount into the container&#x27;s filesystem.
1601 # Cannot be updated.
1602 # +optional
1603 { # VolumeMount describes a mounting of a Volume within a container.
1604 &quot;name&quot;: &quot;A String&quot;, # This must match the Name of a Volume.
1605 &quot;readOnly&quot;: True or False, # Mounted read-only if true, read-write otherwise (false or unspecified).
1606 # Defaults to false.
1607 # +optional
1608 &quot;mountPropagation&quot;: &quot;A String&quot;, # mountPropagation determines how mounts are propagated from the host
1609 # to container and the other way around.
1610 # When not set, MountPropagationHostToContainer is used.
1611 # This field is beta in 1.10.
1612 # +optional
1613 &quot;mountPath&quot;: &quot;A String&quot;, # Path within the container at which the volume should be mounted. Must
1614 # not contain &#x27;:&#x27;.
1615 &quot;subPath&quot;: &quot;A String&quot;, # Path within the volume from which the container&#x27;s volume should be mounted.
1616 # Defaults to &quot;&quot; (volume&#x27;s root).
1617 # +optional
1618 },
1619 ],
1620 &quot;tty&quot;: True or False, # Whether this container should allocate a TTY for itself, also requires
1621 # &#x27;stdin&#x27; to be true. Default is false. +optional
1622 &quot;volumeDevices&quot;: [ # volumeDevices is the list of block devices to be used by the container.
1623 # This is an alpha feature and may change in the future.
1624 # +optional
1625 { # volumeDevice describes a mapping of a raw block device within a container.
1626 &quot;name&quot;: &quot;A String&quot;, # name must match the name of a persistentVolumeClaim in the pod
1627 &quot;devicePath&quot;: &quot;A String&quot;, # devicePath is the path inside of the container that the device will be
1628 # mapped to.
1629 },
1630 ],
1631 &quot;stdinOnce&quot;: True or False, # Whether the container runtime should close the stdin channel after it has
1632 # been opened by a single attach. When stdin is true the stdin stream will
1633 # remain open across multiple attach sessions. If stdinOnce is set to true,
1634 # stdin is opened on container start, is empty until the first client
1635 # attaches to stdin, and then remains open and accepts data until the client
1636 # disconnects, at which time stdin is closed and remains closed until the
1637 # container is restarted. If this flag is false, a container processes that
1638 # reads from stdin will never receive an EOF. Default is false +optional
1639 &quot;args&quot;: [ # Arguments to the entrypoint.
1640 # The docker image&#x27;s CMD is used if this is not provided.
1641 # Variable references $(VAR_NAME) are expanded using the container&#x27;s
1642 # environment. If a variable cannot be resolved, the reference in the input
1643 # string will be unchanged. The $(VAR_NAME) syntax can be escaped with a
1644 # double $$, ie: $$(VAR_NAME). Escaped references will never be expanded,
1645 # regardless of whether the variable exists or not.
1646 # Cannot be updated.
1647 # More info:
1648 # https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
1649 # +optional
1650 &quot;A String&quot;,
1651 ],
1652 &quot;workingDir&quot;: &quot;A String&quot;, # Container&#x27;s working directory.
1653 # If not specified, the container runtime&#x27;s default will be used, which
1654 # might be configured in the container image.
1655 # Cannot be updated.
1656 # +optional
1657 &quot;ports&quot;: [ # List of ports to expose from the container. Exposing a port here gives
1658 # the system additional information about the network connections a
1659 # container uses, but is primarily informational. Not specifying a port here
1660 # DOES NOT prevent that port from being exposed. Any port which is
1661 # listening on the default &quot;0.0.0.0&quot; address inside a container will be
1662 # accessible from the network.
1663 # Cannot be updated.
1664 # +optional
1665 { # ContainerPort represents a network port in a single container.
1666 &quot;hostIP&quot;: &quot;A String&quot;, # What host IP to bind the external port to.
1667 # +optional
1668 &quot;name&quot;: &quot;A String&quot;, # If specified, this must be an IANA_SVC_NAME and unique within the pod. Each
1669 # named port in a pod must have a unique name. Name for the port that can be
1670 # referred to by services.
1671 # +optional
1672 &quot;hostPort&quot;: 42, # Number of port to expose on the host.
1673 # If specified, this must be a valid port number, 0 &lt; x &lt; 65536.
1674 # If HostNetwork is specified, this must match ContainerPort.
1675 # Most containers do not need this.
1676 # +optional
1677 &quot;containerPort&quot;: 42, # Number of port to expose on the pod&#x27;s IP address.
1678 # This must be a valid port number, 0 &lt; x &lt; 65536.
1679 &quot;protocol&quot;: &quot;A String&quot;, # Protocol for port. Must be UDP or TCP.
1680 # Defaults to &quot;TCP&quot;.
1681 # +optional
1682 },
1683 ],
1684 &quot;image&quot;: &quot;A String&quot;, # Docker image name.
1685 # More info: https://kubernetes.io/docs/concepts/containers/images
1686 &quot;envFrom&quot;: [ # List of sources to populate environment variables in the container.
1687 # The keys defined within a source must be a C_IDENTIFIER. All invalid keys
1688 # will be reported as an event when the container is starting. When a key
1689 # exists in multiple sources, the value associated with the last source will
1690 # take precedence. Values defined by an Env with a duplicate key will take
1691 # precedence. Cannot be updated. +optional
1692 { # EnvFromSource represents the source of a set of ConfigMaps
1693 &quot;prefix&quot;: &quot;A String&quot;, # An optional identifier to prepend to each key in the ConfigMap. Must be a
1694 # C_IDENTIFIER. +optional
1695 &quot;configMapRef&quot;: { # ConfigMapEnvSource selects a ConfigMap to populate the environment # The ConfigMap to select from
1696 # +optional
1697 # variables with.
1698 #
1699 # The contents of the target ConfigMap&#x27;s Data field will represent the
1700 # key-value pairs as environment variables.
1701 &quot;localObjectReference&quot;: { # LocalObjectReference contains enough information to let you locate the # This field should not be used directly as it is meant to be inlined
1702 # directly into the message. Use the &quot;name&quot; field instead.
1703 # referenced object inside the same namespace.
1704 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
1705 # More info:
1706 # https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
1707 },
1708 &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported
1709 #
1710 # Cloud Run for Anthos: supported
1711 #
1712 # Specify whether the ConfigMap must be defined
1713 # +optional
1714 &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
1715 #
1716 # Cloud Run for Anthos: supported
1717 #
1718 # The ConfigMap to select from.
1719 },
1720 &quot;secretRef&quot;: { # SecretEnvSource selects a Secret to populate the environment # The Secret to select from
1721 # +optional
1722 # variables with.
1723 #
1724 # The contents of the target Secret&#x27;s Data field will represent the
1725 # key-value pairs as environment variables.
1726 &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
1727 #
1728 # Cloud Run for Anthos: supported
1729 #
1730 # The Secret to select from.
1731 &quot;localObjectReference&quot;: { # LocalObjectReference contains enough information to let you locate the # This field should not be used directly as it is meant to be inlined
1732 # directly into the message. Use the &quot;name&quot; field instead.
1733 # referenced object inside the same namespace.
1734 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
1735 # More info:
1736 # https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
1737 },
1738 &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported
1739 #
1740 # Cloud Run for Anthos: supported
1741 #
1742 # Specify whether the Secret must be defined
1743 # +optional
1744 },
1745 },
1746 ],
1747 &quot;name&quot;: &quot;A String&quot;, # Name of the container specified as a DNS_LABEL.
1748 # Each container must have a unique name (DNS_LABEL).
1749 # Cannot be updated.
1750 &quot;command&quot;: [ # Entrypoint array. Not executed within a shell.
1751 # The docker image&#x27;s ENTRYPOINT is used if this is not provided.
1752 # Variable references $(VAR_NAME) are expanded using the container&#x27;s
1753 # environment. If a variable cannot be resolved, the reference in the input
1754 # string will be unchanged. The $(VAR_NAME) syntax can be escaped with a
1755 # double $$, ie: $$(VAR_NAME). Escaped references will never be expanded,
1756 # regardless of whether the variable exists or not.
1757 # Cannot be updated.
1758 # More info:
1759 # https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
1760 # +optional
1761 &quot;A String&quot;,
1762 ],
Bu Sun Kim65020912020-05-20 12:08:20 -07001763 },
Bu Sun Kim65020912020-05-20 12:08:20 -07001764 &quot;volumes&quot;: [
1765 { # Volume represents a named volume in a container.
1766 &quot;configMap&quot;: { # Adapts a ConfigMap into a volume.
1767 # The contents of the target ConfigMap&#x27;s Data field will be presented in a
1768 # volume as files using the keys in the Data field as the file names, unless
1769 # the items element is populated with specific mappings of keys to paths.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001770 &quot;optional&quot;: True or False, # Specify whether the Secret or its keys must be defined.
Bu Sun Kim65020912020-05-20 12:08:20 -07001771 &quot;name&quot;: &quot;A String&quot;, # Name of the config.
1772 &quot;defaultMode&quot;: 42, # Mode bits to use on created files by default. Must be a value between 0 and
1773 # 0777. Defaults to 0644. Directories within the path are not affected by
1774 # this setting. This might be in conflict with other options that affect the
1775 # file mode, like fsGroup, and the result can be other mode bits set.
1776 &quot;items&quot;: [ # If unspecified, each key-value pair in the Data field of the referenced
1777 # Secret will be projected into the volume as a file whose name is the
1778 # key and content is the value. If specified, the listed keys will be
1779 # projected into the specified paths, and unlisted keys will not be
1780 # present. If a key is specified which is not present in the Secret,
1781 # the volume setup will error unless it is marked optional.
1782 { # Maps a string key to a path within a volume.
Bu Sun Kim65020912020-05-20 12:08:20 -07001783 &quot;path&quot;: &quot;A String&quot;, # The relative path of the file to map the key to.
1784 # May not be an absolute path.
1785 # May not contain the path element &#x27;..&#x27;.
1786 # May not start with the string &#x27;..&#x27;.
1787 &quot;mode&quot;: 42, # Mode bits to use on this file, must be a value between 0 and 0777. If not
1788 # specified, the volume defaultMode will be used. This might be in conflict
1789 # with other options that affect the file mode, like fsGroup, and the result
1790 # can be other mode bits set. +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001791 &quot;key&quot;: &quot;A String&quot;, # The key to project.
Bu Sun Kim65020912020-05-20 12:08:20 -07001792 },
1793 ],
Bu Sun Kim65020912020-05-20 12:08:20 -07001794 },
1795 &quot;name&quot;: &quot;A String&quot;, # Volume&#x27;s name.
1796 &quot;secret&quot;: { # The contents of the target Secret&#x27;s Data field will be presented in a volume
1797 # as files using the keys in the Data field as the file names.
Bu Sun Kim65020912020-05-20 12:08:20 -07001798 &quot;defaultMode&quot;: 42, # Mode bits to use on created files by default. Must be a value between 0 and
1799 # 0777. Defaults to 0644. Directories within the path are not affected by
1800 # this setting. This might be in conflict with other options that affect the
1801 # file mode, like fsGroup, and the result can be other mode bits set.
1802 &quot;secretName&quot;: &quot;A String&quot;, # Name of the secret in the container&#x27;s namespace to use.
1803 &quot;items&quot;: [ # If unspecified, each key-value pair in the Data field of the referenced
1804 # Secret will be projected into the volume as a file whose name is the
1805 # key and content is the value. If specified, the listed keys will be
1806 # projected into the specified paths, and unlisted keys will not be
1807 # present. If a key is specified which is not present in the Secret,
1808 # the volume setup will error unless it is marked optional.
1809 { # Maps a string key to a path within a volume.
Bu Sun Kim65020912020-05-20 12:08:20 -07001810 &quot;path&quot;: &quot;A String&quot;, # The relative path of the file to map the key to.
1811 # May not be an absolute path.
1812 # May not contain the path element &#x27;..&#x27;.
1813 # May not start with the string &#x27;..&#x27;.
1814 &quot;mode&quot;: 42, # Mode bits to use on this file, must be a value between 0 and 0777. If not
1815 # specified, the volume defaultMode will be used. This might be in conflict
1816 # with other options that affect the file mode, like fsGroup, and the result
1817 # can be other mode bits set. +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001818 &quot;key&quot;: &quot;A String&quot;, # The key to project.
Bu Sun Kim65020912020-05-20 12:08:20 -07001819 },
1820 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001821 &quot;optional&quot;: True or False, # Specify whether the Secret or its keys must be defined.
Bu Sun Kim65020912020-05-20 12:08:20 -07001822 },
1823 },
1824 ],
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001825 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001826 }</pre>
1827</div>
1828
1829<div class="method">
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001830 <code class="details" id="list">list(parent, limit=None, watch=None, labelSelector=None, resourceVersion=None, includeUninitialized=None, fieldSelector=None, continue=None, x__xgafv=None)</code>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001831 <pre>Rpc to list revisions.
1832
1833Args:
1834 parent: string, The project ID or project number from which the revisions should be listed. (required)
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001835 limit: integer, The maximum number of records that should be returned.
1836 watch: boolean, Flag that indicates that the client expects to watch this resource as well.
1837Not currently used by Cloud Run.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001838 labelSelector: string, Allows to filter resources based on a label. Supported operations are
1839=, !=, exists, in, and notIn.
Bu Sun Kim65020912020-05-20 12:08:20 -07001840 resourceVersion: string, The baseline resource version from which the list or watch operation should
1841start. Not currently used by Cloud Run.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001842 includeUninitialized: boolean, Not currently used by Cloud Run.
Bu Sun Kim65020912020-05-20 12:08:20 -07001843 fieldSelector: string, Allows to filter resources based on a specific value for a field name.
1844Send this in a query string format. i.e. &#x27;metadata.name%3Dlorem&#x27;.
1845Not currently used by Cloud Run.
1846 continue: string, Optional encoded string to continue paging.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001847 x__xgafv: string, V1 error format.
1848 Allowed values
1849 1 - v1 error format
1850 2 - v2 error format
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001851
1852Returns:
1853 An object of the form:
1854
1855 { # ListRevisionsResponse is a list of Revision resources.
Bu Sun Kim65020912020-05-20 12:08:20 -07001856 &quot;apiVersion&quot;: &quot;A String&quot;, # The API version for this call such as &quot;serving.knative.dev/v1alpha1&quot;.
1857 &quot;kind&quot;: &quot;A String&quot;, # The kind of this resource, in this case &quot;RevisionList&quot;.
1858 &quot;unreachable&quot;: [ # Locations that could not be reached.
1859 &quot;A String&quot;,
Dan O'Mearadd494642020-05-01 07:42:23 -07001860 ],
Bu Sun Kim65020912020-05-20 12:08:20 -07001861 &quot;metadata&quot;: { # ListMeta describes metadata that synthetic resources must have, including # Metadata associated with this revision list.
1862 # lists and various status objects. A resource may have only one of
1863 # {ObjectMeta, ListMeta}.
1864 &quot;resourceVersion&quot;: &quot;A String&quot;, # String that identifies the server&#x27;s internal version of this object that
1865 # can be used by clients to determine when objects have changed. Value must
1866 # be treated as opaque by clients and passed unmodified back to the server.
1867 # Populated by the system.
1868 # Read-only.
1869 # More info:
1870 # https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency
1871 # +optional
1872 &quot;continue&quot;: &quot;A String&quot;, # continue may be set if the user set a limit on the number of items
1873 # returned, and indicates that the server has more data available. The value
1874 # is opaque and may be used to issue another request to the endpoint that
1875 # served this list to retrieve the next set of available objects. Continuing
1876 # a list may not be possible if the server configuration has changed or more
1877 # than a few minutes have passed. The resourceVersion field returned when
1878 # using this continue value will be identical to the value in the first
1879 # response.
1880 &quot;selfLink&quot;: &quot;A String&quot;, # SelfLink is a URL representing this object.
1881 # Populated by the system.
1882 # Read-only.
1883 # +optional
1884 },
1885 &quot;items&quot;: [ # List of Revisions.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001886 { # Revision is an immutable snapshot of code and configuration. A revision
1887 # references a container image. Revisions are created by updates to a
1888 # Configuration.
1889 #
1890 # Cloud Run does not currently support referencing a build that is responsible
1891 # for materializing the container image from source.
1892 #
1893 # See also:
1894 # https://github.com/knative/serving/blob/master/docs/spec/overview.md#revision
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001895 &quot;kind&quot;: &quot;A String&quot;, # The kind of this resource, in this case &quot;Revision&quot;.
1896 &quot;metadata&quot;: { # ObjectMeta is metadata that all persisted resources must have, which includes # Metadata associated with this Revision, including name, namespace, labels,
1897 # and annotations.
1898 # all objects users must create.
1899 &quot;generateName&quot;: &quot;A String&quot;, # Not currently supported by Cloud Run.
1900 #
1901 # GenerateName is an optional prefix, used by the server, to generate a
1902 # unique name ONLY IF the Name field has not been provided. If this field is
1903 # used, the name returned to the client will be different than the name
1904 # passed. This value will also be combined with a unique suffix. The provided
1905 # value has the same validation rules as the Name field, and may be truncated
1906 # by the length of the suffix required to make the value unique on the
1907 # server.
1908 #
1909 # If this field is specified and the generated name exists, the server will
1910 # NOT return a 409 - instead, it will either return 201 Created or 500 with
1911 # Reason ServerTimeout indicating a unique name could not be found in the
1912 # time allotted, and the client should retry (optionally after the time
1913 # indicated in the Retry-After header).
1914 #
1915 # Applied only if Name is not specified.
1916 # More info:
1917 # https://git.k8s.io/community/contributors/devel/api-conventions.md#idempotency
1918 # +optional
1919 # string generateName = 2;
1920 &quot;name&quot;: &quot;A String&quot;, # Name must be unique within a namespace, within a Cloud Run region.
1921 # Is required when creating
1922 # resources, although some resources may allow a client to request the
1923 # generation of an appropriate name automatically. Name is primarily intended
1924 # for creation idempotence and configuration definition. Cannot be updated.
1925 # More info: http://kubernetes.io/docs/user-guide/identifiers#names
1926 # +optional
1927 &quot;deletionGracePeriodSeconds&quot;: 42, # Not currently supported by Cloud Run.
1928 #
1929 # Number of seconds allowed for this object to gracefully terminate before
1930 # it will be removed from the system. Only set when deletionTimestamp is also
1931 # set. May only be shortened. Read-only. +optional
1932 &quot;clusterName&quot;: &quot;A String&quot;, # Not currently supported by Cloud Run.
1933 #
1934 # The name of the cluster which the object belongs to.
1935 # This is used to distinguish resources with same name and namespace in
1936 # different clusters. This field is not set anywhere right now and apiserver
1937 # is going to ignore it if set in create or update request. +optional
1938 &quot;finalizers&quot;: [ # Not currently supported by Cloud Run.
1939 #
1940 # Must be empty before the object is deleted from the registry. Each entry
1941 # is an identifier for the responsible component that will remove the entry
1942 # from the list. If the deletionTimestamp of the object is non-nil, entries
1943 # in this list can only be removed.
1944 # +optional
1945 # +patchStrategy=merge
1946 &quot;A String&quot;,
1947 ],
1948 &quot;deletionTimestamp&quot;: &quot;A String&quot;, # DeletionTimestamp is RFC 3339 date and time at which this resource will be
1949 # deleted. This field is set by the server when a graceful deletion is
1950 # requested by the user, and is not directly settable by a client. The
1951 # resource is expected to be deleted (no longer visible from resource lists,
1952 # and not reachable by name) after the time in this field, once the
1953 # finalizers list is empty. As long as the finalizers list contains items,
1954 # deletion is blocked. Once the deletionTimestamp is set, this value may not
1955 # be unset or be set further into the future, although it may be shortened or
1956 # the resource may be deleted prior to this time. For example, a user may
1957 # request that a pod is deleted in 30 seconds. The Kubelet will react by
1958 # sending a graceful termination signal to the containers in the pod. After
1959 # that 30 seconds, the Kubelet will send a hard termination signal (SIGKILL)
1960 # to the container and after cleanup, remove the pod from the API. In the
1961 # presence of network partitions, this object may still exist after this
1962 # timestamp, until an administrator or automated process can determine the
1963 # resource is fully terminated.
1964 # If not set, graceful deletion of the object has not been requested.
1965 #
1966 # Populated by the system when a graceful deletion is requested.
1967 # Read-only.
1968 # More info:
1969 # https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
1970 # +optional
1971 &quot;ownerReferences&quot;: [ # List of objects that own this object. If ALL objects in the list have
1972 # been deleted, this object will be garbage collected.
1973 # +optional
1974 { # OwnerReference contains enough information to let you identify an owning
1975 # object. Currently, an owning object must be in the same namespace, so there
1976 # is no namespace field.
1977 &quot;controller&quot;: True or False, # If true, this reference points to the managing controller.
1978 # +optional
1979 &quot;kind&quot;: &quot;A String&quot;, # Kind of the referent.
1980 # More info:
1981 # https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds
1982 &quot;blockOwnerDeletion&quot;: True or False, # If true, AND if the owner has the &quot;foregroundDeletion&quot; finalizer, then
1983 # the owner cannot be deleted from the key-value store until this
1984 # reference is removed.
1985 # Defaults to false.
1986 # To set this field, a user needs &quot;delete&quot; permission of the owner,
1987 # otherwise 422 (Unprocessable Entity) will be returned.
1988 # +optional
1989 &quot;apiVersion&quot;: &quot;A String&quot;, # API version of the referent.
1990 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
1991 # More info: http://kubernetes.io/docs/user-guide/identifiers#names
1992 &quot;uid&quot;: &quot;A String&quot;, # UID of the referent.
1993 # More info: http://kubernetes.io/docs/user-guide/identifiers#uids
1994 },
1995 ],
1996 &quot;creationTimestamp&quot;: &quot;A String&quot;, # CreationTimestamp is a timestamp representing the server time when this
1997 # object was created. It is not guaranteed to be set in happens-before order
1998 # across separate operations. Clients may not set this value. It is
1999 # represented in RFC3339 form and is in UTC.
2000 #
2001 # Populated by the system.
2002 # Read-only.
2003 # Null for lists.
2004 # More info:
2005 # https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
2006 # +optional
2007 &quot;labels&quot;: { # Map of string keys and values that can be used to organize and categorize
2008 # (scope and select) objects. May match selectors of replication controllers
2009 # and routes.
2010 # More info: http://kubernetes.io/docs/user-guide/labels
2011 # +optional
2012 &quot;a_key&quot;: &quot;A String&quot;,
2013 },
2014 &quot;generation&quot;: 42, # A sequence number representing a specific generation of the desired state.
2015 # Populated by the system. Read-only.
2016 # +optional
2017 &quot;resourceVersion&quot;: &quot;A String&quot;, # An opaque value that represents the internal version of this object that
2018 # can be used by clients to determine when objects have changed. May be used
2019 # for optimistic concurrency, change detection, and the watch operation on a
2020 # resource or set of resources. Clients must treat these values as opaque and
2021 # passed unmodified back to the server. They may only be valid for a
2022 # particular resource or set of resources.
2023 #
2024 # Populated by the system.
2025 # Read-only.
2026 # Value must be treated as opaque by clients and .
2027 # More info:
2028 # https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency
2029 # +optional
2030 &quot;selfLink&quot;: &quot;A String&quot;, # SelfLink is a URL representing this object.
2031 # Populated by the system.
2032 # Read-only.
2033 # +optional
2034 # string selfLink = 4;
2035 &quot;uid&quot;: &quot;A String&quot;, # UID is the unique in time and space value for this object. It is typically
2036 # generated by the server on successful creation of a resource and is not
2037 # allowed to change on PUT operations.
2038 #
2039 # Populated by the system.
2040 # Read-only.
2041 # More info: http://kubernetes.io/docs/user-guide/identifiers#uids
2042 # +optional
2043 &quot;namespace&quot;: &quot;A String&quot;, # Namespace defines the space within each name must be unique, within a
2044 # Cloud Run region. In Cloud Run the namespace must be equal to either the
2045 # project ID or project number.
2046 &quot;annotations&quot;: { # Annotations is an unstructured key value map stored with a resource that
2047 # may be set by external tools to store and retrieve arbitrary metadata. They
2048 # are not queryable and should be preserved when modifying objects. More
2049 # info: http://kubernetes.io/docs/user-guide/annotations +optional
2050 &quot;a_key&quot;: &quot;A String&quot;,
2051 },
2052 },
Bu Sun Kim65020912020-05-20 12:08:20 -07002053 &quot;status&quot;: { # RevisionStatus communicates the observed state of the Revision (from the # Status communicates the observed state of the Revision (from the
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002054 # controller).
2055 # controller).
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002056 &quot;serviceName&quot;: &quot;A String&quot;, # Not currently used by Cloud Run.
Bu Sun Kim65020912020-05-20 12:08:20 -07002057 &quot;conditions&quot;: [ # Conditions communicates information about ongoing/complete
2058 # reconciliation processes that bring the &quot;spec&quot; inline with the observed
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002059 # state of the world.
2060 #
2061 # As a Revision is being prepared, it will incrementally
Bu Sun Kim65020912020-05-20 12:08:20 -07002062 # update conditions &quot;ResourcesAvailable&quot;, &quot;ContainerHealthy&quot;, and &quot;Active&quot;,
2063 # which contribute to the overall &quot;Ready&quot; condition.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002064 { # RevisionCondition defines a readiness condition for a Revision.
Bu Sun Kim65020912020-05-20 12:08:20 -07002065 &quot;message&quot;: &quot;A String&quot;, # Human readable message indicating details about the current status.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002066 # +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07002067 &quot;lastTransitionTime&quot;: &quot;A String&quot;, # Last time the condition transitioned from one status to another.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002068 # +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07002069 &quot;status&quot;: &quot;A String&quot;, # Status of the condition, one of True, False, Unknown.
2070 &quot;severity&quot;: &quot;A String&quot;, # How to interpret failures of this condition, one of Error, Warning, Info
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002071 # +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07002072 &quot;reason&quot;: &quot;A String&quot;, # One-word CamelCase reason for the condition&#x27;s last transition.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002073 # +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07002074 &quot;type&quot;: &quot;A String&quot;, # RevisionConditionType is used to communicate the status of the
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002075 # reconciliation process. See also:
2076 # https://github.com/knative/serving/blob/master/docs/spec/errors.md#error-conditions-and-reporting
2077 # Types include:
2078 #
Bu Sun Kim65020912020-05-20 12:08:20 -07002079 # * &quot;Ready&quot;: True when the Revision is ready.
2080 # * &quot;ResourcesAvailable&quot;: True when underlying resources have been
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002081 # provisioned.
Bu Sun Kim65020912020-05-20 12:08:20 -07002082 # * &quot;ContainerHealthy&quot;: True when the Revision readiness check completes.
2083 # * &quot;Active&quot;: True when the Revision may receive traffic.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002084 },
2085 ],
Bu Sun Kim65020912020-05-20 12:08:20 -07002086 &quot;observedGeneration&quot;: 42, # ObservedGeneration is the &#x27;Generation&#x27; of the Revision that
2087 # was last processed by the controller.
2088 #
2089 # Clients polling for completed reconciliation should poll until
2090 # observedGeneration = metadata.generation, and the Ready condition&#x27;s status
2091 # is True or False.
2092 &quot;imageDigest&quot;: &quot;A String&quot;, # ImageDigest holds the resolved digest for the image specified
2093 # within .Spec.Container.Image. The digest is resolved during the creation
2094 # of Revision. This field holds the digest value regardless of whether
2095 # a tag or digest was originally specified in the Container object.
2096 &quot;logUrl&quot;: &quot;A String&quot;, # Specifies the generated logging url for this particular revision
2097 # based on the revision url template specified in the controller&#x27;s config.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002098 # +optional
2099 },
Bu Sun Kim65020912020-05-20 12:08:20 -07002100 &quot;apiVersion&quot;: &quot;A String&quot;, # The API version for this call such as &quot;serving.knative.dev/v1alpha1&quot;.
2101 &quot;spec&quot;: { # RevisionSpec holds the desired state of the Revision (from the client). # Spec holds the desired state of the Revision (from the client).
2102 &quot;containerConcurrency&quot;: 42, # (Optional)
Dan O'Mearadd494642020-05-01 07:42:23 -07002103 #
2104 # ContainerConcurrency specifies the maximum allowed in-flight (concurrent)
2105 # requests per container instance of the Revision.
2106 #
2107 # Cloud Run fully managed: supported, defaults to 80
2108 #
2109 # Cloud Run on GKE: supported, defaults to 0, which means concurrency
2110 # to the application is not limited, and the system decides the
2111 # target concurrency for the autoscaler.
Bu Sun Kim65020912020-05-20 12:08:20 -07002112 &quot;containers&quot;: [ # Containers holds the single container that defines the unit of execution
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002113 # for this Revision. In the context of a Revision, we disallow a number of
2114 # fields on this Container, including: name and lifecycle.
Dan O'Mearadd494642020-05-01 07:42:23 -07002115 # In Cloud Run, only a single container may be provided.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002116 { # A single application container.
2117 # This specifies both the container to run, the command to run in the container
2118 # and the arguments to supply to it.
2119 # Note that additional arguments may be supplied by the system to the container
2120 # at runtime.
Bu Sun Kim65020912020-05-20 12:08:20 -07002121 &quot;terminationMessagePolicy&quot;: &quot;A String&quot;, # Indicate how the termination message should be populated. File will use the
2122 # contents of terminationMessagePath to populate the container status message
2123 # on both success and failure. FallbackToLogsOnError will use the last chunk
2124 # of container log output if the termination message file is empty and the
2125 # container exited with an error. The log output is limited to 2048 bytes or
2126 # 80 lines, whichever is smaller. Defaults to File. Cannot be updated.
2127 # +optional
2128 &quot;securityContext&quot;: { # SecurityContext holds security configuration that will be applied to a # Security options the pod should run with.
2129 # More info: https://kubernetes.io/docs/concepts/policy/security-context/
2130 # More info:
2131 # https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
2132 # +optional
2133 # container. Some fields are present in both SecurityContext and
2134 # PodSecurityContext. When both are set, the values in SecurityContext take
2135 # precedence.
2136 &quot;capabilities&quot;: { # Adds and removes POSIX capabilities from running containers. # The capabilities to add/drop when running containers.
2137 # Defaults to the default set of capabilities granted by the container
2138 # runtime. +optional
2139 &quot;add&quot;: [ # Added capabilities
2140 # +optional
2141 &quot;A String&quot;,
2142 ],
2143 &quot;drop&quot;: [ # Removed capabilities
2144 # +optional
2145 &quot;A String&quot;,
2146 ],
2147 },
2148 &quot;runAsNonRoot&quot;: True or False, # Indicates that the container must run as a non-root user.
2149 # If true, the Kubelet will validate the image at runtime to ensure that it
2150 # does not run as UID 0 (root) and fail to start the container if it does.
2151 # If unset or false, no such validation will be performed.
2152 # May also be set in PodSecurityContext. If set in both SecurityContext and
2153 # PodSecurityContext, the value specified in SecurityContext takes
2154 # precedence. +optional
2155 &quot;runAsGroup&quot;: 42, # The GID to run the entrypoint of the container process.
2156 # Uses runtime default if unset.
2157 # May also be set in PodSecurityContext. If set in both SecurityContext and
2158 # PodSecurityContext, the value specified in SecurityContext takes
2159 # precedence. +optional
2160 &quot;privileged&quot;: True or False, # Run container in privileged mode.
2161 # Processes in privileged containers are essentially equivalent to root on
2162 # the host. Defaults to false. +optional
2163 &quot;allowPrivilegeEscalation&quot;: True or False, # AllowPrivilegeEscalation controls whether a process can gain more
2164 # privileges than its parent process. This bool directly controls if
2165 # the no_new_privs flag will be set on the container process.
2166 # AllowPrivilegeEscalation is true always when the container is:
2167 # 1) run as Privileged
2168 # 2) has CAP_SYS_ADMIN
2169 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002170 &quot;readOnlyRootFilesystem&quot;: True or False, # Whether this container has a read-only root filesystem.
2171 # Default is false.
2172 # +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07002173 &quot;seLinuxOptions&quot;: { # SELinuxOptions are the labels to be applied to the container # The SELinux context to be applied to the container.
2174 # If unspecified, the container runtime will allocate a random SELinux
2175 # context for each container. May also be set in PodSecurityContext. If set
2176 # in both SecurityContext and PodSecurityContext, the value specified in
2177 # SecurityContext takes precedence. +optional
2178 &quot;role&quot;: &quot;A String&quot;, # Role is a SELinux role label that applies to the container.
2179 # +optional
2180 &quot;level&quot;: &quot;A String&quot;, # Level is SELinux level label that applies to the container.
2181 # +optional
2182 &quot;user&quot;: &quot;A String&quot;, # User is a SELinux user label that applies to the container.
2183 # +optional
2184 &quot;type&quot;: &quot;A String&quot;, # Type is a SELinux type label that applies to the container.
2185 # +optional
2186 },
Bu Sun Kim65020912020-05-20 12:08:20 -07002187 &quot;runAsUser&quot;: 42, # The UID to run the entrypoint of the container process.
2188 # Defaults to user specified in image metadata if unspecified.
2189 # May also be set in PodSecurityContext. If set in both SecurityContext and
2190 # PodSecurityContext, the value specified in SecurityContext takes
2191 # precedence. +optional
2192 },
2193 &quot;livenessProbe&quot;: { # Probe describes a health check to be performed against a container to # Periodic probe of container liveness.
2194 # Container will be restarted if the probe fails.
2195 # Cannot be updated.
2196 # More info:
2197 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
2198 # +optional
2199 # determine whether it is alive or ready to receive traffic.
Bu Sun Kim65020912020-05-20 12:08:20 -07002200 &quot;initialDelaySeconds&quot;: 42, # Number of seconds after the container has started before liveness probes
2201 # are initiated. More info:
2202 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
2203 # +optional
2204 &quot;timeoutSeconds&quot;: 42, # Number of seconds after which the probe times out.
2205 # Defaults to 1 second. Minimum value is 1.
2206 # More info:
2207 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
2208 # +optional
2209 &quot;handler&quot;: { # Handler defines a specific action that should be taken # The action taken to determine the health of a container
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002210 &quot;tcpSocket&quot;: { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
2211 # TCP hooks not yet supported
2212 &quot;port&quot;: { # 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.
2213 # Number must be in the range 1 to 65535.
2214 # Name must be an IANA_SVC_NAME.
2215 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
2216 # inner type. This allows you to have, for example, a JSON field that can
2217 # accept a name or number.
2218 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
2219 &quot;type&quot;: 42, # The type of the value.
2220 &quot;intVal&quot;: 42, # The int value.
2221 },
2222 &quot;host&quot;: &quot;A String&quot;, # Optional: Host name to connect to, defaults to the pod IP.
2223 # +optional
2224 },
Bu Sun Kim65020912020-05-20 12:08:20 -07002225 &quot;exec&quot;: { # ExecAction describes a &quot;run in container&quot; action. # One and only one of the following should be specified.
2226 # Exec specifies the action to take.
2227 # +optional
2228 &quot;command&quot;: &quot;A String&quot;, # Command is the command line to execute inside the container, the working
2229 # directory for the command is root (&#x27;/&#x27;) in the container&#x27;s filesystem. The
2230 # command is simply exec&#x27;d, it is not run inside a shell, so traditional
2231 # shell instructions (&#x27;|&#x27;, etc) won&#x27;t work. To use a shell, you need to
2232 # explicitly call out to that shell. Exit status of 0 is treated as
2233 # live/healthy and non-zero is unhealthy. +optional
2234 },
2235 &quot;httpGet&quot;: { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
2236 # +optional
2237 &quot;httpHeaders&quot;: [ # Custom headers to set in the request. HTTP allows repeated headers.
2238 # +optional
2239 { # HTTPHeader describes a custom header to be used in HTTP probes
Bu Sun Kim65020912020-05-20 12:08:20 -07002240 &quot;name&quot;: &quot;A String&quot;, # The header field name
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002241 &quot;value&quot;: &quot;A String&quot;, # The header field value
Bu Sun Kim65020912020-05-20 12:08:20 -07002242 },
2243 ],
2244 &quot;path&quot;: &quot;A String&quot;, # Path to access on the HTTP server.
2245 # +optional
2246 &quot;port&quot;: { # 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.
2247 # Number must be in the range 1 to 65535.
2248 # Name must be an IANA_SVC_NAME.
2249 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
2250 # inner type. This allows you to have, for example, a JSON field that can
2251 # accept a name or number.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002252 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
Bu Sun Kim65020912020-05-20 12:08:20 -07002253 &quot;type&quot;: 42, # The type of the value.
2254 &quot;intVal&quot;: 42, # The int value.
Bu Sun Kim65020912020-05-20 12:08:20 -07002255 },
2256 &quot;host&quot;: &quot;A String&quot;, # Host name to connect to, defaults to the pod IP. You probably want to set
2257 # &quot;Host&quot; in httpHeaders instead.
2258 # +optional
2259 &quot;scheme&quot;: &quot;A String&quot;, # Scheme to use for connecting to the host.
2260 # Defaults to HTTP.
2261 # +optional
2262 },
Bu Sun Kim65020912020-05-20 12:08:20 -07002263 },
2264 &quot;successThreshold&quot;: 42, # Minimum consecutive successes for the probe to be considered successful
2265 # after having failed. Defaults to 1. Must be 1 for liveness. Minimum value
2266 # is 1. +optional
2267 &quot;periodSeconds&quot;: 42, # How often (in seconds) to perform the probe.
2268 # Default to 10 seconds. Minimum value is 1.
2269 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002270 &quot;failureThreshold&quot;: 42, # Minimum consecutive failures for the probe to be considered failed after
2271 # having succeeded. Defaults to 3. Minimum value is 1. +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07002272 },
2273 &quot;env&quot;: [ # List of environment variables to set in the container.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002274 # Cannot be updated.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002275 # +optional
Dan O'Mearadd494642020-05-01 07:42:23 -07002276 { # EnvVar represents an environment variable present in a Container.
Bu Sun Kim65020912020-05-20 12:08:20 -07002277 &quot;name&quot;: &quot;A String&quot;, # Name of the environment variable. Must be a C_IDENTIFIER.
2278 &quot;valueFrom&quot;: { # Cloud Run fully managed: not supported # Cloud Run fully managed: not supported
Dan O'Mearadd494642020-05-01 07:42:23 -07002279 #
2280 # Cloud Run on GKE: supported
2281 #
Bu Sun Kim65020912020-05-20 12:08:20 -07002282 # Source for the environment variable&#x27;s value. Cannot be used if value is not
Dan O'Mearadd494642020-05-01 07:42:23 -07002283 # empty. +optional
2284 #
2285 # Cloud Run on GKE: supported
2286 #
2287 # EnvVarSource represents a source for the value of an EnvVar.
Bu Sun Kim65020912020-05-20 12:08:20 -07002288 &quot;configMapKeyRef&quot;: { # Cloud Run fully managed: not supported # Cloud Run fully managed: not supported
Dan O'Mearadd494642020-05-01 07:42:23 -07002289 #
2290 # Cloud Run on GKE: supported
2291 #
2292 # Selects a key of a ConfigMap.
2293 # +optional
2294 #
2295 # Cloud Run on GKE: supported
2296 #
2297 # Selects a key from a ConfigMap.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002298 &quot;localObjectReference&quot;: { # LocalObjectReference contains enough information to let you locate the # This field should not be used directly as it is meant to be inlined
2299 # directly into the message. Use the &quot;name&quot; field instead.
2300 # referenced object inside the same namespace.
2301 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
2302 # More info:
2303 # https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
2304 },
Bu Sun Kim65020912020-05-20 12:08:20 -07002305 &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported
Dan O'Mearadd494642020-05-01 07:42:23 -07002306 #
2307 # Cloud Run on GKE: supported
2308 #
2309 # Specify whether the ConfigMap or its key must be defined
2310 # +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07002311 &quot;key&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
Dan O'Mearadd494642020-05-01 07:42:23 -07002312 #
2313 # Cloud Run on GKE: supported
2314 #
2315 # The key to select.
Bu Sun Kim65020912020-05-20 12:08:20 -07002316 &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
2317 #
2318 # Cloud Run on GKE: supported
2319 #
2320 # The ConfigMap to select from.
Bu Sun Kim65020912020-05-20 12:08:20 -07002321 },
2322 &quot;secretKeyRef&quot;: { # Cloud Run fully managed: not supported # Cloud Run fully managed: not supported
2323 #
2324 # Cloud Run on GKE: supported
2325 #
2326 # Selects a key of a secret in the pod&#x27;s namespace
2327 # +optional
2328 #
2329 # Cloud Run on GKE: supported
2330 #
2331 # SecretKeySelector selects a key of a Secret.
Bu Sun Kim65020912020-05-20 12:08:20 -07002332 &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported
2333 #
2334 # Cloud Run on GKE: supported
2335 #
2336 # Specify whether the Secret or its key must be defined
2337 # +optional
2338 &quot;key&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
2339 #
2340 # Cloud Run on GKE: supported
2341 #
2342 # The key of the secret to select from. Must be a valid secret key.
2343 &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
2344 #
2345 # Cloud Run on GKE: supported
2346 #
2347 # The name of the secret in the pod&#x27;s namespace to select from.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002348 &quot;localObjectReference&quot;: { # LocalObjectReference contains enough information to let you locate the # This field should not be used directly as it is meant to be inlined
2349 # directly into the message. Use the &quot;name&quot; field instead.
2350 # referenced object inside the same namespace.
2351 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
2352 # More info:
2353 # https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
2354 },
Dan O'Mearadd494642020-05-01 07:42:23 -07002355 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002356 },
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002357 &quot;value&quot;: &quot;A String&quot;, # Variable references $(VAR_NAME) are expanded
2358 # using the previous defined environment variables in the container and
2359 # any route environment variables. If a variable cannot be resolved,
2360 # the reference in the input string will be unchanged. The $(VAR_NAME)
2361 # syntax can be escaped with a double $$, ie: $$(VAR_NAME). Escaped
2362 # references will never be expanded, regardless of whether the variable
2363 # exists or not.
2364 # Defaults to &quot;&quot;.
2365 # +optional
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002366 },
Dan O'Mearadd494642020-05-01 07:42:23 -07002367 ],
Bu Sun Kim65020912020-05-20 12:08:20 -07002368 &quot;resources&quot;: { # ResourceRequirements describes the compute resource requirements. # Compute Resources required by this container.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002369 # Cannot be updated.
2370 # More info:
2371 # https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
2372 # +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07002373 &quot;requestsInMap&quot;: { # Requests describes the minimum amount of compute resources required.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002374 # If Requests is omitted for a container, it defaults to Limits if that is
2375 # explicitly specified, otherwise to an implementation-defined value.
2376 # This is a temporary field created to migrate away from the
Dan O'Mearadd494642020-05-01 07:42:23 -07002377 # map&lt;string, Quantity&gt; requests field. This is done to become compliant
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002378 # with k8s style API.
2379 # This field is deprecated in favor of requests field.
Bu Sun Kim65020912020-05-20 12:08:20 -07002380 &quot;a_key&quot;: { # The view model of a single quantity, e.g. &quot;800 MiB&quot;. Corresponds to
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002381 # https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/generated.proto
Bu Sun Kim65020912020-05-20 12:08:20 -07002382 &quot;string&quot;: &quot;A String&quot;, # Stringified version of the quantity, e.g., &quot;800 MiB&quot;.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002383 },
2384 },
Bu Sun Kim65020912020-05-20 12:08:20 -07002385 &quot;requests&quot;: { # Requests describes the minimum amount of compute resources required.
Dan O'Mearadd494642020-05-01 07:42:23 -07002386 # If Requests is omitted for a container, it defaults to Limits if that is
2387 # explicitly specified, otherwise to an implementation-defined value.
Bu Sun Kim65020912020-05-20 12:08:20 -07002388 # The values of the map is string form of the &#x27;quantity&#x27; k8s type:
Dan O'Mearadd494642020-05-01 07:42:23 -07002389 # https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go
Bu Sun Kim65020912020-05-20 12:08:20 -07002390 &quot;a_key&quot;: &quot;A String&quot;,
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002391 },
Bu Sun Kim65020912020-05-20 12:08:20 -07002392 &quot;limits&quot;: { # Limits describes the maximum amount of compute resources allowed.
2393 # The values of the map is string form of the &#x27;quantity&#x27; k8s type:
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002394 # https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go
Bu Sun Kim65020912020-05-20 12:08:20 -07002395 &quot;a_key&quot;: &quot;A String&quot;,
2396 },
2397 &quot;limitsInMap&quot;: { # Limits describes the maximum amount of compute resources allowed.
2398 # This is a temporary field created to migrate away from the
2399 # map&lt;string, Quantity&gt; limits field. This is done to become compliant
2400 # with k8s style API.
2401 # This field is deprecated in favor of limits field.
2402 &quot;a_key&quot;: { # The view model of a single quantity, e.g. &quot;800 MiB&quot;. Corresponds to
2403 # https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/generated.proto
2404 &quot;string&quot;: &quot;A String&quot;, # Stringified version of the quantity, e.g., &quot;800 MiB&quot;.
2405 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002406 },
2407 },
Bu Sun Kim65020912020-05-20 12:08:20 -07002408 &quot;readinessProbe&quot;: { # Probe describes a health check to be performed against a container to # Periodic probe of container service readiness.
2409 # Container will be removed from service endpoints if the probe fails.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002410 # Cannot be updated.
Bu Sun Kim65020912020-05-20 12:08:20 -07002411 # More info:
2412 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
2413 # +optional
2414 # determine whether it is alive or ready to receive traffic.
Bu Sun Kim65020912020-05-20 12:08:20 -07002415 &quot;initialDelaySeconds&quot;: 42, # Number of seconds after the container has started before liveness probes
2416 # are initiated. More info:
2417 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
2418 # +optional
2419 &quot;timeoutSeconds&quot;: 42, # Number of seconds after which the probe times out.
2420 # Defaults to 1 second. Minimum value is 1.
2421 # More info:
2422 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
2423 # +optional
2424 &quot;handler&quot;: { # Handler defines a specific action that should be taken # The action taken to determine the health of a container
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002425 &quot;tcpSocket&quot;: { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
2426 # TCP hooks not yet supported
2427 &quot;port&quot;: { # 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.
2428 # Number must be in the range 1 to 65535.
2429 # Name must be an IANA_SVC_NAME.
2430 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
2431 # inner type. This allows you to have, for example, a JSON field that can
2432 # accept a name or number.
2433 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
2434 &quot;type&quot;: 42, # The type of the value.
2435 &quot;intVal&quot;: 42, # The int value.
2436 },
2437 &quot;host&quot;: &quot;A String&quot;, # Optional: Host name to connect to, defaults to the pod IP.
2438 # +optional
2439 },
Bu Sun Kim65020912020-05-20 12:08:20 -07002440 &quot;exec&quot;: { # ExecAction describes a &quot;run in container&quot; action. # One and only one of the following should be specified.
2441 # Exec specifies the action to take.
2442 # +optional
2443 &quot;command&quot;: &quot;A String&quot;, # Command is the command line to execute inside the container, the working
2444 # directory for the command is root (&#x27;/&#x27;) in the container&#x27;s filesystem. The
2445 # command is simply exec&#x27;d, it is not run inside a shell, so traditional
2446 # shell instructions (&#x27;|&#x27;, etc) won&#x27;t work. To use a shell, you need to
2447 # explicitly call out to that shell. Exit status of 0 is treated as
2448 # live/healthy and non-zero is unhealthy. +optional
2449 },
2450 &quot;httpGet&quot;: { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
2451 # +optional
2452 &quot;httpHeaders&quot;: [ # Custom headers to set in the request. HTTP allows repeated headers.
2453 # +optional
2454 { # HTTPHeader describes a custom header to be used in HTTP probes
Bu Sun Kim65020912020-05-20 12:08:20 -07002455 &quot;name&quot;: &quot;A String&quot;, # The header field name
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002456 &quot;value&quot;: &quot;A String&quot;, # The header field value
Bu Sun Kim65020912020-05-20 12:08:20 -07002457 },
2458 ],
2459 &quot;path&quot;: &quot;A String&quot;, # Path to access on the HTTP server.
2460 # +optional
2461 &quot;port&quot;: { # 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.
2462 # Number must be in the range 1 to 65535.
2463 # Name must be an IANA_SVC_NAME.
2464 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
2465 # inner type. This allows you to have, for example, a JSON field that can
2466 # accept a name or number.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002467 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
Bu Sun Kim65020912020-05-20 12:08:20 -07002468 &quot;type&quot;: 42, # The type of the value.
2469 &quot;intVal&quot;: 42, # The int value.
Bu Sun Kim65020912020-05-20 12:08:20 -07002470 },
2471 &quot;host&quot;: &quot;A String&quot;, # Host name to connect to, defaults to the pod IP. You probably want to set
2472 # &quot;Host&quot; in httpHeaders instead.
2473 # +optional
2474 &quot;scheme&quot;: &quot;A String&quot;, # Scheme to use for connecting to the host.
2475 # Defaults to HTTP.
2476 # +optional
2477 },
Bu Sun Kim65020912020-05-20 12:08:20 -07002478 },
2479 &quot;successThreshold&quot;: 42, # Minimum consecutive successes for the probe to be considered successful
2480 # after having failed. Defaults to 1. Must be 1 for liveness. Minimum value
2481 # is 1. +optional
2482 &quot;periodSeconds&quot;: 42, # How often (in seconds) to perform the probe.
2483 # Default to 10 seconds. Minimum value is 1.
2484 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002485 &quot;failureThreshold&quot;: 42, # Minimum consecutive failures for the probe to be considered failed after
2486 # having succeeded. Defaults to 3. Minimum value is 1. +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07002487 },
2488 &quot;imagePullPolicy&quot;: &quot;A String&quot;, # Image pull policy.
2489 # One of Always, Never, IfNotPresent.
2490 # Defaults to Always if :latest tag is specified, or IfNotPresent otherwise.
2491 # Cannot be updated.
2492 # More info:
2493 # https://kubernetes.io/docs/concepts/containers/images#updating-images
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002494 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002495 &quot;lifecycle&quot;: { # Lifecycle describes actions that the management system should take in # Actions that the management system should take in response to container
2496 # lifecycle events. Cannot be updated. +optional
2497 # response to container lifecycle events. For the PostStart and PreStop
2498 # lifecycle handlers, management of the container blocks until the action is
2499 # complete, unless the container process fails, in which case the handler is
2500 # aborted.
2501 &quot;preStop&quot;: { # Handler defines a specific action that should be taken # PreStop is called immediately before a container is terminated.
2502 # The container is terminated after the handler completes.
2503 # The reason for termination is passed to the handler.
2504 # Regardless of the outcome of the handler, the container is eventually
2505 # terminated. Other management of the container blocks until the hook
2506 # completes. More info:
2507 # https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
2508 # +optional
2509 &quot;tcpSocket&quot;: { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
2510 # TCP hooks not yet supported
2511 &quot;port&quot;: { # 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.
2512 # Number must be in the range 1 to 65535.
2513 # Name must be an IANA_SVC_NAME.
2514 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
2515 # inner type. This allows you to have, for example, a JSON field that can
2516 # accept a name or number.
2517 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
2518 &quot;type&quot;: 42, # The type of the value.
2519 &quot;intVal&quot;: 42, # The int value.
2520 },
2521 &quot;host&quot;: &quot;A String&quot;, # Optional: Host name to connect to, defaults to the pod IP.
2522 # +optional
2523 },
2524 &quot;exec&quot;: { # ExecAction describes a &quot;run in container&quot; action. # One and only one of the following should be specified.
2525 # Exec specifies the action to take.
2526 # +optional
2527 &quot;command&quot;: &quot;A String&quot;, # Command is the command line to execute inside the container, the working
2528 # directory for the command is root (&#x27;/&#x27;) in the container&#x27;s filesystem. The
2529 # command is simply exec&#x27;d, it is not run inside a shell, so traditional
2530 # shell instructions (&#x27;|&#x27;, etc) won&#x27;t work. To use a shell, you need to
2531 # explicitly call out to that shell. Exit status of 0 is treated as
2532 # live/healthy and non-zero is unhealthy. +optional
2533 },
2534 &quot;httpGet&quot;: { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
2535 # +optional
2536 &quot;httpHeaders&quot;: [ # Custom headers to set in the request. HTTP allows repeated headers.
2537 # +optional
2538 { # HTTPHeader describes a custom header to be used in HTTP probes
2539 &quot;name&quot;: &quot;A String&quot;, # The header field name
2540 &quot;value&quot;: &quot;A String&quot;, # The header field value
2541 },
2542 ],
2543 &quot;path&quot;: &quot;A String&quot;, # Path to access on the HTTP server.
2544 # +optional
2545 &quot;port&quot;: { # 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.
2546 # Number must be in the range 1 to 65535.
2547 # Name must be an IANA_SVC_NAME.
2548 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
2549 # inner type. This allows you to have, for example, a JSON field that can
2550 # accept a name or number.
2551 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
2552 &quot;type&quot;: 42, # The type of the value.
2553 &quot;intVal&quot;: 42, # The int value.
2554 },
2555 &quot;host&quot;: &quot;A String&quot;, # Host name to connect to, defaults to the pod IP. You probably want to set
2556 # &quot;Host&quot; in httpHeaders instead.
2557 # +optional
2558 &quot;scheme&quot;: &quot;A String&quot;, # Scheme to use for connecting to the host.
2559 # Defaults to HTTP.
2560 # +optional
2561 },
2562 },
2563 &quot;postStart&quot;: { # Handler defines a specific action that should be taken # PostStart is called immediately after a container is created. If the
2564 # handler fails, the container is terminated and restarted according to its
2565 # restart policy. Other management of the container blocks until the hook
2566 # completes. More info:
2567 # https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
2568 # +optional
2569 &quot;tcpSocket&quot;: { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
2570 # TCP hooks not yet supported
2571 &quot;port&quot;: { # 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.
2572 # Number must be in the range 1 to 65535.
2573 # Name must be an IANA_SVC_NAME.
2574 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
2575 # inner type. This allows you to have, for example, a JSON field that can
2576 # accept a name or number.
2577 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
2578 &quot;type&quot;: 42, # The type of the value.
2579 &quot;intVal&quot;: 42, # The int value.
2580 },
2581 &quot;host&quot;: &quot;A String&quot;, # Optional: Host name to connect to, defaults to the pod IP.
2582 # +optional
2583 },
2584 &quot;exec&quot;: { # ExecAction describes a &quot;run in container&quot; action. # One and only one of the following should be specified.
2585 # Exec specifies the action to take.
2586 # +optional
2587 &quot;command&quot;: &quot;A String&quot;, # Command is the command line to execute inside the container, the working
2588 # directory for the command is root (&#x27;/&#x27;) in the container&#x27;s filesystem. The
2589 # command is simply exec&#x27;d, it is not run inside a shell, so traditional
2590 # shell instructions (&#x27;|&#x27;, etc) won&#x27;t work. To use a shell, you need to
2591 # explicitly call out to that shell. Exit status of 0 is treated as
2592 # live/healthy and non-zero is unhealthy. +optional
2593 },
2594 &quot;httpGet&quot;: { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
2595 # +optional
2596 &quot;httpHeaders&quot;: [ # Custom headers to set in the request. HTTP allows repeated headers.
2597 # +optional
2598 { # HTTPHeader describes a custom header to be used in HTTP probes
2599 &quot;name&quot;: &quot;A String&quot;, # The header field name
2600 &quot;value&quot;: &quot;A String&quot;, # The header field value
2601 },
2602 ],
2603 &quot;path&quot;: &quot;A String&quot;, # Path to access on the HTTP server.
2604 # +optional
2605 &quot;port&quot;: { # 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.
2606 # Number must be in the range 1 to 65535.
2607 # Name must be an IANA_SVC_NAME.
2608 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
2609 # inner type. This allows you to have, for example, a JSON field that can
2610 # accept a name or number.
2611 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
2612 &quot;type&quot;: 42, # The type of the value.
2613 &quot;intVal&quot;: 42, # The int value.
2614 },
2615 &quot;host&quot;: &quot;A String&quot;, # Host name to connect to, defaults to the pod IP. You probably want to set
2616 # &quot;Host&quot; in httpHeaders instead.
2617 # +optional
2618 &quot;scheme&quot;: &quot;A String&quot;, # Scheme to use for connecting to the host.
2619 # Defaults to HTTP.
2620 # +optional
2621 },
2622 },
2623 },
2624 &quot;terminationMessagePath&quot;: &quot;A String&quot;, # Optional: Path at which the file to which the container&#x27;s termination
2625 # message will be written is mounted into the container&#x27;s filesystem. Message
2626 # written is intended to be brief final status, such as an assertion failure
2627 # message. Will be truncated by the node if greater than 4096 bytes. The
2628 # total message length across all containers will be limited to 12kb.
2629 # Defaults to /dev/termination-log.
2630 # Cannot be updated.
2631 # +optional
2632 &quot;stdin&quot;: True or False, # Whether this container should allocate a buffer for stdin in the container
2633 # runtime. If this is not set, reads from stdin in the container will always
2634 # result in EOF. Default is false. +optional
2635 &quot;volumeMounts&quot;: [ # Pod volumes to mount into the container&#x27;s filesystem.
2636 # Cannot be updated.
2637 # +optional
2638 { # VolumeMount describes a mounting of a Volume within a container.
2639 &quot;name&quot;: &quot;A String&quot;, # This must match the Name of a Volume.
2640 &quot;readOnly&quot;: True or False, # Mounted read-only if true, read-write otherwise (false or unspecified).
2641 # Defaults to false.
2642 # +optional
2643 &quot;mountPropagation&quot;: &quot;A String&quot;, # mountPropagation determines how mounts are propagated from the host
2644 # to container and the other way around.
2645 # When not set, MountPropagationHostToContainer is used.
2646 # This field is beta in 1.10.
2647 # +optional
2648 &quot;mountPath&quot;: &quot;A String&quot;, # Path within the container at which the volume should be mounted. Must
2649 # not contain &#x27;:&#x27;.
2650 &quot;subPath&quot;: &quot;A String&quot;, # Path within the volume from which the container&#x27;s volume should be mounted.
2651 # Defaults to &quot;&quot; (volume&#x27;s root).
2652 # +optional
2653 },
2654 ],
2655 &quot;tty&quot;: True or False, # Whether this container should allocate a TTY for itself, also requires
2656 # &#x27;stdin&#x27; to be true. Default is false. +optional
2657 &quot;volumeDevices&quot;: [ # volumeDevices is the list of block devices to be used by the container.
2658 # This is an alpha feature and may change in the future.
2659 # +optional
2660 { # volumeDevice describes a mapping of a raw block device within a container.
2661 &quot;name&quot;: &quot;A String&quot;, # name must match the name of a persistentVolumeClaim in the pod
2662 &quot;devicePath&quot;: &quot;A String&quot;, # devicePath is the path inside of the container that the device will be
2663 # mapped to.
2664 },
2665 ],
2666 &quot;stdinOnce&quot;: True or False, # Whether the container runtime should close the stdin channel after it has
2667 # been opened by a single attach. When stdin is true the stdin stream will
2668 # remain open across multiple attach sessions. If stdinOnce is set to true,
2669 # stdin is opened on container start, is empty until the first client
2670 # attaches to stdin, and then remains open and accepts data until the client
2671 # disconnects, at which time stdin is closed and remains closed until the
2672 # container is restarted. If this flag is false, a container processes that
2673 # reads from stdin will never receive an EOF. Default is false +optional
2674 &quot;args&quot;: [ # Arguments to the entrypoint.
2675 # The docker image&#x27;s CMD is used if this is not provided.
2676 # Variable references $(VAR_NAME) are expanded using the container&#x27;s
2677 # environment. If a variable cannot be resolved, the reference in the input
2678 # string will be unchanged. The $(VAR_NAME) syntax can be escaped with a
2679 # double $$, ie: $$(VAR_NAME). Escaped references will never be expanded,
2680 # regardless of whether the variable exists or not.
2681 # Cannot be updated.
2682 # More info:
2683 # https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
2684 # +optional
2685 &quot;A String&quot;,
2686 ],
2687 &quot;workingDir&quot;: &quot;A String&quot;, # Container&#x27;s working directory.
2688 # If not specified, the container runtime&#x27;s default will be used, which
2689 # might be configured in the container image.
2690 # Cannot be updated.
2691 # +optional
2692 &quot;ports&quot;: [ # List of ports to expose from the container. Exposing a port here gives
2693 # the system additional information about the network connections a
2694 # container uses, but is primarily informational. Not specifying a port here
2695 # DOES NOT prevent that port from being exposed. Any port which is
2696 # listening on the default &quot;0.0.0.0&quot; address inside a container will be
2697 # accessible from the network.
2698 # Cannot be updated.
2699 # +optional
2700 { # ContainerPort represents a network port in a single container.
2701 &quot;hostIP&quot;: &quot;A String&quot;, # What host IP to bind the external port to.
2702 # +optional
2703 &quot;name&quot;: &quot;A String&quot;, # If specified, this must be an IANA_SVC_NAME and unique within the pod. Each
2704 # named port in a pod must have a unique name. Name for the port that can be
2705 # referred to by services.
2706 # +optional
2707 &quot;hostPort&quot;: 42, # Number of port to expose on the host.
2708 # If specified, this must be a valid port number, 0 &lt; x &lt; 65536.
2709 # If HostNetwork is specified, this must match ContainerPort.
2710 # Most containers do not need this.
2711 # +optional
2712 &quot;containerPort&quot;: 42, # Number of port to expose on the pod&#x27;s IP address.
2713 # This must be a valid port number, 0 &lt; x &lt; 65536.
2714 &quot;protocol&quot;: &quot;A String&quot;, # Protocol for port. Must be UDP or TCP.
2715 # Defaults to &quot;TCP&quot;.
2716 # +optional
2717 },
2718 ],
2719 &quot;image&quot;: &quot;A String&quot;, # Docker image name.
2720 # More info: https://kubernetes.io/docs/concepts/containers/images
2721 &quot;envFrom&quot;: [ # List of sources to populate environment variables in the container.
2722 # The keys defined within a source must be a C_IDENTIFIER. All invalid keys
2723 # will be reported as an event when the container is starting. When a key
2724 # exists in multiple sources, the value associated with the last source will
2725 # take precedence. Values defined by an Env with a duplicate key will take
2726 # precedence. Cannot be updated. +optional
2727 { # EnvFromSource represents the source of a set of ConfigMaps
2728 &quot;prefix&quot;: &quot;A String&quot;, # An optional identifier to prepend to each key in the ConfigMap. Must be a
2729 # C_IDENTIFIER. +optional
2730 &quot;configMapRef&quot;: { # ConfigMapEnvSource selects a ConfigMap to populate the environment # The ConfigMap to select from
2731 # +optional
2732 # variables with.
2733 #
2734 # The contents of the target ConfigMap&#x27;s Data field will represent the
2735 # key-value pairs as environment variables.
2736 &quot;localObjectReference&quot;: { # LocalObjectReference contains enough information to let you locate the # This field should not be used directly as it is meant to be inlined
2737 # directly into the message. Use the &quot;name&quot; field instead.
2738 # referenced object inside the same namespace.
2739 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
2740 # More info:
2741 # https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
2742 },
2743 &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported
2744 #
2745 # Cloud Run for Anthos: supported
2746 #
2747 # Specify whether the ConfigMap must be defined
2748 # +optional
2749 &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
2750 #
2751 # Cloud Run for Anthos: supported
2752 #
2753 # The ConfigMap to select from.
2754 },
2755 &quot;secretRef&quot;: { # SecretEnvSource selects a Secret to populate the environment # The Secret to select from
2756 # +optional
2757 # variables with.
2758 #
2759 # The contents of the target Secret&#x27;s Data field will represent the
2760 # key-value pairs as environment variables.
2761 &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
2762 #
2763 # Cloud Run for Anthos: supported
2764 #
2765 # The Secret to select from.
2766 &quot;localObjectReference&quot;: { # LocalObjectReference contains enough information to let you locate the # This field should not be used directly as it is meant to be inlined
2767 # directly into the message. Use the &quot;name&quot; field instead.
2768 # referenced object inside the same namespace.
2769 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
2770 # More info:
2771 # https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
2772 },
2773 &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported
2774 #
2775 # Cloud Run for Anthos: supported
2776 #
2777 # Specify whether the Secret must be defined
2778 # +optional
2779 },
2780 },
2781 ],
2782 &quot;name&quot;: &quot;A String&quot;, # Name of the container specified as a DNS_LABEL.
2783 # Each container must have a unique name (DNS_LABEL).
2784 # Cannot be updated.
2785 &quot;command&quot;: [ # Entrypoint array. Not executed within a shell.
2786 # The docker image&#x27;s ENTRYPOINT is used if this is not provided.
2787 # Variable references $(VAR_NAME) are expanded using the container&#x27;s
2788 # environment. If a variable cannot be resolved, the reference in the input
2789 # string will be unchanged. The $(VAR_NAME) syntax can be escaped with a
2790 # double $$, ie: $$(VAR_NAME). Escaped references will never be expanded,
2791 # regardless of whether the variable exists or not.
2792 # Cannot be updated.
2793 # More info:
2794 # https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
2795 # +optional
2796 &quot;A String&quot;,
2797 ],
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002798 },
2799 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002800 &quot;serviceAccountName&quot;: &quot;A String&quot;, # Email address of the IAM service account associated with the revision
2801 # of the service. The service account represents the identity of the
2802 # running revision, and determines what permissions the revision has. If
2803 # not provided, the revision will use the project&#x27;s default service account.
Bu Sun Kim65020912020-05-20 12:08:20 -07002804 &quot;generation&quot;: 42, # Deprecated and not currently populated by Cloud Run. See
2805 # metadata.generation instead, which is the sequence number containing the
2806 # latest generation of the desired state.
2807 #
2808 # Read-only.
2809 &quot;servingState&quot;: &quot;A String&quot;, # ServingState holds a value describing the state the resources
2810 # are in for this Revision.
2811 # Users must not specify this when creating a revision. It is expected
2812 # that the system will manipulate this based on routability and load.
2813 #
2814 # Populated by the system.
2815 # Read-only.
2816 &quot;concurrencyModel&quot;: &quot;A String&quot;, # ConcurrencyModel specifies the desired concurrency model
2817 # (Single or Multi) for the Revision. Defaults to Multi.
2818 # Deprecated in favor of ContainerConcurrency.
2819 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002820 &quot;timeoutSeconds&quot;: 42, # TimeoutSeconds holds the max duration the instance is allowed for
2821 # responding to a request.
2822 # Not currently used by Cloud Run.
Bu Sun Kim65020912020-05-20 12:08:20 -07002823 &quot;container&quot;: { # A single application container. # Container defines the unit of execution for this Revision.
2824 # In the context of a Revision, we disallow a number of the fields of
2825 # this Container, including: name, ports, and volumeMounts.
2826 # The runtime contract is documented here:
2827 # https://github.com/knative/serving/blob/master/docs/runtime-contract.md
2828 # This specifies both the container to run, the command to run in the container
2829 # and the arguments to supply to it.
2830 # Note that additional arguments may be supplied by the system to the container
2831 # at runtime.
Bu Sun Kim65020912020-05-20 12:08:20 -07002832 &quot;terminationMessagePolicy&quot;: &quot;A String&quot;, # Indicate how the termination message should be populated. File will use the
2833 # contents of terminationMessagePath to populate the container status message
2834 # on both success and failure. FallbackToLogsOnError will use the last chunk
2835 # of container log output if the termination message file is empty and the
2836 # container exited with an error. The log output is limited to 2048 bytes or
2837 # 80 lines, whichever is smaller. Defaults to File. Cannot be updated.
2838 # +optional
2839 &quot;securityContext&quot;: { # SecurityContext holds security configuration that will be applied to a # Security options the pod should run with.
2840 # More info: https://kubernetes.io/docs/concepts/policy/security-context/
2841 # More info:
2842 # https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
2843 # +optional
2844 # container. Some fields are present in both SecurityContext and
2845 # PodSecurityContext. When both are set, the values in SecurityContext take
2846 # precedence.
2847 &quot;capabilities&quot;: { # Adds and removes POSIX capabilities from running containers. # The capabilities to add/drop when running containers.
2848 # Defaults to the default set of capabilities granted by the container
2849 # runtime. +optional
2850 &quot;add&quot;: [ # Added capabilities
2851 # +optional
2852 &quot;A String&quot;,
2853 ],
2854 &quot;drop&quot;: [ # Removed capabilities
2855 # +optional
2856 &quot;A String&quot;,
2857 ],
2858 },
2859 &quot;runAsNonRoot&quot;: True or False, # Indicates that the container must run as a non-root user.
2860 # If true, the Kubelet will validate the image at runtime to ensure that it
2861 # does not run as UID 0 (root) and fail to start the container if it does.
2862 # If unset or false, no such validation will be performed.
2863 # May also be set in PodSecurityContext. If set in both SecurityContext and
2864 # PodSecurityContext, the value specified in SecurityContext takes
2865 # precedence. +optional
2866 &quot;runAsGroup&quot;: 42, # The GID to run the entrypoint of the container process.
2867 # Uses runtime default if unset.
2868 # May also be set in PodSecurityContext. If set in both SecurityContext and
2869 # PodSecurityContext, the value specified in SecurityContext takes
2870 # precedence. +optional
2871 &quot;privileged&quot;: True or False, # Run container in privileged mode.
2872 # Processes in privileged containers are essentially equivalent to root on
2873 # the host. Defaults to false. +optional
2874 &quot;allowPrivilegeEscalation&quot;: True or False, # AllowPrivilegeEscalation controls whether a process can gain more
2875 # privileges than its parent process. This bool directly controls if
2876 # the no_new_privs flag will be set on the container process.
2877 # AllowPrivilegeEscalation is true always when the container is:
2878 # 1) run as Privileged
2879 # 2) has CAP_SYS_ADMIN
2880 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002881 &quot;readOnlyRootFilesystem&quot;: True or False, # Whether this container has a read-only root filesystem.
2882 # Default is false.
2883 # +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07002884 &quot;seLinuxOptions&quot;: { # SELinuxOptions are the labels to be applied to the container # The SELinux context to be applied to the container.
2885 # If unspecified, the container runtime will allocate a random SELinux
2886 # context for each container. May also be set in PodSecurityContext. If set
2887 # in both SecurityContext and PodSecurityContext, the value specified in
2888 # SecurityContext takes precedence. +optional
2889 &quot;role&quot;: &quot;A String&quot;, # Role is a SELinux role label that applies to the container.
2890 # +optional
2891 &quot;level&quot;: &quot;A String&quot;, # Level is SELinux level label that applies to the container.
2892 # +optional
2893 &quot;user&quot;: &quot;A String&quot;, # User is a SELinux user label that applies to the container.
2894 # +optional
2895 &quot;type&quot;: &quot;A String&quot;, # Type is a SELinux type label that applies to the container.
2896 # +optional
2897 },
Bu Sun Kim65020912020-05-20 12:08:20 -07002898 &quot;runAsUser&quot;: 42, # The UID to run the entrypoint of the container process.
2899 # Defaults to user specified in image metadata if unspecified.
2900 # May also be set in PodSecurityContext. If set in both SecurityContext and
2901 # PodSecurityContext, the value specified in SecurityContext takes
2902 # precedence. +optional
2903 },
2904 &quot;livenessProbe&quot;: { # Probe describes a health check to be performed against a container to # Periodic probe of container liveness.
2905 # Container will be restarted if the probe fails.
2906 # Cannot be updated.
2907 # More info:
2908 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
2909 # +optional
2910 # determine whether it is alive or ready to receive traffic.
Bu Sun Kim65020912020-05-20 12:08:20 -07002911 &quot;initialDelaySeconds&quot;: 42, # Number of seconds after the container has started before liveness probes
2912 # are initiated. More info:
2913 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
2914 # +optional
2915 &quot;timeoutSeconds&quot;: 42, # Number of seconds after which the probe times out.
2916 # Defaults to 1 second. Minimum value is 1.
2917 # More info:
2918 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
2919 # +optional
2920 &quot;handler&quot;: { # Handler defines a specific action that should be taken # The action taken to determine the health of a container
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002921 &quot;tcpSocket&quot;: { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
2922 # TCP hooks not yet supported
2923 &quot;port&quot;: { # 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.
2924 # Number must be in the range 1 to 65535.
2925 # Name must be an IANA_SVC_NAME.
2926 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
2927 # inner type. This allows you to have, for example, a JSON field that can
2928 # accept a name or number.
2929 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
2930 &quot;type&quot;: 42, # The type of the value.
2931 &quot;intVal&quot;: 42, # The int value.
2932 },
2933 &quot;host&quot;: &quot;A String&quot;, # Optional: Host name to connect to, defaults to the pod IP.
2934 # +optional
2935 },
Bu Sun Kim65020912020-05-20 12:08:20 -07002936 &quot;exec&quot;: { # ExecAction describes a &quot;run in container&quot; action. # One and only one of the following should be specified.
2937 # Exec specifies the action to take.
2938 # +optional
2939 &quot;command&quot;: &quot;A String&quot;, # Command is the command line to execute inside the container, the working
2940 # directory for the command is root (&#x27;/&#x27;) in the container&#x27;s filesystem. The
2941 # command is simply exec&#x27;d, it is not run inside a shell, so traditional
2942 # shell instructions (&#x27;|&#x27;, etc) won&#x27;t work. To use a shell, you need to
2943 # explicitly call out to that shell. Exit status of 0 is treated as
2944 # live/healthy and non-zero is unhealthy. +optional
2945 },
2946 &quot;httpGet&quot;: { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
2947 # +optional
2948 &quot;httpHeaders&quot;: [ # Custom headers to set in the request. HTTP allows repeated headers.
2949 # +optional
2950 { # HTTPHeader describes a custom header to be used in HTTP probes
Bu Sun Kim65020912020-05-20 12:08:20 -07002951 &quot;name&quot;: &quot;A String&quot;, # The header field name
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002952 &quot;value&quot;: &quot;A String&quot;, # The header field value
Bu Sun Kim65020912020-05-20 12:08:20 -07002953 },
2954 ],
2955 &quot;path&quot;: &quot;A String&quot;, # Path to access on the HTTP server.
2956 # +optional
2957 &quot;port&quot;: { # 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.
2958 # Number must be in the range 1 to 65535.
2959 # Name must be an IANA_SVC_NAME.
2960 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
2961 # inner type. This allows you to have, for example, a JSON field that can
2962 # accept a name or number.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002963 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
Bu Sun Kim65020912020-05-20 12:08:20 -07002964 &quot;type&quot;: 42, # The type of the value.
2965 &quot;intVal&quot;: 42, # The int value.
Bu Sun Kim65020912020-05-20 12:08:20 -07002966 },
2967 &quot;host&quot;: &quot;A String&quot;, # Host name to connect to, defaults to the pod IP. You probably want to set
2968 # &quot;Host&quot; in httpHeaders instead.
2969 # +optional
2970 &quot;scheme&quot;: &quot;A String&quot;, # Scheme to use for connecting to the host.
2971 # Defaults to HTTP.
2972 # +optional
2973 },
Bu Sun Kim65020912020-05-20 12:08:20 -07002974 },
2975 &quot;successThreshold&quot;: 42, # Minimum consecutive successes for the probe to be considered successful
2976 # after having failed. Defaults to 1. Must be 1 for liveness. Minimum value
2977 # is 1. +optional
2978 &quot;periodSeconds&quot;: 42, # How often (in seconds) to perform the probe.
2979 # Default to 10 seconds. Minimum value is 1.
2980 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002981 &quot;failureThreshold&quot;: 42, # Minimum consecutive failures for the probe to be considered failed after
2982 # having succeeded. Defaults to 3. Minimum value is 1. +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07002983 },
2984 &quot;env&quot;: [ # List of environment variables to set in the container.
2985 # Cannot be updated.
2986 # +optional
2987 { # EnvVar represents an environment variable present in a Container.
Bu Sun Kim65020912020-05-20 12:08:20 -07002988 &quot;name&quot;: &quot;A String&quot;, # Name of the environment variable. Must be a C_IDENTIFIER.
2989 &quot;valueFrom&quot;: { # Cloud Run fully managed: not supported # Cloud Run fully managed: not supported
2990 #
2991 # Cloud Run on GKE: supported
2992 #
2993 # Source for the environment variable&#x27;s value. Cannot be used if value is not
2994 # empty. +optional
2995 #
2996 # Cloud Run on GKE: supported
2997 #
2998 # EnvVarSource represents a source for the value of an EnvVar.
2999 &quot;configMapKeyRef&quot;: { # Cloud Run fully managed: not supported # Cloud Run fully managed: not supported
3000 #
3001 # Cloud Run on GKE: supported
3002 #
3003 # Selects a key of a ConfigMap.
3004 # +optional
3005 #
3006 # Cloud Run on GKE: supported
3007 #
3008 # Selects a key from a ConfigMap.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07003009 &quot;localObjectReference&quot;: { # LocalObjectReference contains enough information to let you locate the # This field should not be used directly as it is meant to be inlined
3010 # directly into the message. Use the &quot;name&quot; field instead.
3011 # referenced object inside the same namespace.
3012 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
3013 # More info:
3014 # https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
3015 },
Bu Sun Kim65020912020-05-20 12:08:20 -07003016 &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported
3017 #
3018 # Cloud Run on GKE: supported
3019 #
3020 # Specify whether the ConfigMap or its key must be defined
3021 # +optional
3022 &quot;key&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
3023 #
3024 # Cloud Run on GKE: supported
3025 #
3026 # The key to select.
3027 &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
3028 #
3029 # Cloud Run on GKE: supported
3030 #
3031 # The ConfigMap to select from.
Bu Sun Kim65020912020-05-20 12:08:20 -07003032 },
3033 &quot;secretKeyRef&quot;: { # Cloud Run fully managed: not supported # Cloud Run fully managed: not supported
3034 #
3035 # Cloud Run on GKE: supported
3036 #
3037 # Selects a key of a secret in the pod&#x27;s namespace
3038 # +optional
3039 #
3040 # Cloud Run on GKE: supported
3041 #
3042 # SecretKeySelector selects a key of a Secret.
Bu Sun Kim65020912020-05-20 12:08:20 -07003043 &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported
3044 #
3045 # Cloud Run on GKE: supported
3046 #
3047 # Specify whether the Secret or its key must be defined
3048 # +optional
3049 &quot;key&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
3050 #
3051 # Cloud Run on GKE: supported
3052 #
3053 # The key of the secret to select from. Must be a valid secret key.
3054 &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
3055 #
3056 # Cloud Run on GKE: supported
3057 #
3058 # The name of the secret in the pod&#x27;s namespace to select from.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07003059 &quot;localObjectReference&quot;: { # LocalObjectReference contains enough information to let you locate the # This field should not be used directly as it is meant to be inlined
3060 # directly into the message. Use the &quot;name&quot; field instead.
3061 # referenced object inside the same namespace.
3062 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
3063 # More info:
3064 # https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
3065 },
Bu Sun Kim65020912020-05-20 12:08:20 -07003066 },
3067 },
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07003068 &quot;value&quot;: &quot;A String&quot;, # Variable references $(VAR_NAME) are expanded
3069 # using the previous defined environment variables in the container and
3070 # any route environment variables. If a variable cannot be resolved,
3071 # the reference in the input string will be unchanged. The $(VAR_NAME)
3072 # syntax can be escaped with a double $$, ie: $$(VAR_NAME). Escaped
3073 # references will never be expanded, regardless of whether the variable
3074 # exists or not.
3075 # Defaults to &quot;&quot;.
3076 # +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07003077 },
3078 ],
3079 &quot;resources&quot;: { # ResourceRequirements describes the compute resource requirements. # Compute Resources required by this container.
3080 # Cannot be updated.
3081 # More info:
3082 # https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
3083 # +optional
3084 &quot;requestsInMap&quot;: { # Requests describes the minimum amount of compute resources required.
3085 # If Requests is omitted for a container, it defaults to Limits if that is
3086 # explicitly specified, otherwise to an implementation-defined value.
3087 # This is a temporary field created to migrate away from the
3088 # map&lt;string, Quantity&gt; requests field. This is done to become compliant
3089 # with k8s style API.
3090 # This field is deprecated in favor of requests field.
3091 &quot;a_key&quot;: { # The view model of a single quantity, e.g. &quot;800 MiB&quot;. Corresponds to
3092 # https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/generated.proto
3093 &quot;string&quot;: &quot;A String&quot;, # Stringified version of the quantity, e.g., &quot;800 MiB&quot;.
3094 },
3095 },
3096 &quot;requests&quot;: { # Requests describes the minimum amount of compute resources required.
3097 # If Requests is omitted for a container, it defaults to Limits if that is
3098 # explicitly specified, otherwise to an implementation-defined value.
3099 # The values of the map is string form of the &#x27;quantity&#x27; k8s type:
3100 # https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go
3101 &quot;a_key&quot;: &quot;A String&quot;,
3102 },
3103 &quot;limits&quot;: { # Limits describes the maximum amount of compute resources allowed.
3104 # The values of the map is string form of the &#x27;quantity&#x27; k8s type:
3105 # https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go
3106 &quot;a_key&quot;: &quot;A String&quot;,
3107 },
3108 &quot;limitsInMap&quot;: { # Limits describes the maximum amount of compute resources allowed.
3109 # This is a temporary field created to migrate away from the
3110 # map&lt;string, Quantity&gt; limits field. This is done to become compliant
3111 # with k8s style API.
3112 # This field is deprecated in favor of limits field.
3113 &quot;a_key&quot;: { # The view model of a single quantity, e.g. &quot;800 MiB&quot;. Corresponds to
3114 # https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/generated.proto
3115 &quot;string&quot;: &quot;A String&quot;, # Stringified version of the quantity, e.g., &quot;800 MiB&quot;.
3116 },
3117 },
3118 },
3119 &quot;readinessProbe&quot;: { # Probe describes a health check to be performed against a container to # Periodic probe of container service readiness.
3120 # Container will be removed from service endpoints if the probe fails.
3121 # Cannot be updated.
3122 # More info:
3123 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
3124 # +optional
3125 # determine whether it is alive or ready to receive traffic.
Bu Sun Kim65020912020-05-20 12:08:20 -07003126 &quot;initialDelaySeconds&quot;: 42, # Number of seconds after the container has started before liveness probes
3127 # are initiated. More info:
3128 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
3129 # +optional
3130 &quot;timeoutSeconds&quot;: 42, # Number of seconds after which the probe times out.
3131 # Defaults to 1 second. Minimum value is 1.
3132 # More info:
3133 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
3134 # +optional
3135 &quot;handler&quot;: { # Handler defines a specific action that should be taken # The action taken to determine the health of a container
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07003136 &quot;tcpSocket&quot;: { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
3137 # TCP hooks not yet supported
3138 &quot;port&quot;: { # 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.
3139 # Number must be in the range 1 to 65535.
3140 # Name must be an IANA_SVC_NAME.
3141 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
3142 # inner type. This allows you to have, for example, a JSON field that can
3143 # accept a name or number.
3144 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
3145 &quot;type&quot;: 42, # The type of the value.
3146 &quot;intVal&quot;: 42, # The int value.
3147 },
3148 &quot;host&quot;: &quot;A String&quot;, # Optional: Host name to connect to, defaults to the pod IP.
3149 # +optional
3150 },
Bu Sun Kim65020912020-05-20 12:08:20 -07003151 &quot;exec&quot;: { # ExecAction describes a &quot;run in container&quot; action. # One and only one of the following should be specified.
3152 # Exec specifies the action to take.
3153 # +optional
3154 &quot;command&quot;: &quot;A String&quot;, # Command is the command line to execute inside the container, the working
3155 # directory for the command is root (&#x27;/&#x27;) in the container&#x27;s filesystem. The
3156 # command is simply exec&#x27;d, it is not run inside a shell, so traditional
3157 # shell instructions (&#x27;|&#x27;, etc) won&#x27;t work. To use a shell, you need to
3158 # explicitly call out to that shell. Exit status of 0 is treated as
3159 # live/healthy and non-zero is unhealthy. +optional
3160 },
3161 &quot;httpGet&quot;: { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
3162 # +optional
3163 &quot;httpHeaders&quot;: [ # Custom headers to set in the request. HTTP allows repeated headers.
3164 # +optional
3165 { # HTTPHeader describes a custom header to be used in HTTP probes
Bu Sun Kim65020912020-05-20 12:08:20 -07003166 &quot;name&quot;: &quot;A String&quot;, # The header field name
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07003167 &quot;value&quot;: &quot;A String&quot;, # The header field value
Bu Sun Kim65020912020-05-20 12:08:20 -07003168 },
3169 ],
3170 &quot;path&quot;: &quot;A String&quot;, # Path to access on the HTTP server.
3171 # +optional
3172 &quot;port&quot;: { # 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.
3173 # Number must be in the range 1 to 65535.
3174 # Name must be an IANA_SVC_NAME.
3175 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
3176 # inner type. This allows you to have, for example, a JSON field that can
3177 # accept a name or number.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07003178 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
Bu Sun Kim65020912020-05-20 12:08:20 -07003179 &quot;type&quot;: 42, # The type of the value.
3180 &quot;intVal&quot;: 42, # The int value.
Bu Sun Kim65020912020-05-20 12:08:20 -07003181 },
3182 &quot;host&quot;: &quot;A String&quot;, # Host name to connect to, defaults to the pod IP. You probably want to set
3183 # &quot;Host&quot; in httpHeaders instead.
3184 # +optional
3185 &quot;scheme&quot;: &quot;A String&quot;, # Scheme to use for connecting to the host.
3186 # Defaults to HTTP.
3187 # +optional
3188 },
Bu Sun Kim65020912020-05-20 12:08:20 -07003189 },
3190 &quot;successThreshold&quot;: 42, # Minimum consecutive successes for the probe to be considered successful
3191 # after having failed. Defaults to 1. Must be 1 for liveness. Minimum value
3192 # is 1. +optional
3193 &quot;periodSeconds&quot;: 42, # How often (in seconds) to perform the probe.
3194 # Default to 10 seconds. Minimum value is 1.
3195 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07003196 &quot;failureThreshold&quot;: 42, # Minimum consecutive failures for the probe to be considered failed after
3197 # having succeeded. Defaults to 3. Minimum value is 1. +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07003198 },
3199 &quot;imagePullPolicy&quot;: &quot;A String&quot;, # Image pull policy.
3200 # One of Always, Never, IfNotPresent.
3201 # Defaults to Always if :latest tag is specified, or IfNotPresent otherwise.
3202 # Cannot be updated.
3203 # More info:
3204 # https://kubernetes.io/docs/concepts/containers/images#updating-images
3205 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07003206 &quot;lifecycle&quot;: { # Lifecycle describes actions that the management system should take in # Actions that the management system should take in response to container
3207 # lifecycle events. Cannot be updated. +optional
3208 # response to container lifecycle events. For the PostStart and PreStop
3209 # lifecycle handlers, management of the container blocks until the action is
3210 # complete, unless the container process fails, in which case the handler is
3211 # aborted.
3212 &quot;preStop&quot;: { # Handler defines a specific action that should be taken # PreStop is called immediately before a container is terminated.
3213 # The container is terminated after the handler completes.
3214 # The reason for termination is passed to the handler.
3215 # Regardless of the outcome of the handler, the container is eventually
3216 # terminated. Other management of the container blocks until the hook
3217 # completes. More info:
3218 # https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
3219 # +optional
3220 &quot;tcpSocket&quot;: { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
3221 # TCP hooks not yet supported
3222 &quot;port&quot;: { # 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.
3223 # Number must be in the range 1 to 65535.
3224 # Name must be an IANA_SVC_NAME.
3225 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
3226 # inner type. This allows you to have, for example, a JSON field that can
3227 # accept a name or number.
3228 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
3229 &quot;type&quot;: 42, # The type of the value.
3230 &quot;intVal&quot;: 42, # The int value.
3231 },
3232 &quot;host&quot;: &quot;A String&quot;, # Optional: Host name to connect to, defaults to the pod IP.
3233 # +optional
3234 },
3235 &quot;exec&quot;: { # ExecAction describes a &quot;run in container&quot; action. # One and only one of the following should be specified.
3236 # Exec specifies the action to take.
3237 # +optional
3238 &quot;command&quot;: &quot;A String&quot;, # Command is the command line to execute inside the container, the working
3239 # directory for the command is root (&#x27;/&#x27;) in the container&#x27;s filesystem. The
3240 # command is simply exec&#x27;d, it is not run inside a shell, so traditional
3241 # shell instructions (&#x27;|&#x27;, etc) won&#x27;t work. To use a shell, you need to
3242 # explicitly call out to that shell. Exit status of 0 is treated as
3243 # live/healthy and non-zero is unhealthy. +optional
3244 },
3245 &quot;httpGet&quot;: { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
3246 # +optional
3247 &quot;httpHeaders&quot;: [ # Custom headers to set in the request. HTTP allows repeated headers.
3248 # +optional
3249 { # HTTPHeader describes a custom header to be used in HTTP probes
3250 &quot;name&quot;: &quot;A String&quot;, # The header field name
3251 &quot;value&quot;: &quot;A String&quot;, # The header field value
3252 },
3253 ],
3254 &quot;path&quot;: &quot;A String&quot;, # Path to access on the HTTP server.
3255 # +optional
3256 &quot;port&quot;: { # 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.
3257 # Number must be in the range 1 to 65535.
3258 # Name must be an IANA_SVC_NAME.
3259 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
3260 # inner type. This allows you to have, for example, a JSON field that can
3261 # accept a name or number.
3262 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
3263 &quot;type&quot;: 42, # The type of the value.
3264 &quot;intVal&quot;: 42, # The int value.
3265 },
3266 &quot;host&quot;: &quot;A String&quot;, # Host name to connect to, defaults to the pod IP. You probably want to set
3267 # &quot;Host&quot; in httpHeaders instead.
3268 # +optional
3269 &quot;scheme&quot;: &quot;A String&quot;, # Scheme to use for connecting to the host.
3270 # Defaults to HTTP.
3271 # +optional
3272 },
3273 },
3274 &quot;postStart&quot;: { # Handler defines a specific action that should be taken # PostStart is called immediately after a container is created. If the
3275 # handler fails, the container is terminated and restarted according to its
3276 # restart policy. Other management of the container blocks until the hook
3277 # completes. More info:
3278 # https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
3279 # +optional
3280 &quot;tcpSocket&quot;: { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
3281 # TCP hooks not yet supported
3282 &quot;port&quot;: { # 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.
3283 # Number must be in the range 1 to 65535.
3284 # Name must be an IANA_SVC_NAME.
3285 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
3286 # inner type. This allows you to have, for example, a JSON field that can
3287 # accept a name or number.
3288 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
3289 &quot;type&quot;: 42, # The type of the value.
3290 &quot;intVal&quot;: 42, # The int value.
3291 },
3292 &quot;host&quot;: &quot;A String&quot;, # Optional: Host name to connect to, defaults to the pod IP.
3293 # +optional
3294 },
3295 &quot;exec&quot;: { # ExecAction describes a &quot;run in container&quot; action. # One and only one of the following should be specified.
3296 # Exec specifies the action to take.
3297 # +optional
3298 &quot;command&quot;: &quot;A String&quot;, # Command is the command line to execute inside the container, the working
3299 # directory for the command is root (&#x27;/&#x27;) in the container&#x27;s filesystem. The
3300 # command is simply exec&#x27;d, it is not run inside a shell, so traditional
3301 # shell instructions (&#x27;|&#x27;, etc) won&#x27;t work. To use a shell, you need to
3302 # explicitly call out to that shell. Exit status of 0 is treated as
3303 # live/healthy and non-zero is unhealthy. +optional
3304 },
3305 &quot;httpGet&quot;: { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
3306 # +optional
3307 &quot;httpHeaders&quot;: [ # Custom headers to set in the request. HTTP allows repeated headers.
3308 # +optional
3309 { # HTTPHeader describes a custom header to be used in HTTP probes
3310 &quot;name&quot;: &quot;A String&quot;, # The header field name
3311 &quot;value&quot;: &quot;A String&quot;, # The header field value
3312 },
3313 ],
3314 &quot;path&quot;: &quot;A String&quot;, # Path to access on the HTTP server.
3315 # +optional
3316 &quot;port&quot;: { # 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.
3317 # Number must be in the range 1 to 65535.
3318 # Name must be an IANA_SVC_NAME.
3319 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
3320 # inner type. This allows you to have, for example, a JSON field that can
3321 # accept a name or number.
3322 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
3323 &quot;type&quot;: 42, # The type of the value.
3324 &quot;intVal&quot;: 42, # The int value.
3325 },
3326 &quot;host&quot;: &quot;A String&quot;, # Host name to connect to, defaults to the pod IP. You probably want to set
3327 # &quot;Host&quot; in httpHeaders instead.
3328 # +optional
3329 &quot;scheme&quot;: &quot;A String&quot;, # Scheme to use for connecting to the host.
3330 # Defaults to HTTP.
3331 # +optional
3332 },
3333 },
3334 },
3335 &quot;terminationMessagePath&quot;: &quot;A String&quot;, # Optional: Path at which the file to which the container&#x27;s termination
3336 # message will be written is mounted into the container&#x27;s filesystem. Message
3337 # written is intended to be brief final status, such as an assertion failure
3338 # message. Will be truncated by the node if greater than 4096 bytes. The
3339 # total message length across all containers will be limited to 12kb.
3340 # Defaults to /dev/termination-log.
3341 # Cannot be updated.
3342 # +optional
3343 &quot;stdin&quot;: True or False, # Whether this container should allocate a buffer for stdin in the container
3344 # runtime. If this is not set, reads from stdin in the container will always
3345 # result in EOF. Default is false. +optional
3346 &quot;volumeMounts&quot;: [ # Pod volumes to mount into the container&#x27;s filesystem.
3347 # Cannot be updated.
3348 # +optional
3349 { # VolumeMount describes a mounting of a Volume within a container.
3350 &quot;name&quot;: &quot;A String&quot;, # This must match the Name of a Volume.
3351 &quot;readOnly&quot;: True or False, # Mounted read-only if true, read-write otherwise (false or unspecified).
3352 # Defaults to false.
3353 # +optional
3354 &quot;mountPropagation&quot;: &quot;A String&quot;, # mountPropagation determines how mounts are propagated from the host
3355 # to container and the other way around.
3356 # When not set, MountPropagationHostToContainer is used.
3357 # This field is beta in 1.10.
3358 # +optional
3359 &quot;mountPath&quot;: &quot;A String&quot;, # Path within the container at which the volume should be mounted. Must
3360 # not contain &#x27;:&#x27;.
3361 &quot;subPath&quot;: &quot;A String&quot;, # Path within the volume from which the container&#x27;s volume should be mounted.
3362 # Defaults to &quot;&quot; (volume&#x27;s root).
3363 # +optional
3364 },
3365 ],
3366 &quot;tty&quot;: True or False, # Whether this container should allocate a TTY for itself, also requires
3367 # &#x27;stdin&#x27; to be true. Default is false. +optional
3368 &quot;volumeDevices&quot;: [ # volumeDevices is the list of block devices to be used by the container.
3369 # This is an alpha feature and may change in the future.
3370 # +optional
3371 { # volumeDevice describes a mapping of a raw block device within a container.
3372 &quot;name&quot;: &quot;A String&quot;, # name must match the name of a persistentVolumeClaim in the pod
3373 &quot;devicePath&quot;: &quot;A String&quot;, # devicePath is the path inside of the container that the device will be
3374 # mapped to.
3375 },
3376 ],
3377 &quot;stdinOnce&quot;: True or False, # Whether the container runtime should close the stdin channel after it has
3378 # been opened by a single attach. When stdin is true the stdin stream will
3379 # remain open across multiple attach sessions. If stdinOnce is set to true,
3380 # stdin is opened on container start, is empty until the first client
3381 # attaches to stdin, and then remains open and accepts data until the client
3382 # disconnects, at which time stdin is closed and remains closed until the
3383 # container is restarted. If this flag is false, a container processes that
3384 # reads from stdin will never receive an EOF. Default is false +optional
3385 &quot;args&quot;: [ # Arguments to the entrypoint.
3386 # The docker image&#x27;s CMD is used if this is not provided.
3387 # Variable references $(VAR_NAME) are expanded using the container&#x27;s
3388 # environment. If a variable cannot be resolved, the reference in the input
3389 # string will be unchanged. The $(VAR_NAME) syntax can be escaped with a
3390 # double $$, ie: $$(VAR_NAME). Escaped references will never be expanded,
3391 # regardless of whether the variable exists or not.
3392 # Cannot be updated.
3393 # More info:
3394 # https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
3395 # +optional
3396 &quot;A String&quot;,
3397 ],
3398 &quot;workingDir&quot;: &quot;A String&quot;, # Container&#x27;s working directory.
3399 # If not specified, the container runtime&#x27;s default will be used, which
3400 # might be configured in the container image.
3401 # Cannot be updated.
3402 # +optional
3403 &quot;ports&quot;: [ # List of ports to expose from the container. Exposing a port here gives
3404 # the system additional information about the network connections a
3405 # container uses, but is primarily informational. Not specifying a port here
3406 # DOES NOT prevent that port from being exposed. Any port which is
3407 # listening on the default &quot;0.0.0.0&quot; address inside a container will be
3408 # accessible from the network.
3409 # Cannot be updated.
3410 # +optional
3411 { # ContainerPort represents a network port in a single container.
3412 &quot;hostIP&quot;: &quot;A String&quot;, # What host IP to bind the external port to.
3413 # +optional
3414 &quot;name&quot;: &quot;A String&quot;, # If specified, this must be an IANA_SVC_NAME and unique within the pod. Each
3415 # named port in a pod must have a unique name. Name for the port that can be
3416 # referred to by services.
3417 # +optional
3418 &quot;hostPort&quot;: 42, # Number of port to expose on the host.
3419 # If specified, this must be a valid port number, 0 &lt; x &lt; 65536.
3420 # If HostNetwork is specified, this must match ContainerPort.
3421 # Most containers do not need this.
3422 # +optional
3423 &quot;containerPort&quot;: 42, # Number of port to expose on the pod&#x27;s IP address.
3424 # This must be a valid port number, 0 &lt; x &lt; 65536.
3425 &quot;protocol&quot;: &quot;A String&quot;, # Protocol for port. Must be UDP or TCP.
3426 # Defaults to &quot;TCP&quot;.
3427 # +optional
3428 },
3429 ],
3430 &quot;image&quot;: &quot;A String&quot;, # Docker image name.
3431 # More info: https://kubernetes.io/docs/concepts/containers/images
3432 &quot;envFrom&quot;: [ # List of sources to populate environment variables in the container.
3433 # The keys defined within a source must be a C_IDENTIFIER. All invalid keys
3434 # will be reported as an event when the container is starting. When a key
3435 # exists in multiple sources, the value associated with the last source will
3436 # take precedence. Values defined by an Env with a duplicate key will take
3437 # precedence. Cannot be updated. +optional
3438 { # EnvFromSource represents the source of a set of ConfigMaps
3439 &quot;prefix&quot;: &quot;A String&quot;, # An optional identifier to prepend to each key in the ConfigMap. Must be a
3440 # C_IDENTIFIER. +optional
3441 &quot;configMapRef&quot;: { # ConfigMapEnvSource selects a ConfigMap to populate the environment # The ConfigMap to select from
3442 # +optional
3443 # variables with.
3444 #
3445 # The contents of the target ConfigMap&#x27;s Data field will represent the
3446 # key-value pairs as environment variables.
3447 &quot;localObjectReference&quot;: { # LocalObjectReference contains enough information to let you locate the # This field should not be used directly as it is meant to be inlined
3448 # directly into the message. Use the &quot;name&quot; field instead.
3449 # referenced object inside the same namespace.
3450 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
3451 # More info:
3452 # https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
3453 },
3454 &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported
3455 #
3456 # Cloud Run for Anthos: supported
3457 #
3458 # Specify whether the ConfigMap must be defined
3459 # +optional
3460 &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
3461 #
3462 # Cloud Run for Anthos: supported
3463 #
3464 # The ConfigMap to select from.
3465 },
3466 &quot;secretRef&quot;: { # SecretEnvSource selects a Secret to populate the environment # The Secret to select from
3467 # +optional
3468 # variables with.
3469 #
3470 # The contents of the target Secret&#x27;s Data field will represent the
3471 # key-value pairs as environment variables.
3472 &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
3473 #
3474 # Cloud Run for Anthos: supported
3475 #
3476 # The Secret to select from.
3477 &quot;localObjectReference&quot;: { # LocalObjectReference contains enough information to let you locate the # This field should not be used directly as it is meant to be inlined
3478 # directly into the message. Use the &quot;name&quot; field instead.
3479 # referenced object inside the same namespace.
3480 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
3481 # More info:
3482 # https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
3483 },
3484 &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported
3485 #
3486 # Cloud Run for Anthos: supported
3487 #
3488 # Specify whether the Secret must be defined
3489 # +optional
3490 },
3491 },
3492 ],
3493 &quot;name&quot;: &quot;A String&quot;, # Name of the container specified as a DNS_LABEL.
3494 # Each container must have a unique name (DNS_LABEL).
3495 # Cannot be updated.
3496 &quot;command&quot;: [ # Entrypoint array. Not executed within a shell.
3497 # The docker image&#x27;s ENTRYPOINT is used if this is not provided.
3498 # Variable references $(VAR_NAME) are expanded using the container&#x27;s
3499 # environment. If a variable cannot be resolved, the reference in the input
3500 # string will be unchanged. The $(VAR_NAME) syntax can be escaped with a
3501 # double $$, ie: $$(VAR_NAME). Escaped references will never be expanded,
3502 # regardless of whether the variable exists or not.
3503 # Cannot be updated.
3504 # More info:
3505 # https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
3506 # +optional
3507 &quot;A String&quot;,
3508 ],
Bu Sun Kim65020912020-05-20 12:08:20 -07003509 },
Bu Sun Kim65020912020-05-20 12:08:20 -07003510 &quot;volumes&quot;: [
3511 { # Volume represents a named volume in a container.
3512 &quot;configMap&quot;: { # Adapts a ConfigMap into a volume.
3513 # The contents of the target ConfigMap&#x27;s Data field will be presented in a
3514 # volume as files using the keys in the Data field as the file names, unless
3515 # the items element is populated with specific mappings of keys to paths.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07003516 &quot;optional&quot;: True or False, # Specify whether the Secret or its keys must be defined.
Bu Sun Kim65020912020-05-20 12:08:20 -07003517 &quot;name&quot;: &quot;A String&quot;, # Name of the config.
3518 &quot;defaultMode&quot;: 42, # Mode bits to use on created files by default. Must be a value between 0 and
3519 # 0777. Defaults to 0644. Directories within the path are not affected by
3520 # this setting. This might be in conflict with other options that affect the
3521 # file mode, like fsGroup, and the result can be other mode bits set.
3522 &quot;items&quot;: [ # If unspecified, each key-value pair in the Data field of the referenced
3523 # Secret will be projected into the volume as a file whose name is the
3524 # key and content is the value. If specified, the listed keys will be
3525 # projected into the specified paths, and unlisted keys will not be
3526 # present. If a key is specified which is not present in the Secret,
3527 # the volume setup will error unless it is marked optional.
3528 { # Maps a string key to a path within a volume.
Bu Sun Kim65020912020-05-20 12:08:20 -07003529 &quot;path&quot;: &quot;A String&quot;, # The relative path of the file to map the key to.
3530 # May not be an absolute path.
3531 # May not contain the path element &#x27;..&#x27;.
3532 # May not start with the string &#x27;..&#x27;.
3533 &quot;mode&quot;: 42, # Mode bits to use on this file, must be a value between 0 and 0777. If not
3534 # specified, the volume defaultMode will be used. This might be in conflict
3535 # with other options that affect the file mode, like fsGroup, and the result
3536 # can be other mode bits set. +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07003537 &quot;key&quot;: &quot;A String&quot;, # The key to project.
Bu Sun Kim65020912020-05-20 12:08:20 -07003538 },
3539 ],
Bu Sun Kim65020912020-05-20 12:08:20 -07003540 },
3541 &quot;name&quot;: &quot;A String&quot;, # Volume&#x27;s name.
3542 &quot;secret&quot;: { # The contents of the target Secret&#x27;s Data field will be presented in a volume
3543 # as files using the keys in the Data field as the file names.
Bu Sun Kim65020912020-05-20 12:08:20 -07003544 &quot;defaultMode&quot;: 42, # Mode bits to use on created files by default. Must be a value between 0 and
3545 # 0777. Defaults to 0644. Directories within the path are not affected by
3546 # this setting. This might be in conflict with other options that affect the
3547 # file mode, like fsGroup, and the result can be other mode bits set.
3548 &quot;secretName&quot;: &quot;A String&quot;, # Name of the secret in the container&#x27;s namespace to use.
3549 &quot;items&quot;: [ # If unspecified, each key-value pair in the Data field of the referenced
3550 # Secret will be projected into the volume as a file whose name is the
3551 # key and content is the value. If specified, the listed keys will be
3552 # projected into the specified paths, and unlisted keys will not be
3553 # present. If a key is specified which is not present in the Secret,
3554 # the volume setup will error unless it is marked optional.
3555 { # Maps a string key to a path within a volume.
Bu Sun Kim65020912020-05-20 12:08:20 -07003556 &quot;path&quot;: &quot;A String&quot;, # The relative path of the file to map the key to.
3557 # May not be an absolute path.
3558 # May not contain the path element &#x27;..&#x27;.
3559 # May not start with the string &#x27;..&#x27;.
3560 &quot;mode&quot;: 42, # Mode bits to use on this file, must be a value between 0 and 0777. If not
3561 # specified, the volume defaultMode will be used. This might be in conflict
3562 # with other options that affect the file mode, like fsGroup, and the result
3563 # can be other mode bits set. +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07003564 &quot;key&quot;: &quot;A String&quot;, # The key to project.
Bu Sun Kim65020912020-05-20 12:08:20 -07003565 },
3566 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07003567 &quot;optional&quot;: True or False, # Specify whether the Secret or its keys must be defined.
Bu Sun Kim65020912020-05-20 12:08:20 -07003568 },
3569 },
3570 ],
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003571 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003572 },
3573 ],
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003574 }</pre>
3575</div>
3576
3577</body></html>