blob: 44a917a13e31f4404f23facad7bfe1f7bbd0bb1b [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.configurations.html">configurations</a></h1>
76<h2>Instance Methods</h2>
77<p class="toc_element">
78 <code><a href="#get">get(name, x__xgafv=None)</a></code></p>
79<p class="firstline">Rpc to get information about a configuration.</p>
80<p class="toc_element">
Bu Sun Kim65020912020-05-20 12:08:20 -070081 <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 -070082<p class="firstline">Rpc to list configurations.</p>
83<h3>Method Details</h3>
84<div class="method">
85 <code class="details" id="get">get(name, x__xgafv=None)</code>
86 <pre>Rpc to get information about a configuration.
87
88Args:
89 name: string, The name of the configuration being retrieved. If needed, replace
90{namespace_id} with the project ID. (required)
91 x__xgafv: string, V1 error format.
92 Allowed values
93 1 - v1 error format
94 2 - v2 error format
95
96Returns:
97 An object of the form:
98
Bu Sun Kim65020912020-05-20 12:08:20 -070099 { # Configuration represents the &quot;floating HEAD&quot; of a linear history of
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700100 # Revisions, and optionally how the containers those revisions reference are
Bu Sun Kim65020912020-05-20 12:08:20 -0700101 # built. Users create new Revisions by updating the Configuration&#x27;s spec. The
102 # &quot;latest created&quot; revision&#x27;s name is available under status, as is the &quot;latest
103 # ready&quot; revision&#x27;s name. See also:
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700104 # https://github.com/knative/serving/blob/master/docs/spec/overview.md#configuration
Bu Sun Kim65020912020-05-20 12:08:20 -0700105 &quot;apiVersion&quot;: &quot;A String&quot;, # The API version for this call such as &quot;serving.knative.dev/v1alpha1&quot;.
106 &quot;spec&quot;: { # ConfigurationSpec holds the desired state of the Configuration (from the # Spec holds the desired state of the Configuration (from the client).
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700107 # client).
Bu Sun Kim65020912020-05-20 12:08:20 -0700108 &quot;template&quot;: { # RevisionTemplateSpec describes the data a revision should have when created # Template holds the latest specification for the Revision to be stamped out.
109 # from a template. Based on:
110 # https://github.com/kubernetes/api/blob/e771f807/core/v1/types.go#L3179-L3190
Bu Sun Kim65020912020-05-20 12:08:20 -0700111 &quot;spec&quot;: { # RevisionSpec holds the desired state of the Revision (from the client). # RevisionSpec holds the desired state of the Revision (from the client).
112 &quot;containerConcurrency&quot;: 42, # (Optional)
113 #
114 # ContainerConcurrency specifies the maximum allowed in-flight (concurrent)
115 # requests per container instance of the Revision.
116 #
117 # Cloud Run fully managed: supported, defaults to 80
118 #
119 # Cloud Run on GKE: supported, defaults to 0, which means concurrency
120 # to the application is not limited, and the system decides the
121 # target concurrency for the autoscaler.
Bu Sun Kim65020912020-05-20 12:08:20 -0700122 &quot;containers&quot;: [ # Containers holds the single container that defines the unit of execution
123 # for this Revision. In the context of a Revision, we disallow a number of
124 # fields on this Container, including: name and lifecycle.
125 # In Cloud Run, only a single container may be provided.
126 { # A single application container.
127 # This specifies both the container to run, the command to run in the container
128 # and the arguments to supply to it.
129 # Note that additional arguments may be supplied by the system to the container
130 # at runtime.
Bu Sun Kim65020912020-05-20 12:08:20 -0700131 &quot;terminationMessagePolicy&quot;: &quot;A String&quot;, # Indicate how the termination message should be populated. File will use the
132 # contents of terminationMessagePath to populate the container status message
133 # on both success and failure. FallbackToLogsOnError will use the last chunk
134 # of container log output if the termination message file is empty and the
135 # container exited with an error. The log output is limited to 2048 bytes or
136 # 80 lines, whichever is smaller. Defaults to File. Cannot be updated.
137 # +optional
138 &quot;securityContext&quot;: { # SecurityContext holds security configuration that will be applied to a # Security options the pod should run with.
139 # More info: https://kubernetes.io/docs/concepts/policy/security-context/
140 # More info:
141 # https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
142 # +optional
143 # container. Some fields are present in both SecurityContext and
144 # PodSecurityContext. When both are set, the values in SecurityContext take
145 # precedence.
146 &quot;capabilities&quot;: { # Adds and removes POSIX capabilities from running containers. # The capabilities to add/drop when running containers.
147 # Defaults to the default set of capabilities granted by the container
148 # runtime. +optional
149 &quot;add&quot;: [ # Added capabilities
150 # +optional
151 &quot;A String&quot;,
152 ],
153 &quot;drop&quot;: [ # Removed capabilities
154 # +optional
155 &quot;A String&quot;,
156 ],
157 },
158 &quot;runAsNonRoot&quot;: True or False, # Indicates that the container must run as a non-root user.
159 # If true, the Kubelet will validate the image at runtime to ensure that it
160 # does not run as UID 0 (root) and fail to start the container if it does.
161 # If unset or false, no such validation will be performed.
162 # May also be set in PodSecurityContext. If set in both SecurityContext and
163 # PodSecurityContext, the value specified in SecurityContext takes
164 # precedence. +optional
165 &quot;runAsGroup&quot;: 42, # The GID to run the entrypoint of the container process.
166 # Uses runtime default if unset.
167 # May also be set in PodSecurityContext. If set in both SecurityContext and
168 # PodSecurityContext, the value specified in SecurityContext takes
169 # precedence. +optional
170 &quot;privileged&quot;: True or False, # Run container in privileged mode.
171 # Processes in privileged containers are essentially equivalent to root on
172 # the host. Defaults to false. +optional
173 &quot;allowPrivilegeEscalation&quot;: True or False, # AllowPrivilegeEscalation controls whether a process can gain more
174 # privileges than its parent process. This bool directly controls if
175 # the no_new_privs flag will be set on the container process.
176 # AllowPrivilegeEscalation is true always when the container is:
177 # 1) run as Privileged
178 # 2) has CAP_SYS_ADMIN
179 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700180 &quot;readOnlyRootFilesystem&quot;: True or False, # Whether this container has a read-only root filesystem.
181 # Default is false.
182 # +optional
Bu Sun Kim65020912020-05-20 12:08:20 -0700183 &quot;seLinuxOptions&quot;: { # SELinuxOptions are the labels to be applied to the container # The SELinux context to be applied to the container.
184 # If unspecified, the container runtime will allocate a random SELinux
185 # context for each container. May also be set in PodSecurityContext. If set
186 # in both SecurityContext and PodSecurityContext, the value specified in
187 # SecurityContext takes precedence. +optional
188 &quot;role&quot;: &quot;A String&quot;, # Role is a SELinux role label that applies to the container.
189 # +optional
190 &quot;level&quot;: &quot;A String&quot;, # Level is SELinux level label that applies to the container.
191 # +optional
192 &quot;user&quot;: &quot;A String&quot;, # User is a SELinux user label that applies to the container.
193 # +optional
194 &quot;type&quot;: &quot;A String&quot;, # Type is a SELinux type label that applies to the container.
195 # +optional
196 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700197 &quot;runAsUser&quot;: 42, # The UID to run the entrypoint of the container process.
198 # Defaults to user specified in image metadata if unspecified.
199 # May also be set in PodSecurityContext. If set in both SecurityContext and
200 # PodSecurityContext, the value specified in SecurityContext takes
201 # precedence. +optional
202 },
203 &quot;livenessProbe&quot;: { # Probe describes a health check to be performed against a container to # Periodic probe of container liveness.
204 # Container will be restarted if the probe fails.
205 # Cannot be updated.
206 # More info:
207 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
208 # +optional
209 # determine whether it is alive or ready to receive traffic.
Bu Sun Kim65020912020-05-20 12:08:20 -0700210 &quot;initialDelaySeconds&quot;: 42, # Number of seconds after the container has started before liveness probes
211 # are initiated. More info:
212 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
213 # +optional
214 &quot;timeoutSeconds&quot;: 42, # Number of seconds after which the probe times out.
215 # Defaults to 1 second. Minimum value is 1.
216 # More info:
217 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
218 # +optional
219 &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 -0700220 &quot;tcpSocket&quot;: { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
221 # TCP hooks not yet supported
222 &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.
223 # Number must be in the range 1 to 65535.
224 # Name must be an IANA_SVC_NAME.
225 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
226 # inner type. This allows you to have, for example, a JSON field that can
227 # accept a name or number.
228 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
229 &quot;type&quot;: 42, # The type of the value.
230 &quot;intVal&quot;: 42, # The int value.
231 },
232 &quot;host&quot;: &quot;A String&quot;, # Optional: Host name to connect to, defaults to the pod IP.
233 # +optional
234 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700235 &quot;exec&quot;: { # ExecAction describes a &quot;run in container&quot; action. # One and only one of the following should be specified.
236 # Exec specifies the action to take.
237 # +optional
238 &quot;command&quot;: &quot;A String&quot;, # Command is the command line to execute inside the container, the working
239 # directory for the command is root (&#x27;/&#x27;) in the container&#x27;s filesystem. The
240 # command is simply exec&#x27;d, it is not run inside a shell, so traditional
241 # shell instructions (&#x27;|&#x27;, etc) won&#x27;t work. To use a shell, you need to
242 # explicitly call out to that shell. Exit status of 0 is treated as
243 # live/healthy and non-zero is unhealthy. +optional
244 },
245 &quot;httpGet&quot;: { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
246 # +optional
247 &quot;httpHeaders&quot;: [ # Custom headers to set in the request. HTTP allows repeated headers.
248 # +optional
249 { # HTTPHeader describes a custom header to be used in HTTP probes
Bu Sun Kim65020912020-05-20 12:08:20 -0700250 &quot;name&quot;: &quot;A String&quot;, # The header field name
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700251 &quot;value&quot;: &quot;A String&quot;, # The header field value
Bu Sun Kim65020912020-05-20 12:08:20 -0700252 },
253 ],
254 &quot;path&quot;: &quot;A String&quot;, # Path to access on the HTTP server.
255 # +optional
256 &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.
257 # Number must be in the range 1 to 65535.
258 # Name must be an IANA_SVC_NAME.
259 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
260 # inner type. This allows you to have, for example, a JSON field that can
261 # accept a name or number.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700262 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
Bu Sun Kim65020912020-05-20 12:08:20 -0700263 &quot;type&quot;: 42, # The type of the value.
264 &quot;intVal&quot;: 42, # The int value.
Bu Sun Kim65020912020-05-20 12:08:20 -0700265 },
266 &quot;host&quot;: &quot;A String&quot;, # Host name to connect to, defaults to the pod IP. You probably want to set
267 # &quot;Host&quot; in httpHeaders instead.
268 # +optional
269 &quot;scheme&quot;: &quot;A String&quot;, # Scheme to use for connecting to the host.
270 # Defaults to HTTP.
271 # +optional
272 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700273 },
274 &quot;successThreshold&quot;: 42, # Minimum consecutive successes for the probe to be considered successful
275 # after having failed. Defaults to 1. Must be 1 for liveness. Minimum value
276 # is 1. +optional
277 &quot;periodSeconds&quot;: 42, # How often (in seconds) to perform the probe.
278 # Default to 10 seconds. Minimum value is 1.
279 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700280 &quot;failureThreshold&quot;: 42, # Minimum consecutive failures for the probe to be considered failed after
281 # having succeeded. Defaults to 3. Minimum value is 1. +optional
Bu Sun Kim65020912020-05-20 12:08:20 -0700282 },
283 &quot;env&quot;: [ # List of environment variables to set in the container.
284 # Cannot be updated.
285 # +optional
286 { # EnvVar represents an environment variable present in a Container.
Bu Sun Kim65020912020-05-20 12:08:20 -0700287 &quot;name&quot;: &quot;A String&quot;, # Name of the environment variable. Must be a C_IDENTIFIER.
288 &quot;valueFrom&quot;: { # Cloud Run fully managed: not supported # Cloud Run fully managed: not supported
289 #
290 # Cloud Run on GKE: supported
291 #
292 # Source for the environment variable&#x27;s value. Cannot be used if value is not
293 # empty. +optional
294 #
295 # Cloud Run on GKE: supported
296 #
297 # EnvVarSource represents a source for the value of an EnvVar.
298 &quot;configMapKeyRef&quot;: { # Cloud Run fully managed: not supported # Cloud Run fully managed: not supported
299 #
300 # Cloud Run on GKE: supported
301 #
302 # Selects a key of a ConfigMap.
303 # +optional
304 #
305 # Cloud Run on GKE: supported
306 #
307 # Selects a key from a ConfigMap.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700308 &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
309 # directly into the message. Use the &quot;name&quot; field instead.
310 # referenced object inside the same namespace.
311 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
312 # More info:
313 # https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
314 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700315 &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported
316 #
317 # Cloud Run on GKE: supported
318 #
319 # Specify whether the ConfigMap or its key must be defined
320 # +optional
321 &quot;key&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
322 #
323 # Cloud Run on GKE: supported
324 #
325 # The key to select.
326 &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
327 #
328 # Cloud Run on GKE: supported
329 #
330 # The ConfigMap to select from.
Bu Sun Kim65020912020-05-20 12:08:20 -0700331 },
332 &quot;secretKeyRef&quot;: { # Cloud Run fully managed: not supported # Cloud Run fully managed: not supported
333 #
334 # Cloud Run on GKE: supported
335 #
336 # Selects a key of a secret in the pod&#x27;s namespace
337 # +optional
338 #
339 # Cloud Run on GKE: supported
340 #
341 # SecretKeySelector selects a key of a Secret.
Bu Sun Kim65020912020-05-20 12:08:20 -0700342 &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported
343 #
344 # Cloud Run on GKE: supported
345 #
346 # Specify whether the Secret or its key must be defined
347 # +optional
348 &quot;key&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
349 #
350 # Cloud Run on GKE: supported
351 #
352 # The key of the secret to select from. Must be a valid secret key.
353 &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
354 #
355 # Cloud Run on GKE: supported
356 #
357 # The name of the secret in the pod&#x27;s namespace to select from.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700358 &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
359 # directly into the message. Use the &quot;name&quot; field instead.
360 # referenced object inside the same namespace.
361 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
362 # More info:
363 # https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
364 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700365 },
366 },
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700367 &quot;value&quot;: &quot;A String&quot;, # Variable references $(VAR_NAME) are expanded
368 # using the previous defined environment variables in the container and
369 # any route environment variables. If a variable cannot be resolved,
370 # the reference in the input string will be unchanged. The $(VAR_NAME)
371 # syntax can be escaped with a double $$, ie: $$(VAR_NAME). Escaped
372 # references will never be expanded, regardless of whether the variable
373 # exists or not.
374 # Defaults to &quot;&quot;.
375 # +optional
Bu Sun Kim65020912020-05-20 12:08:20 -0700376 },
377 ],
378 &quot;resources&quot;: { # ResourceRequirements describes the compute resource requirements. # Compute Resources required by this container.
379 # Cannot be updated.
380 # More info:
381 # https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
382 # +optional
383 &quot;requestsInMap&quot;: { # Requests describes the minimum amount of compute resources required.
384 # If Requests is omitted for a container, it defaults to Limits if that is
385 # explicitly specified, otherwise to an implementation-defined value.
386 # This is a temporary field created to migrate away from the
387 # map&lt;string, Quantity&gt; requests field. This is done to become compliant
388 # with k8s style API.
389 # This field is deprecated in favor of requests field.
390 &quot;a_key&quot;: { # The view model of a single quantity, e.g. &quot;800 MiB&quot;. Corresponds to
391 # https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/generated.proto
392 &quot;string&quot;: &quot;A String&quot;, # Stringified version of the quantity, e.g., &quot;800 MiB&quot;.
393 },
394 },
395 &quot;requests&quot;: { # Requests describes the minimum amount of compute resources required.
396 # If Requests is omitted for a container, it defaults to Limits if that is
397 # explicitly specified, otherwise to an implementation-defined value.
398 # The values of the map is string form of the &#x27;quantity&#x27; k8s type:
399 # https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go
400 &quot;a_key&quot;: &quot;A String&quot;,
401 },
402 &quot;limits&quot;: { # Limits describes the maximum amount of compute resources allowed.
403 # The values of the map is string form of the &#x27;quantity&#x27; k8s type:
404 # https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go
405 &quot;a_key&quot;: &quot;A String&quot;,
406 },
407 &quot;limitsInMap&quot;: { # Limits describes the maximum amount of compute resources allowed.
408 # This is a temporary field created to migrate away from the
409 # map&lt;string, Quantity&gt; limits field. This is done to become compliant
410 # with k8s style API.
411 # This field is deprecated in favor of limits field.
412 &quot;a_key&quot;: { # The view model of a single quantity, e.g. &quot;800 MiB&quot;. Corresponds to
413 # https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/generated.proto
414 &quot;string&quot;: &quot;A String&quot;, # Stringified version of the quantity, e.g., &quot;800 MiB&quot;.
415 },
416 },
417 },
418 &quot;readinessProbe&quot;: { # Probe describes a health check to be performed against a container to # Periodic probe of container service readiness.
419 # Container will be removed from service endpoints if the probe fails.
420 # Cannot be updated.
421 # More info:
422 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
423 # +optional
424 # determine whether it is alive or ready to receive traffic.
Bu Sun Kim65020912020-05-20 12:08:20 -0700425 &quot;initialDelaySeconds&quot;: 42, # Number of seconds after the container has started before liveness probes
426 # are initiated. More info:
427 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
428 # +optional
429 &quot;timeoutSeconds&quot;: 42, # Number of seconds after which the probe times out.
430 # Defaults to 1 second. Minimum value is 1.
431 # More info:
432 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
433 # +optional
434 &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 -0700435 &quot;tcpSocket&quot;: { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
436 # TCP hooks not yet supported
437 &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.
438 # Number must be in the range 1 to 65535.
439 # Name must be an IANA_SVC_NAME.
440 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
441 # inner type. This allows you to have, for example, a JSON field that can
442 # accept a name or number.
443 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
444 &quot;type&quot;: 42, # The type of the value.
445 &quot;intVal&quot;: 42, # The int value.
446 },
447 &quot;host&quot;: &quot;A String&quot;, # Optional: Host name to connect to, defaults to the pod IP.
448 # +optional
449 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700450 &quot;exec&quot;: { # ExecAction describes a &quot;run in container&quot; action. # One and only one of the following should be specified.
451 # Exec specifies the action to take.
452 # +optional
453 &quot;command&quot;: &quot;A String&quot;, # Command is the command line to execute inside the container, the working
454 # directory for the command is root (&#x27;/&#x27;) in the container&#x27;s filesystem. The
455 # command is simply exec&#x27;d, it is not run inside a shell, so traditional
456 # shell instructions (&#x27;|&#x27;, etc) won&#x27;t work. To use a shell, you need to
457 # explicitly call out to that shell. Exit status of 0 is treated as
458 # live/healthy and non-zero is unhealthy. +optional
459 },
460 &quot;httpGet&quot;: { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
461 # +optional
462 &quot;httpHeaders&quot;: [ # Custom headers to set in the request. HTTP allows repeated headers.
463 # +optional
464 { # HTTPHeader describes a custom header to be used in HTTP probes
Bu Sun Kim65020912020-05-20 12:08:20 -0700465 &quot;name&quot;: &quot;A String&quot;, # The header field name
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700466 &quot;value&quot;: &quot;A String&quot;, # The header field value
Bu Sun Kim65020912020-05-20 12:08:20 -0700467 },
468 ],
469 &quot;path&quot;: &quot;A String&quot;, # Path to access on the HTTP server.
470 # +optional
471 &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.
472 # Number must be in the range 1 to 65535.
473 # Name must be an IANA_SVC_NAME.
474 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
475 # inner type. This allows you to have, for example, a JSON field that can
476 # accept a name or number.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700477 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
Bu Sun Kim65020912020-05-20 12:08:20 -0700478 &quot;type&quot;: 42, # The type of the value.
479 &quot;intVal&quot;: 42, # The int value.
Bu Sun Kim65020912020-05-20 12:08:20 -0700480 },
481 &quot;host&quot;: &quot;A String&quot;, # Host name to connect to, defaults to the pod IP. You probably want to set
482 # &quot;Host&quot; in httpHeaders instead.
483 # +optional
484 &quot;scheme&quot;: &quot;A String&quot;, # Scheme to use for connecting to the host.
485 # Defaults to HTTP.
486 # +optional
487 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700488 },
489 &quot;successThreshold&quot;: 42, # Minimum consecutive successes for the probe to be considered successful
490 # after having failed. Defaults to 1. Must be 1 for liveness. Minimum value
491 # is 1. +optional
492 &quot;periodSeconds&quot;: 42, # How often (in seconds) to perform the probe.
493 # Default to 10 seconds. Minimum value is 1.
494 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700495 &quot;failureThreshold&quot;: 42, # Minimum consecutive failures for the probe to be considered failed after
496 # having succeeded. Defaults to 3. Minimum value is 1. +optional
Bu Sun Kim65020912020-05-20 12:08:20 -0700497 },
498 &quot;imagePullPolicy&quot;: &quot;A String&quot;, # Image pull policy.
499 # One of Always, Never, IfNotPresent.
500 # Defaults to Always if :latest tag is specified, or IfNotPresent otherwise.
501 # Cannot be updated.
502 # More info:
503 # https://kubernetes.io/docs/concepts/containers/images#updating-images
504 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700505 &quot;lifecycle&quot;: { # Lifecycle describes actions that the management system should take in # Actions that the management system should take in response to container
506 # lifecycle events. Cannot be updated. +optional
507 # response to container lifecycle events. For the PostStart and PreStop
508 # lifecycle handlers, management of the container blocks until the action is
509 # complete, unless the container process fails, in which case the handler is
510 # aborted.
511 &quot;preStop&quot;: { # Handler defines a specific action that should be taken # PreStop is called immediately before a container is terminated.
512 # The container is terminated after the handler completes.
513 # The reason for termination is passed to the handler.
514 # Regardless of the outcome of the handler, the container is eventually
515 # terminated. Other management of the container blocks until the hook
516 # completes. More info:
517 # https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
518 # +optional
519 &quot;tcpSocket&quot;: { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
520 # TCP hooks not yet supported
521 &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.
522 # Number must be in the range 1 to 65535.
523 # Name must be an IANA_SVC_NAME.
524 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
525 # inner type. This allows you to have, for example, a JSON field that can
526 # accept a name or number.
527 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
528 &quot;type&quot;: 42, # The type of the value.
529 &quot;intVal&quot;: 42, # The int value.
530 },
531 &quot;host&quot;: &quot;A String&quot;, # Optional: Host name to connect to, defaults to the pod IP.
532 # +optional
533 },
534 &quot;exec&quot;: { # ExecAction describes a &quot;run in container&quot; action. # One and only one of the following should be specified.
535 # Exec specifies the action to take.
536 # +optional
537 &quot;command&quot;: &quot;A String&quot;, # Command is the command line to execute inside the container, the working
538 # directory for the command is root (&#x27;/&#x27;) in the container&#x27;s filesystem. The
539 # command is simply exec&#x27;d, it is not run inside a shell, so traditional
540 # shell instructions (&#x27;|&#x27;, etc) won&#x27;t work. To use a shell, you need to
541 # explicitly call out to that shell. Exit status of 0 is treated as
542 # live/healthy and non-zero is unhealthy. +optional
543 },
544 &quot;httpGet&quot;: { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
545 # +optional
546 &quot;httpHeaders&quot;: [ # Custom headers to set in the request. HTTP allows repeated headers.
547 # +optional
548 { # HTTPHeader describes a custom header to be used in HTTP probes
549 &quot;name&quot;: &quot;A String&quot;, # The header field name
550 &quot;value&quot;: &quot;A String&quot;, # The header field value
551 },
552 ],
553 &quot;path&quot;: &quot;A String&quot;, # Path to access on the HTTP server.
554 # +optional
555 &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.
556 # Number must be in the range 1 to 65535.
557 # Name must be an IANA_SVC_NAME.
558 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
559 # inner type. This allows you to have, for example, a JSON field that can
560 # accept a name or number.
561 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
562 &quot;type&quot;: 42, # The type of the value.
563 &quot;intVal&quot;: 42, # The int value.
564 },
565 &quot;host&quot;: &quot;A String&quot;, # Host name to connect to, defaults to the pod IP. You probably want to set
566 # &quot;Host&quot; in httpHeaders instead.
567 # +optional
568 &quot;scheme&quot;: &quot;A String&quot;, # Scheme to use for connecting to the host.
569 # Defaults to HTTP.
570 # +optional
571 },
572 },
573 &quot;postStart&quot;: { # Handler defines a specific action that should be taken # PostStart is called immediately after a container is created. If the
574 # handler fails, the container is terminated and restarted according to its
575 # restart policy. Other management of the container blocks until the hook
576 # completes. More info:
577 # https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
578 # +optional
579 &quot;tcpSocket&quot;: { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
580 # TCP hooks not yet supported
581 &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.
582 # Number must be in the range 1 to 65535.
583 # Name must be an IANA_SVC_NAME.
584 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
585 # inner type. This allows you to have, for example, a JSON field that can
586 # accept a name or number.
587 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
588 &quot;type&quot;: 42, # The type of the value.
589 &quot;intVal&quot;: 42, # The int value.
590 },
591 &quot;host&quot;: &quot;A String&quot;, # Optional: Host name to connect to, defaults to the pod IP.
592 # +optional
593 },
594 &quot;exec&quot;: { # ExecAction describes a &quot;run in container&quot; action. # One and only one of the following should be specified.
595 # Exec specifies the action to take.
596 # +optional
597 &quot;command&quot;: &quot;A String&quot;, # Command is the command line to execute inside the container, the working
598 # directory for the command is root (&#x27;/&#x27;) in the container&#x27;s filesystem. The
599 # command is simply exec&#x27;d, it is not run inside a shell, so traditional
600 # shell instructions (&#x27;|&#x27;, etc) won&#x27;t work. To use a shell, you need to
601 # explicitly call out to that shell. Exit status of 0 is treated as
602 # live/healthy and non-zero is unhealthy. +optional
603 },
604 &quot;httpGet&quot;: { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
605 # +optional
606 &quot;httpHeaders&quot;: [ # Custom headers to set in the request. HTTP allows repeated headers.
607 # +optional
608 { # HTTPHeader describes a custom header to be used in HTTP probes
609 &quot;name&quot;: &quot;A String&quot;, # The header field name
610 &quot;value&quot;: &quot;A String&quot;, # The header field value
611 },
612 ],
613 &quot;path&quot;: &quot;A String&quot;, # Path to access on the HTTP server.
614 # +optional
615 &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.
616 # Number must be in the range 1 to 65535.
617 # Name must be an IANA_SVC_NAME.
618 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
619 # inner type. This allows you to have, for example, a JSON field that can
620 # accept a name or number.
621 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
622 &quot;type&quot;: 42, # The type of the value.
623 &quot;intVal&quot;: 42, # The int value.
624 },
625 &quot;host&quot;: &quot;A String&quot;, # Host name to connect to, defaults to the pod IP. You probably want to set
626 # &quot;Host&quot; in httpHeaders instead.
627 # +optional
628 &quot;scheme&quot;: &quot;A String&quot;, # Scheme to use for connecting to the host.
629 # Defaults to HTTP.
630 # +optional
631 },
632 },
633 },
634 &quot;terminationMessagePath&quot;: &quot;A String&quot;, # Optional: Path at which the file to which the container&#x27;s termination
635 # message will be written is mounted into the container&#x27;s filesystem. Message
636 # written is intended to be brief final status, such as an assertion failure
637 # message. Will be truncated by the node if greater than 4096 bytes. The
638 # total message length across all containers will be limited to 12kb.
639 # Defaults to /dev/termination-log.
640 # Cannot be updated.
641 # +optional
642 &quot;stdin&quot;: True or False, # Whether this container should allocate a buffer for stdin in the container
643 # runtime. If this is not set, reads from stdin in the container will always
644 # result in EOF. Default is false. +optional
645 &quot;volumeMounts&quot;: [ # Pod volumes to mount into the container&#x27;s filesystem.
646 # Cannot be updated.
647 # +optional
648 { # VolumeMount describes a mounting of a Volume within a container.
649 &quot;name&quot;: &quot;A String&quot;, # This must match the Name of a Volume.
650 &quot;readOnly&quot;: True or False, # Mounted read-only if true, read-write otherwise (false or unspecified).
651 # Defaults to false.
652 # +optional
653 &quot;mountPropagation&quot;: &quot;A String&quot;, # mountPropagation determines how mounts are propagated from the host
654 # to container and the other way around.
655 # When not set, MountPropagationHostToContainer is used.
656 # This field is beta in 1.10.
657 # +optional
658 &quot;mountPath&quot;: &quot;A String&quot;, # Path within the container at which the volume should be mounted. Must
659 # not contain &#x27;:&#x27;.
660 &quot;subPath&quot;: &quot;A String&quot;, # Path within the volume from which the container&#x27;s volume should be mounted.
661 # Defaults to &quot;&quot; (volume&#x27;s root).
662 # +optional
663 },
664 ],
665 &quot;tty&quot;: True or False, # Whether this container should allocate a TTY for itself, also requires
666 # &#x27;stdin&#x27; to be true. Default is false. +optional
667 &quot;volumeDevices&quot;: [ # volumeDevices is the list of block devices to be used by the container.
668 # This is an alpha feature and may change in the future.
669 # +optional
670 { # volumeDevice describes a mapping of a raw block device within a container.
671 &quot;name&quot;: &quot;A String&quot;, # name must match the name of a persistentVolumeClaim in the pod
672 &quot;devicePath&quot;: &quot;A String&quot;, # devicePath is the path inside of the container that the device will be
673 # mapped to.
674 },
675 ],
676 &quot;stdinOnce&quot;: True or False, # Whether the container runtime should close the stdin channel after it has
677 # been opened by a single attach. When stdin is true the stdin stream will
678 # remain open across multiple attach sessions. If stdinOnce is set to true,
679 # stdin is opened on container start, is empty until the first client
680 # attaches to stdin, and then remains open and accepts data until the client
681 # disconnects, at which time stdin is closed and remains closed until the
682 # container is restarted. If this flag is false, a container processes that
683 # reads from stdin will never receive an EOF. Default is false +optional
684 &quot;args&quot;: [ # Arguments to the entrypoint.
685 # The docker image&#x27;s CMD is used if this is not provided.
686 # Variable references $(VAR_NAME) are expanded using the container&#x27;s
687 # environment. If a variable cannot be resolved, the reference in the input
688 # string will be unchanged. The $(VAR_NAME) syntax can be escaped with a
689 # double $$, ie: $$(VAR_NAME). Escaped references will never be expanded,
690 # regardless of whether the variable exists or not.
691 # Cannot be updated.
692 # More info:
693 # https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
694 # +optional
695 &quot;A String&quot;,
696 ],
697 &quot;workingDir&quot;: &quot;A String&quot;, # Container&#x27;s working directory.
698 # If not specified, the container runtime&#x27;s default will be used, which
699 # might be configured in the container image.
700 # Cannot be updated.
701 # +optional
702 &quot;ports&quot;: [ # List of ports to expose from the container. Exposing a port here gives
703 # the system additional information about the network connections a
704 # container uses, but is primarily informational. Not specifying a port here
705 # DOES NOT prevent that port from being exposed. Any port which is
706 # listening on the default &quot;0.0.0.0&quot; address inside a container will be
707 # accessible from the network.
708 # Cannot be updated.
709 # +optional
710 { # ContainerPort represents a network port in a single container.
711 &quot;hostIP&quot;: &quot;A String&quot;, # What host IP to bind the external port to.
712 # +optional
713 &quot;name&quot;: &quot;A String&quot;, # If specified, this must be an IANA_SVC_NAME and unique within the pod. Each
714 # named port in a pod must have a unique name. Name for the port that can be
715 # referred to by services.
716 # +optional
717 &quot;hostPort&quot;: 42, # Number of port to expose on the host.
718 # If specified, this must be a valid port number, 0 &lt; x &lt; 65536.
719 # If HostNetwork is specified, this must match ContainerPort.
720 # Most containers do not need this.
721 # +optional
722 &quot;containerPort&quot;: 42, # Number of port to expose on the pod&#x27;s IP address.
723 # This must be a valid port number, 0 &lt; x &lt; 65536.
724 &quot;protocol&quot;: &quot;A String&quot;, # Protocol for port. Must be UDP or TCP.
725 # Defaults to &quot;TCP&quot;.
726 # +optional
727 },
728 ],
729 &quot;image&quot;: &quot;A String&quot;, # Docker image name.
730 # More info: https://kubernetes.io/docs/concepts/containers/images
731 &quot;envFrom&quot;: [ # List of sources to populate environment variables in the container.
732 # The keys defined within a source must be a C_IDENTIFIER. All invalid keys
733 # will be reported as an event when the container is starting. When a key
734 # exists in multiple sources, the value associated with the last source will
735 # take precedence. Values defined by an Env with a duplicate key will take
736 # precedence. Cannot be updated. +optional
737 { # EnvFromSource represents the source of a set of ConfigMaps
738 &quot;prefix&quot;: &quot;A String&quot;, # An optional identifier to prepend to each key in the ConfigMap. Must be a
739 # C_IDENTIFIER. +optional
740 &quot;configMapRef&quot;: { # ConfigMapEnvSource selects a ConfigMap to populate the environment # The ConfigMap to select from
741 # +optional
742 # variables with.
743 #
744 # The contents of the target ConfigMap&#x27;s Data field will represent the
745 # key-value pairs as environment variables.
746 &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
747 # directly into the message. Use the &quot;name&quot; field instead.
748 # referenced object inside the same namespace.
749 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
750 # More info:
751 # https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
752 },
753 &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported
754 #
755 # Cloud Run for Anthos: supported
756 #
757 # Specify whether the ConfigMap must be defined
758 # +optional
759 &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
760 #
761 # Cloud Run for Anthos: supported
762 #
763 # The ConfigMap to select from.
764 },
765 &quot;secretRef&quot;: { # SecretEnvSource selects a Secret to populate the environment # The Secret to select from
766 # +optional
767 # variables with.
768 #
769 # The contents of the target Secret&#x27;s Data field will represent the
770 # key-value pairs as environment variables.
771 &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
772 #
773 # Cloud Run for Anthos: supported
774 #
775 # The Secret to select from.
776 &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
777 # directly into the message. Use the &quot;name&quot; field instead.
778 # referenced object inside the same namespace.
779 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
780 # More info:
781 # https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
782 },
783 &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported
784 #
785 # Cloud Run for Anthos: supported
786 #
787 # Specify whether the Secret must be defined
788 # +optional
789 },
790 },
791 ],
792 &quot;name&quot;: &quot;A String&quot;, # Name of the container specified as a DNS_LABEL.
793 # Each container must have a unique name (DNS_LABEL).
794 # Cannot be updated.
795 &quot;command&quot;: [ # Entrypoint array. Not executed within a shell.
796 # The docker image&#x27;s ENTRYPOINT is used if this is not provided.
797 # Variable references $(VAR_NAME) are expanded using the container&#x27;s
798 # environment. If a variable cannot be resolved, the reference in the input
799 # string will be unchanged. The $(VAR_NAME) syntax can be escaped with a
800 # double $$, ie: $$(VAR_NAME). Escaped references will never be expanded,
801 # regardless of whether the variable exists or not.
802 # Cannot be updated.
803 # More info:
804 # https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
805 # +optional
806 &quot;A String&quot;,
807 ],
Bu Sun Kim65020912020-05-20 12:08:20 -0700808 },
809 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700810 &quot;serviceAccountName&quot;: &quot;A String&quot;, # Email address of the IAM service account associated with the revision
811 # of the service. The service account represents the identity of the
812 # running revision, and determines what permissions the revision has. If
813 # not provided, the revision will use the project&#x27;s default service account.
Bu Sun Kim65020912020-05-20 12:08:20 -0700814 &quot;generation&quot;: 42, # Deprecated and not currently populated by Cloud Run. See
815 # metadata.generation instead, which is the sequence number containing the
816 # latest generation of the desired state.
817 #
818 # Read-only.
819 &quot;servingState&quot;: &quot;A String&quot;, # ServingState holds a value describing the state the resources
820 # are in for this Revision.
821 # Users must not specify this when creating a revision. It is expected
822 # that the system will manipulate this based on routability and load.
823 #
824 # Populated by the system.
825 # Read-only.
826 &quot;concurrencyModel&quot;: &quot;A String&quot;, # ConcurrencyModel specifies the desired concurrency model
827 # (Single or Multi) for the Revision. Defaults to Multi.
828 # Deprecated in favor of ContainerConcurrency.
829 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700830 &quot;timeoutSeconds&quot;: 42, # TimeoutSeconds holds the max duration the instance is allowed for
831 # responding to a request.
832 # Not currently used by Cloud Run.
Bu Sun Kim65020912020-05-20 12:08:20 -0700833 &quot;container&quot;: { # A single application container. # Container defines the unit of execution for this Revision.
834 # In the context of a Revision, we disallow a number of the fields of
835 # this Container, including: name, ports, and volumeMounts.
836 # The runtime contract is documented here:
837 # https://github.com/knative/serving/blob/master/docs/runtime-contract.md
838 # This specifies both the container to run, the command to run in the container
839 # and the arguments to supply to it.
840 # Note that additional arguments may be supplied by the system to the container
841 # at runtime.
Bu Sun Kim65020912020-05-20 12:08:20 -0700842 &quot;terminationMessagePolicy&quot;: &quot;A String&quot;, # Indicate how the termination message should be populated. File will use the
843 # contents of terminationMessagePath to populate the container status message
844 # on both success and failure. FallbackToLogsOnError will use the last chunk
845 # of container log output if the termination message file is empty and the
846 # container exited with an error. The log output is limited to 2048 bytes or
847 # 80 lines, whichever is smaller. Defaults to File. Cannot be updated.
848 # +optional
849 &quot;securityContext&quot;: { # SecurityContext holds security configuration that will be applied to a # Security options the pod should run with.
850 # More info: https://kubernetes.io/docs/concepts/policy/security-context/
851 # More info:
852 # https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
853 # +optional
854 # container. Some fields are present in both SecurityContext and
855 # PodSecurityContext. When both are set, the values in SecurityContext take
856 # precedence.
857 &quot;capabilities&quot;: { # Adds and removes POSIX capabilities from running containers. # The capabilities to add/drop when running containers.
858 # Defaults to the default set of capabilities granted by the container
859 # runtime. +optional
860 &quot;add&quot;: [ # Added capabilities
861 # +optional
862 &quot;A String&quot;,
863 ],
864 &quot;drop&quot;: [ # Removed capabilities
865 # +optional
866 &quot;A String&quot;,
867 ],
868 },
869 &quot;runAsNonRoot&quot;: True or False, # Indicates that the container must run as a non-root user.
870 # If true, the Kubelet will validate the image at runtime to ensure that it
871 # does not run as UID 0 (root) and fail to start the container if it does.
872 # If unset or false, no such validation will be performed.
873 # May also be set in PodSecurityContext. If set in both SecurityContext and
874 # PodSecurityContext, the value specified in SecurityContext takes
875 # precedence. +optional
876 &quot;runAsGroup&quot;: 42, # The GID to run the entrypoint of the container process.
877 # Uses runtime default if unset.
878 # May also be set in PodSecurityContext. If set in both SecurityContext and
879 # PodSecurityContext, the value specified in SecurityContext takes
880 # precedence. +optional
881 &quot;privileged&quot;: True or False, # Run container in privileged mode.
882 # Processes in privileged containers are essentially equivalent to root on
883 # the host. Defaults to false. +optional
884 &quot;allowPrivilegeEscalation&quot;: True or False, # AllowPrivilegeEscalation controls whether a process can gain more
885 # privileges than its parent process. This bool directly controls if
886 # the no_new_privs flag will be set on the container process.
887 # AllowPrivilegeEscalation is true always when the container is:
888 # 1) run as Privileged
889 # 2) has CAP_SYS_ADMIN
890 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700891 &quot;readOnlyRootFilesystem&quot;: True or False, # Whether this container has a read-only root filesystem.
892 # Default is false.
893 # +optional
Bu Sun Kim65020912020-05-20 12:08:20 -0700894 &quot;seLinuxOptions&quot;: { # SELinuxOptions are the labels to be applied to the container # The SELinux context to be applied to the container.
895 # If unspecified, the container runtime will allocate a random SELinux
896 # context for each container. May also be set in PodSecurityContext. If set
897 # in both SecurityContext and PodSecurityContext, the value specified in
898 # SecurityContext takes precedence. +optional
899 &quot;role&quot;: &quot;A String&quot;, # Role is a SELinux role label that applies to the container.
900 # +optional
901 &quot;level&quot;: &quot;A String&quot;, # Level is SELinux level label that applies to the container.
902 # +optional
903 &quot;user&quot;: &quot;A String&quot;, # User is a SELinux user label that applies to the container.
904 # +optional
905 &quot;type&quot;: &quot;A String&quot;, # Type is a SELinux type label that applies to the container.
906 # +optional
907 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700908 &quot;runAsUser&quot;: 42, # The UID to run the entrypoint of the container process.
909 # Defaults to user specified in image metadata if unspecified.
910 # May also be set in PodSecurityContext. If set in both SecurityContext and
911 # PodSecurityContext, the value specified in SecurityContext takes
912 # precedence. +optional
913 },
914 &quot;livenessProbe&quot;: { # Probe describes a health check to be performed against a container to # Periodic probe of container liveness.
915 # Container will be restarted if the probe fails.
916 # Cannot be updated.
917 # More info:
918 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
919 # +optional
920 # determine whether it is alive or ready to receive traffic.
Bu Sun Kim65020912020-05-20 12:08:20 -0700921 &quot;initialDelaySeconds&quot;: 42, # Number of seconds after the container has started before liveness probes
922 # are initiated. More info:
923 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
924 # +optional
925 &quot;timeoutSeconds&quot;: 42, # Number of seconds after which the probe times out.
926 # Defaults to 1 second. Minimum value is 1.
927 # More info:
928 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
929 # +optional
930 &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 -0700931 &quot;tcpSocket&quot;: { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
932 # TCP hooks not yet supported
933 &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.
934 # Number must be in the range 1 to 65535.
935 # Name must be an IANA_SVC_NAME.
936 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
937 # inner type. This allows you to have, for example, a JSON field that can
938 # accept a name or number.
939 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
940 &quot;type&quot;: 42, # The type of the value.
941 &quot;intVal&quot;: 42, # The int value.
942 },
943 &quot;host&quot;: &quot;A String&quot;, # Optional: Host name to connect to, defaults to the pod IP.
944 # +optional
945 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700946 &quot;exec&quot;: { # ExecAction describes a &quot;run in container&quot; action. # One and only one of the following should be specified.
947 # Exec specifies the action to take.
948 # +optional
949 &quot;command&quot;: &quot;A String&quot;, # Command is the command line to execute inside the container, the working
950 # directory for the command is root (&#x27;/&#x27;) in the container&#x27;s filesystem. The
951 # command is simply exec&#x27;d, it is not run inside a shell, so traditional
952 # shell instructions (&#x27;|&#x27;, etc) won&#x27;t work. To use a shell, you need to
953 # explicitly call out to that shell. Exit status of 0 is treated as
954 # live/healthy and non-zero is unhealthy. +optional
955 },
956 &quot;httpGet&quot;: { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
957 # +optional
958 &quot;httpHeaders&quot;: [ # Custom headers to set in the request. HTTP allows repeated headers.
959 # +optional
960 { # HTTPHeader describes a custom header to be used in HTTP probes
Bu Sun Kim65020912020-05-20 12:08:20 -0700961 &quot;name&quot;: &quot;A String&quot;, # The header field name
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700962 &quot;value&quot;: &quot;A String&quot;, # The header field value
Bu Sun Kim65020912020-05-20 12:08:20 -0700963 },
964 ],
965 &quot;path&quot;: &quot;A String&quot;, # Path to access on the HTTP server.
966 # +optional
967 &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.
968 # Number must be in the range 1 to 65535.
969 # Name must be an IANA_SVC_NAME.
970 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
971 # inner type. This allows you to have, for example, a JSON field that can
972 # accept a name or number.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700973 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
Bu Sun Kim65020912020-05-20 12:08:20 -0700974 &quot;type&quot;: 42, # The type of the value.
975 &quot;intVal&quot;: 42, # The int value.
Bu Sun Kim65020912020-05-20 12:08:20 -0700976 },
977 &quot;host&quot;: &quot;A String&quot;, # Host name to connect to, defaults to the pod IP. You probably want to set
978 # &quot;Host&quot; in httpHeaders instead.
979 # +optional
980 &quot;scheme&quot;: &quot;A String&quot;, # Scheme to use for connecting to the host.
981 # Defaults to HTTP.
982 # +optional
983 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700984 },
985 &quot;successThreshold&quot;: 42, # Minimum consecutive successes for the probe to be considered successful
986 # after having failed. Defaults to 1. Must be 1 for liveness. Minimum value
987 # is 1. +optional
988 &quot;periodSeconds&quot;: 42, # How often (in seconds) to perform the probe.
989 # Default to 10 seconds. Minimum value is 1.
990 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700991 &quot;failureThreshold&quot;: 42, # Minimum consecutive failures for the probe to be considered failed after
992 # having succeeded. Defaults to 3. Minimum value is 1. +optional
Bu Sun Kim65020912020-05-20 12:08:20 -0700993 },
994 &quot;env&quot;: [ # List of environment variables to set in the container.
995 # Cannot be updated.
996 # +optional
997 { # EnvVar represents an environment variable present in a Container.
Bu Sun Kim65020912020-05-20 12:08:20 -0700998 &quot;name&quot;: &quot;A String&quot;, # Name of the environment variable. Must be a C_IDENTIFIER.
999 &quot;valueFrom&quot;: { # Cloud Run fully managed: not supported # Cloud Run fully managed: not supported
1000 #
1001 # Cloud Run on GKE: supported
1002 #
1003 # Source for the environment variable&#x27;s value. Cannot be used if value is not
1004 # empty. +optional
1005 #
1006 # Cloud Run on GKE: supported
1007 #
1008 # EnvVarSource represents a source for the value of an EnvVar.
1009 &quot;configMapKeyRef&quot;: { # Cloud Run fully managed: not supported # Cloud Run fully managed: not supported
1010 #
1011 # Cloud Run on GKE: supported
1012 #
1013 # Selects a key of a ConfigMap.
1014 # +optional
1015 #
1016 # Cloud Run on GKE: supported
1017 #
1018 # Selects a key from a ConfigMap.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001019 &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
1020 # directly into the message. Use the &quot;name&quot; field instead.
1021 # referenced object inside the same namespace.
1022 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
1023 # More info:
1024 # https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
1025 },
Bu Sun Kim65020912020-05-20 12:08:20 -07001026 &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported
1027 #
1028 # Cloud Run on GKE: supported
1029 #
1030 # Specify whether the ConfigMap or its key must be defined
1031 # +optional
1032 &quot;key&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
1033 #
1034 # Cloud Run on GKE: supported
1035 #
1036 # The key to select.
1037 &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
1038 #
1039 # Cloud Run on GKE: supported
1040 #
1041 # The ConfigMap to select from.
Bu Sun Kim65020912020-05-20 12:08:20 -07001042 },
1043 &quot;secretKeyRef&quot;: { # Cloud Run fully managed: not supported # Cloud Run fully managed: not supported
1044 #
1045 # Cloud Run on GKE: supported
1046 #
1047 # Selects a key of a secret in the pod&#x27;s namespace
1048 # +optional
1049 #
1050 # Cloud Run on GKE: supported
1051 #
1052 # SecretKeySelector selects a key of a Secret.
Bu Sun Kim65020912020-05-20 12:08:20 -07001053 &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported
1054 #
1055 # Cloud Run on GKE: supported
1056 #
1057 # Specify whether the Secret or its key must be defined
1058 # +optional
1059 &quot;key&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
1060 #
1061 # Cloud Run on GKE: supported
1062 #
1063 # The key of the secret to select from. Must be a valid secret key.
1064 &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
1065 #
1066 # Cloud Run on GKE: supported
1067 #
1068 # The name of the secret in the pod&#x27;s namespace to select from.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001069 &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
1070 # directly into the message. Use the &quot;name&quot; field instead.
1071 # referenced object inside the same namespace.
1072 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
1073 # More info:
1074 # https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
1075 },
Bu Sun Kim65020912020-05-20 12:08:20 -07001076 },
1077 },
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001078 &quot;value&quot;: &quot;A String&quot;, # Variable references $(VAR_NAME) are expanded
1079 # using the previous defined environment variables in the container and
1080 # any route environment variables. If a variable cannot be resolved,
1081 # the reference in the input string will be unchanged. The $(VAR_NAME)
1082 # syntax can be escaped with a double $$, ie: $$(VAR_NAME). Escaped
1083 # references will never be expanded, regardless of whether the variable
1084 # exists or not.
1085 # Defaults to &quot;&quot;.
1086 # +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07001087 },
1088 ],
1089 &quot;resources&quot;: { # ResourceRequirements describes the compute resource requirements. # Compute Resources required by this container.
1090 # Cannot be updated.
1091 # More info:
1092 # https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
1093 # +optional
1094 &quot;requestsInMap&quot;: { # Requests describes the minimum amount of compute resources required.
1095 # If Requests is omitted for a container, it defaults to Limits if that is
1096 # explicitly specified, otherwise to an implementation-defined value.
1097 # This is a temporary field created to migrate away from the
1098 # map&lt;string, Quantity&gt; requests field. This is done to become compliant
1099 # with k8s style API.
1100 # This field is deprecated in favor of requests field.
1101 &quot;a_key&quot;: { # The view model of a single quantity, e.g. &quot;800 MiB&quot;. Corresponds to
1102 # https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/generated.proto
1103 &quot;string&quot;: &quot;A String&quot;, # Stringified version of the quantity, e.g., &quot;800 MiB&quot;.
1104 },
1105 },
1106 &quot;requests&quot;: { # Requests describes the minimum amount of compute resources required.
1107 # If Requests is omitted for a container, it defaults to Limits if that is
1108 # explicitly specified, otherwise to an implementation-defined value.
1109 # The values of the map is string form of the &#x27;quantity&#x27; k8s type:
1110 # https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go
1111 &quot;a_key&quot;: &quot;A String&quot;,
1112 },
1113 &quot;limits&quot;: { # Limits describes the maximum amount of compute resources allowed.
1114 # The values of the map is string form of the &#x27;quantity&#x27; k8s type:
1115 # https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go
1116 &quot;a_key&quot;: &quot;A String&quot;,
1117 },
1118 &quot;limitsInMap&quot;: { # Limits describes the maximum amount of compute resources allowed.
1119 # This is a temporary field created to migrate away from the
1120 # map&lt;string, Quantity&gt; limits field. This is done to become compliant
1121 # with k8s style API.
1122 # This field is deprecated in favor of limits field.
1123 &quot;a_key&quot;: { # The view model of a single quantity, e.g. &quot;800 MiB&quot;. Corresponds to
1124 # https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/generated.proto
1125 &quot;string&quot;: &quot;A String&quot;, # Stringified version of the quantity, e.g., &quot;800 MiB&quot;.
1126 },
1127 },
1128 },
1129 &quot;readinessProbe&quot;: { # Probe describes a health check to be performed against a container to # Periodic probe of container service readiness.
1130 # Container will be removed from service endpoints if the probe fails.
1131 # Cannot be updated.
1132 # More info:
1133 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
1134 # +optional
1135 # determine whether it is alive or ready to receive traffic.
Bu Sun Kim65020912020-05-20 12:08:20 -07001136 &quot;initialDelaySeconds&quot;: 42, # Number of seconds after the container has started before liveness probes
1137 # are initiated. More info:
1138 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
1139 # +optional
1140 &quot;timeoutSeconds&quot;: 42, # Number of seconds after which the probe times out.
1141 # Defaults to 1 second. Minimum value is 1.
1142 # More info:
1143 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
1144 # +optional
1145 &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 -07001146 &quot;tcpSocket&quot;: { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
1147 # TCP hooks not yet supported
1148 &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.
1149 # Number must be in the range 1 to 65535.
1150 # Name must be an IANA_SVC_NAME.
1151 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
1152 # inner type. This allows you to have, for example, a JSON field that can
1153 # accept a name or number.
1154 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
1155 &quot;type&quot;: 42, # The type of the value.
1156 &quot;intVal&quot;: 42, # The int value.
1157 },
1158 &quot;host&quot;: &quot;A String&quot;, # Optional: Host name to connect to, defaults to the pod IP.
1159 # +optional
1160 },
Bu Sun Kim65020912020-05-20 12:08:20 -07001161 &quot;exec&quot;: { # ExecAction describes a &quot;run in container&quot; action. # One and only one of the following should be specified.
1162 # Exec specifies the action to take.
1163 # +optional
1164 &quot;command&quot;: &quot;A String&quot;, # Command is the command line to execute inside the container, the working
1165 # directory for the command is root (&#x27;/&#x27;) in the container&#x27;s filesystem. The
1166 # command is simply exec&#x27;d, it is not run inside a shell, so traditional
1167 # shell instructions (&#x27;|&#x27;, etc) won&#x27;t work. To use a shell, you need to
1168 # explicitly call out to that shell. Exit status of 0 is treated as
1169 # live/healthy and non-zero is unhealthy. +optional
1170 },
1171 &quot;httpGet&quot;: { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
1172 # +optional
1173 &quot;httpHeaders&quot;: [ # Custom headers to set in the request. HTTP allows repeated headers.
1174 # +optional
1175 { # HTTPHeader describes a custom header to be used in HTTP probes
Bu Sun Kim65020912020-05-20 12:08:20 -07001176 &quot;name&quot;: &quot;A String&quot;, # The header field name
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001177 &quot;value&quot;: &quot;A String&quot;, # The header field value
Bu Sun Kim65020912020-05-20 12:08:20 -07001178 },
1179 ],
1180 &quot;path&quot;: &quot;A String&quot;, # Path to access on the HTTP server.
1181 # +optional
1182 &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.
1183 # Number must be in the range 1 to 65535.
1184 # Name must be an IANA_SVC_NAME.
1185 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
1186 # inner type. This allows you to have, for example, a JSON field that can
1187 # accept a name or number.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001188 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
Bu Sun Kim65020912020-05-20 12:08:20 -07001189 &quot;type&quot;: 42, # The type of the value.
1190 &quot;intVal&quot;: 42, # The int value.
Bu Sun Kim65020912020-05-20 12:08:20 -07001191 },
1192 &quot;host&quot;: &quot;A String&quot;, # Host name to connect to, defaults to the pod IP. You probably want to set
1193 # &quot;Host&quot; in httpHeaders instead.
1194 # +optional
1195 &quot;scheme&quot;: &quot;A String&quot;, # Scheme to use for connecting to the host.
1196 # Defaults to HTTP.
1197 # +optional
1198 },
Bu Sun Kim65020912020-05-20 12:08:20 -07001199 },
1200 &quot;successThreshold&quot;: 42, # Minimum consecutive successes for the probe to be considered successful
1201 # after having failed. Defaults to 1. Must be 1 for liveness. Minimum value
1202 # is 1. +optional
1203 &quot;periodSeconds&quot;: 42, # How often (in seconds) to perform the probe.
1204 # Default to 10 seconds. Minimum value is 1.
1205 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001206 &quot;failureThreshold&quot;: 42, # Minimum consecutive failures for the probe to be considered failed after
1207 # having succeeded. Defaults to 3. Minimum value is 1. +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07001208 },
1209 &quot;imagePullPolicy&quot;: &quot;A String&quot;, # Image pull policy.
1210 # One of Always, Never, IfNotPresent.
1211 # Defaults to Always if :latest tag is specified, or IfNotPresent otherwise.
1212 # Cannot be updated.
1213 # More info:
1214 # https://kubernetes.io/docs/concepts/containers/images#updating-images
1215 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001216 &quot;lifecycle&quot;: { # Lifecycle describes actions that the management system should take in # Actions that the management system should take in response to container
1217 # lifecycle events. Cannot be updated. +optional
1218 # response to container lifecycle events. For the PostStart and PreStop
1219 # lifecycle handlers, management of the container blocks until the action is
1220 # complete, unless the container process fails, in which case the handler is
1221 # aborted.
1222 &quot;preStop&quot;: { # Handler defines a specific action that should be taken # PreStop is called immediately before a container is terminated.
1223 # The container is terminated after the handler completes.
1224 # The reason for termination is passed to the handler.
1225 # Regardless of the outcome of the handler, the container is eventually
1226 # terminated. Other management of the container blocks until the hook
1227 # completes. More info:
1228 # https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
1229 # +optional
1230 &quot;tcpSocket&quot;: { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
1231 # TCP hooks not yet supported
1232 &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.
1233 # Number must be in the range 1 to 65535.
1234 # Name must be an IANA_SVC_NAME.
1235 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
1236 # inner type. This allows you to have, for example, a JSON field that can
1237 # accept a name or number.
1238 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
1239 &quot;type&quot;: 42, # The type of the value.
1240 &quot;intVal&quot;: 42, # The int value.
1241 },
1242 &quot;host&quot;: &quot;A String&quot;, # Optional: Host name to connect to, defaults to the pod IP.
1243 # +optional
1244 },
1245 &quot;exec&quot;: { # ExecAction describes a &quot;run in container&quot; action. # One and only one of the following should be specified.
1246 # Exec specifies the action to take.
1247 # +optional
1248 &quot;command&quot;: &quot;A String&quot;, # Command is the command line to execute inside the container, the working
1249 # directory for the command is root (&#x27;/&#x27;) in the container&#x27;s filesystem. The
1250 # command is simply exec&#x27;d, it is not run inside a shell, so traditional
1251 # shell instructions (&#x27;|&#x27;, etc) won&#x27;t work. To use a shell, you need to
1252 # explicitly call out to that shell. Exit status of 0 is treated as
1253 # live/healthy and non-zero is unhealthy. +optional
1254 },
1255 &quot;httpGet&quot;: { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
1256 # +optional
1257 &quot;httpHeaders&quot;: [ # Custom headers to set in the request. HTTP allows repeated headers.
1258 # +optional
1259 { # HTTPHeader describes a custom header to be used in HTTP probes
1260 &quot;name&quot;: &quot;A String&quot;, # The header field name
1261 &quot;value&quot;: &quot;A String&quot;, # The header field value
1262 },
1263 ],
1264 &quot;path&quot;: &quot;A String&quot;, # Path to access on the HTTP server.
1265 # +optional
1266 &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.
1267 # Number must be in the range 1 to 65535.
1268 # Name must be an IANA_SVC_NAME.
1269 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
1270 # inner type. This allows you to have, for example, a JSON field that can
1271 # accept a name or number.
1272 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
1273 &quot;type&quot;: 42, # The type of the value.
1274 &quot;intVal&quot;: 42, # The int value.
1275 },
1276 &quot;host&quot;: &quot;A String&quot;, # Host name to connect to, defaults to the pod IP. You probably want to set
1277 # &quot;Host&quot; in httpHeaders instead.
1278 # +optional
1279 &quot;scheme&quot;: &quot;A String&quot;, # Scheme to use for connecting to the host.
1280 # Defaults to HTTP.
1281 # +optional
1282 },
1283 },
1284 &quot;postStart&quot;: { # Handler defines a specific action that should be taken # PostStart is called immediately after a container is created. If the
1285 # handler fails, the container is terminated and restarted according to its
1286 # restart policy. Other management of the container blocks until the hook
1287 # completes. More info:
1288 # https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
1289 # +optional
1290 &quot;tcpSocket&quot;: { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
1291 # TCP hooks not yet supported
1292 &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.
1293 # Number must be in the range 1 to 65535.
1294 # Name must be an IANA_SVC_NAME.
1295 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
1296 # inner type. This allows you to have, for example, a JSON field that can
1297 # accept a name or number.
1298 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
1299 &quot;type&quot;: 42, # The type of the value.
1300 &quot;intVal&quot;: 42, # The int value.
1301 },
1302 &quot;host&quot;: &quot;A String&quot;, # Optional: Host name to connect to, defaults to the pod IP.
1303 # +optional
1304 },
1305 &quot;exec&quot;: { # ExecAction describes a &quot;run in container&quot; action. # One and only one of the following should be specified.
1306 # Exec specifies the action to take.
1307 # +optional
1308 &quot;command&quot;: &quot;A String&quot;, # Command is the command line to execute inside the container, the working
1309 # directory for the command is root (&#x27;/&#x27;) in the container&#x27;s filesystem. The
1310 # command is simply exec&#x27;d, it is not run inside a shell, so traditional
1311 # shell instructions (&#x27;|&#x27;, etc) won&#x27;t work. To use a shell, you need to
1312 # explicitly call out to that shell. Exit status of 0 is treated as
1313 # live/healthy and non-zero is unhealthy. +optional
1314 },
1315 &quot;httpGet&quot;: { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
1316 # +optional
1317 &quot;httpHeaders&quot;: [ # Custom headers to set in the request. HTTP allows repeated headers.
1318 # +optional
1319 { # HTTPHeader describes a custom header to be used in HTTP probes
1320 &quot;name&quot;: &quot;A String&quot;, # The header field name
1321 &quot;value&quot;: &quot;A String&quot;, # The header field value
1322 },
1323 ],
1324 &quot;path&quot;: &quot;A String&quot;, # Path to access on the HTTP server.
1325 # +optional
1326 &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.
1327 # Number must be in the range 1 to 65535.
1328 # Name must be an IANA_SVC_NAME.
1329 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
1330 # inner type. This allows you to have, for example, a JSON field that can
1331 # accept a name or number.
1332 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
1333 &quot;type&quot;: 42, # The type of the value.
1334 &quot;intVal&quot;: 42, # The int value.
1335 },
1336 &quot;host&quot;: &quot;A String&quot;, # Host name to connect to, defaults to the pod IP. You probably want to set
1337 # &quot;Host&quot; in httpHeaders instead.
1338 # +optional
1339 &quot;scheme&quot;: &quot;A String&quot;, # Scheme to use for connecting to the host.
1340 # Defaults to HTTP.
1341 # +optional
1342 },
1343 },
1344 },
1345 &quot;terminationMessagePath&quot;: &quot;A String&quot;, # Optional: Path at which the file to which the container&#x27;s termination
1346 # message will be written is mounted into the container&#x27;s filesystem. Message
1347 # written is intended to be brief final status, such as an assertion failure
1348 # message. Will be truncated by the node if greater than 4096 bytes. The
1349 # total message length across all containers will be limited to 12kb.
1350 # Defaults to /dev/termination-log.
1351 # Cannot be updated.
1352 # +optional
1353 &quot;stdin&quot;: True or False, # Whether this container should allocate a buffer for stdin in the container
1354 # runtime. If this is not set, reads from stdin in the container will always
1355 # result in EOF. Default is false. +optional
1356 &quot;volumeMounts&quot;: [ # Pod volumes to mount into the container&#x27;s filesystem.
1357 # Cannot be updated.
1358 # +optional
1359 { # VolumeMount describes a mounting of a Volume within a container.
1360 &quot;name&quot;: &quot;A String&quot;, # This must match the Name of a Volume.
1361 &quot;readOnly&quot;: True or False, # Mounted read-only if true, read-write otherwise (false or unspecified).
1362 # Defaults to false.
1363 # +optional
1364 &quot;mountPropagation&quot;: &quot;A String&quot;, # mountPropagation determines how mounts are propagated from the host
1365 # to container and the other way around.
1366 # When not set, MountPropagationHostToContainer is used.
1367 # This field is beta in 1.10.
1368 # +optional
1369 &quot;mountPath&quot;: &quot;A String&quot;, # Path within the container at which the volume should be mounted. Must
1370 # not contain &#x27;:&#x27;.
1371 &quot;subPath&quot;: &quot;A String&quot;, # Path within the volume from which the container&#x27;s volume should be mounted.
1372 # Defaults to &quot;&quot; (volume&#x27;s root).
1373 # +optional
1374 },
1375 ],
1376 &quot;tty&quot;: True or False, # Whether this container should allocate a TTY for itself, also requires
1377 # &#x27;stdin&#x27; to be true. Default is false. +optional
1378 &quot;volumeDevices&quot;: [ # volumeDevices is the list of block devices to be used by the container.
1379 # This is an alpha feature and may change in the future.
1380 # +optional
1381 { # volumeDevice describes a mapping of a raw block device within a container.
1382 &quot;name&quot;: &quot;A String&quot;, # name must match the name of a persistentVolumeClaim in the pod
1383 &quot;devicePath&quot;: &quot;A String&quot;, # devicePath is the path inside of the container that the device will be
1384 # mapped to.
1385 },
1386 ],
1387 &quot;stdinOnce&quot;: True or False, # Whether the container runtime should close the stdin channel after it has
1388 # been opened by a single attach. When stdin is true the stdin stream will
1389 # remain open across multiple attach sessions. If stdinOnce is set to true,
1390 # stdin is opened on container start, is empty until the first client
1391 # attaches to stdin, and then remains open and accepts data until the client
1392 # disconnects, at which time stdin is closed and remains closed until the
1393 # container is restarted. If this flag is false, a container processes that
1394 # reads from stdin will never receive an EOF. Default is false +optional
1395 &quot;args&quot;: [ # Arguments to the entrypoint.
1396 # The docker image&#x27;s CMD is used if this is not provided.
1397 # Variable references $(VAR_NAME) are expanded using the container&#x27;s
1398 # environment. If a variable cannot be resolved, the reference in the input
1399 # string will be unchanged. The $(VAR_NAME) syntax can be escaped with a
1400 # double $$, ie: $$(VAR_NAME). Escaped references will never be expanded,
1401 # regardless of whether the variable exists or not.
1402 # Cannot be updated.
1403 # More info:
1404 # https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
1405 # +optional
1406 &quot;A String&quot;,
1407 ],
1408 &quot;workingDir&quot;: &quot;A String&quot;, # Container&#x27;s working directory.
1409 # If not specified, the container runtime&#x27;s default will be used, which
1410 # might be configured in the container image.
1411 # Cannot be updated.
1412 # +optional
1413 &quot;ports&quot;: [ # List of ports to expose from the container. Exposing a port here gives
1414 # the system additional information about the network connections a
1415 # container uses, but is primarily informational. Not specifying a port here
1416 # DOES NOT prevent that port from being exposed. Any port which is
1417 # listening on the default &quot;0.0.0.0&quot; address inside a container will be
1418 # accessible from the network.
1419 # Cannot be updated.
1420 # +optional
1421 { # ContainerPort represents a network port in a single container.
1422 &quot;hostIP&quot;: &quot;A String&quot;, # What host IP to bind the external port to.
1423 # +optional
1424 &quot;name&quot;: &quot;A String&quot;, # If specified, this must be an IANA_SVC_NAME and unique within the pod. Each
1425 # named port in a pod must have a unique name. Name for the port that can be
1426 # referred to by services.
1427 # +optional
1428 &quot;hostPort&quot;: 42, # Number of port to expose on the host.
1429 # If specified, this must be a valid port number, 0 &lt; x &lt; 65536.
1430 # If HostNetwork is specified, this must match ContainerPort.
1431 # Most containers do not need this.
1432 # +optional
1433 &quot;containerPort&quot;: 42, # Number of port to expose on the pod&#x27;s IP address.
1434 # This must be a valid port number, 0 &lt; x &lt; 65536.
1435 &quot;protocol&quot;: &quot;A String&quot;, # Protocol for port. Must be UDP or TCP.
1436 # Defaults to &quot;TCP&quot;.
1437 # +optional
1438 },
1439 ],
1440 &quot;image&quot;: &quot;A String&quot;, # Docker image name.
1441 # More info: https://kubernetes.io/docs/concepts/containers/images
1442 &quot;envFrom&quot;: [ # List of sources to populate environment variables in the container.
1443 # The keys defined within a source must be a C_IDENTIFIER. All invalid keys
1444 # will be reported as an event when the container is starting. When a key
1445 # exists in multiple sources, the value associated with the last source will
1446 # take precedence. Values defined by an Env with a duplicate key will take
1447 # precedence. Cannot be updated. +optional
1448 { # EnvFromSource represents the source of a set of ConfigMaps
1449 &quot;prefix&quot;: &quot;A String&quot;, # An optional identifier to prepend to each key in the ConfigMap. Must be a
1450 # C_IDENTIFIER. +optional
1451 &quot;configMapRef&quot;: { # ConfigMapEnvSource selects a ConfigMap to populate the environment # The ConfigMap to select from
1452 # +optional
1453 # variables with.
1454 #
1455 # The contents of the target ConfigMap&#x27;s Data field will represent the
1456 # key-value pairs as environment variables.
1457 &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
1458 # directly into the message. Use the &quot;name&quot; field instead.
1459 # referenced object inside the same namespace.
1460 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
1461 # More info:
1462 # https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
1463 },
1464 &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported
1465 #
1466 # Cloud Run for Anthos: supported
1467 #
1468 # Specify whether the ConfigMap must be defined
1469 # +optional
1470 &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
1471 #
1472 # Cloud Run for Anthos: supported
1473 #
1474 # The ConfigMap to select from.
1475 },
1476 &quot;secretRef&quot;: { # SecretEnvSource selects a Secret to populate the environment # The Secret to select from
1477 # +optional
1478 # variables with.
1479 #
1480 # The contents of the target Secret&#x27;s Data field will represent the
1481 # key-value pairs as environment variables.
1482 &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
1483 #
1484 # Cloud Run for Anthos: supported
1485 #
1486 # The Secret to select from.
1487 &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
1488 # directly into the message. Use the &quot;name&quot; field instead.
1489 # referenced object inside the same namespace.
1490 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
1491 # More info:
1492 # https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
1493 },
1494 &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported
1495 #
1496 # Cloud Run for Anthos: supported
1497 #
1498 # Specify whether the Secret must be defined
1499 # +optional
1500 },
1501 },
1502 ],
1503 &quot;name&quot;: &quot;A String&quot;, # Name of the container specified as a DNS_LABEL.
1504 # Each container must have a unique name (DNS_LABEL).
1505 # Cannot be updated.
1506 &quot;command&quot;: [ # Entrypoint array. Not executed within a shell.
1507 # The docker image&#x27;s ENTRYPOINT is used if this is not provided.
1508 # Variable references $(VAR_NAME) are expanded using the container&#x27;s
1509 # environment. If a variable cannot be resolved, the reference in the input
1510 # string will be unchanged. The $(VAR_NAME) syntax can be escaped with a
1511 # double $$, ie: $$(VAR_NAME). Escaped references will never be expanded,
1512 # regardless of whether the variable exists or not.
1513 # Cannot be updated.
1514 # More info:
1515 # https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
1516 # +optional
1517 &quot;A String&quot;,
1518 ],
Bu Sun Kim65020912020-05-20 12:08:20 -07001519 },
Bu Sun Kim65020912020-05-20 12:08:20 -07001520 &quot;volumes&quot;: [
1521 { # Volume represents a named volume in a container.
1522 &quot;configMap&quot;: { # Adapts a ConfigMap into a volume.
1523 # The contents of the target ConfigMap&#x27;s Data field will be presented in a
1524 # volume as files using the keys in the Data field as the file names, unless
1525 # the items element is populated with specific mappings of keys to paths.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001526 &quot;optional&quot;: True or False, # Specify whether the Secret or its keys must be defined.
Bu Sun Kim65020912020-05-20 12:08:20 -07001527 &quot;name&quot;: &quot;A String&quot;, # Name of the config.
1528 &quot;defaultMode&quot;: 42, # Mode bits to use on created files by default. Must be a value between 0 and
1529 # 0777. Defaults to 0644. Directories within the path are not affected by
1530 # this setting. This might be in conflict with other options that affect the
1531 # file mode, like fsGroup, and the result can be other mode bits set.
1532 &quot;items&quot;: [ # If unspecified, each key-value pair in the Data field of the referenced
1533 # Secret will be projected into the volume as a file whose name is the
1534 # key and content is the value. If specified, the listed keys will be
1535 # projected into the specified paths, and unlisted keys will not be
1536 # present. If a key is specified which is not present in the Secret,
1537 # the volume setup will error unless it is marked optional.
1538 { # Maps a string key to a path within a volume.
Bu Sun Kim65020912020-05-20 12:08:20 -07001539 &quot;path&quot;: &quot;A String&quot;, # The relative path of the file to map the key to.
1540 # May not be an absolute path.
1541 # May not contain the path element &#x27;..&#x27;.
1542 # May not start with the string &#x27;..&#x27;.
1543 &quot;mode&quot;: 42, # Mode bits to use on this file, must be a value between 0 and 0777. If not
1544 # specified, the volume defaultMode will be used. This might be in conflict
1545 # with other options that affect the file mode, like fsGroup, and the result
1546 # can be other mode bits set. +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001547 &quot;key&quot;: &quot;A String&quot;, # The key to project.
Bu Sun Kim65020912020-05-20 12:08:20 -07001548 },
1549 ],
Bu Sun Kim65020912020-05-20 12:08:20 -07001550 },
1551 &quot;name&quot;: &quot;A String&quot;, # Volume&#x27;s name.
1552 &quot;secret&quot;: { # The contents of the target Secret&#x27;s Data field will be presented in a volume
1553 # as files using the keys in the Data field as the file names.
Bu Sun Kim65020912020-05-20 12:08:20 -07001554 &quot;defaultMode&quot;: 42, # Mode bits to use on created files by default. Must be a value between 0 and
1555 # 0777. Defaults to 0644. Directories within the path are not affected by
1556 # this setting. This might be in conflict with other options that affect the
1557 # file mode, like fsGroup, and the result can be other mode bits set.
1558 &quot;secretName&quot;: &quot;A String&quot;, # Name of the secret in the container&#x27;s namespace to use.
1559 &quot;items&quot;: [ # If unspecified, each key-value pair in the Data field of the referenced
1560 # Secret will be projected into the volume as a file whose name is the
1561 # key and content is the value. If specified, the listed keys will be
1562 # projected into the specified paths, and unlisted keys will not be
1563 # present. If a key is specified which is not present in the Secret,
1564 # the volume setup will error unless it is marked optional.
1565 { # Maps a string key to a path within a volume.
Bu Sun Kim65020912020-05-20 12:08:20 -07001566 &quot;path&quot;: &quot;A String&quot;, # The relative path of the file to map the key to.
1567 # May not be an absolute path.
1568 # May not contain the path element &#x27;..&#x27;.
1569 # May not start with the string &#x27;..&#x27;.
1570 &quot;mode&quot;: 42, # Mode bits to use on this file, must be a value between 0 and 0777. If not
1571 # specified, the volume defaultMode will be used. This might be in conflict
1572 # with other options that affect the file mode, like fsGroup, and the result
1573 # can be other mode bits set. +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001574 &quot;key&quot;: &quot;A String&quot;, # The key to project.
Bu Sun Kim65020912020-05-20 12:08:20 -07001575 },
1576 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001577 &quot;optional&quot;: True or False, # Specify whether the Secret or its keys must be defined.
Bu Sun Kim65020912020-05-20 12:08:20 -07001578 },
1579 },
1580 ],
1581 },
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001582 &quot;metadata&quot;: { # ObjectMeta is metadata that all persisted resources must have, which includes # Optional metadata for this Revision, including labels and annotations. Name
1583 # will be generated by the Configuration.
1584 # To set minimum instances for this revision, use the
1585 # &quot;autoscaling.knative.dev/minScale&quot; annotation key. (Cloud Run on GKE only).
1586 # To set maximum instances for this revision, use the
1587 # &quot;autoscaling.knative.dev/maxScale&quot; annotation key.
1588 # To set Cloud SQL connections for the revision, use the
1589 # &quot;run.googleapis.com/cloudsql-instances&quot; annotation key. Values should be
1590 # comma separated.
1591 # all objects users must create.
1592 &quot;generateName&quot;: &quot;A String&quot;, # Not currently supported by Cloud Run.
1593 #
1594 # GenerateName is an optional prefix, used by the server, to generate a
1595 # unique name ONLY IF the Name field has not been provided. If this field is
1596 # used, the name returned to the client will be different than the name
1597 # passed. This value will also be combined with a unique suffix. The provided
1598 # value has the same validation rules as the Name field, and may be truncated
1599 # by the length of the suffix required to make the value unique on the
1600 # server.
1601 #
1602 # If this field is specified and the generated name exists, the server will
1603 # NOT return a 409 - instead, it will either return 201 Created or 500 with
1604 # Reason ServerTimeout indicating a unique name could not be found in the
1605 # time allotted, and the client should retry (optionally after the time
1606 # indicated in the Retry-After header).
1607 #
1608 # Applied only if Name is not specified.
1609 # More info:
1610 # https://git.k8s.io/community/contributors/devel/api-conventions.md#idempotency
1611 # +optional
1612 # string generateName = 2;
1613 &quot;name&quot;: &quot;A String&quot;, # Name must be unique within a namespace, within a Cloud Run region.
1614 # Is required when creating
1615 # resources, although some resources may allow a client to request the
1616 # generation of an appropriate name automatically. Name is primarily intended
1617 # for creation idempotence and configuration definition. Cannot be updated.
1618 # More info: http://kubernetes.io/docs/user-guide/identifiers#names
1619 # +optional
1620 &quot;deletionGracePeriodSeconds&quot;: 42, # Not currently supported by Cloud Run.
1621 #
1622 # Number of seconds allowed for this object to gracefully terminate before
1623 # it will be removed from the system. Only set when deletionTimestamp is also
1624 # set. May only be shortened. Read-only. +optional
1625 &quot;clusterName&quot;: &quot;A String&quot;, # Not currently supported by Cloud Run.
1626 #
1627 # The name of the cluster which the object belongs to.
1628 # This is used to distinguish resources with same name and namespace in
1629 # different clusters. This field is not set anywhere right now and apiserver
1630 # is going to ignore it if set in create or update request. +optional
1631 &quot;finalizers&quot;: [ # Not currently supported by Cloud Run.
1632 #
1633 # Must be empty before the object is deleted from the registry. Each entry
1634 # is an identifier for the responsible component that will remove the entry
1635 # from the list. If the deletionTimestamp of the object is non-nil, entries
1636 # in this list can only be removed.
1637 # +optional
1638 # +patchStrategy=merge
1639 &quot;A String&quot;,
1640 ],
1641 &quot;deletionTimestamp&quot;: &quot;A String&quot;, # DeletionTimestamp is RFC 3339 date and time at which this resource will be
1642 # deleted. This field is set by the server when a graceful deletion is
1643 # requested by the user, and is not directly settable by a client. The
1644 # resource is expected to be deleted (no longer visible from resource lists,
1645 # and not reachable by name) after the time in this field, once the
1646 # finalizers list is empty. As long as the finalizers list contains items,
1647 # deletion is blocked. Once the deletionTimestamp is set, this value may not
1648 # be unset or be set further into the future, although it may be shortened or
1649 # the resource may be deleted prior to this time. For example, a user may
1650 # request that a pod is deleted in 30 seconds. The Kubelet will react by
1651 # sending a graceful termination signal to the containers in the pod. After
1652 # that 30 seconds, the Kubelet will send a hard termination signal (SIGKILL)
1653 # to the container and after cleanup, remove the pod from the API. In the
1654 # presence of network partitions, this object may still exist after this
1655 # timestamp, until an administrator or automated process can determine the
1656 # resource is fully terminated.
1657 # If not set, graceful deletion of the object has not been requested.
1658 #
1659 # Populated by the system when a graceful deletion is requested.
1660 # Read-only.
1661 # More info:
1662 # https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
1663 # +optional
1664 &quot;ownerReferences&quot;: [ # List of objects that own this object. If ALL objects in the list have
1665 # been deleted, this object will be garbage collected.
1666 # +optional
1667 { # OwnerReference contains enough information to let you identify an owning
1668 # object. Currently, an owning object must be in the same namespace, so there
1669 # is no namespace field.
1670 &quot;controller&quot;: True or False, # If true, this reference points to the managing controller.
1671 # +optional
1672 &quot;kind&quot;: &quot;A String&quot;, # Kind of the referent.
1673 # More info:
1674 # https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds
1675 &quot;blockOwnerDeletion&quot;: True or False, # If true, AND if the owner has the &quot;foregroundDeletion&quot; finalizer, then
1676 # the owner cannot be deleted from the key-value store until this
1677 # reference is removed.
1678 # Defaults to false.
1679 # To set this field, a user needs &quot;delete&quot; permission of the owner,
1680 # otherwise 422 (Unprocessable Entity) will be returned.
1681 # +optional
1682 &quot;apiVersion&quot;: &quot;A String&quot;, # API version of the referent.
1683 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
1684 # More info: http://kubernetes.io/docs/user-guide/identifiers#names
1685 &quot;uid&quot;: &quot;A String&quot;, # UID of the referent.
1686 # More info: http://kubernetes.io/docs/user-guide/identifiers#uids
1687 },
1688 ],
1689 &quot;creationTimestamp&quot;: &quot;A String&quot;, # CreationTimestamp is a timestamp representing the server time when this
1690 # object was created. It is not guaranteed to be set in happens-before order
1691 # across separate operations. Clients may not set this value. It is
1692 # represented in RFC3339 form and is in UTC.
1693 #
1694 # Populated by the system.
1695 # Read-only.
1696 # Null for lists.
1697 # More info:
1698 # https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
1699 # +optional
1700 &quot;labels&quot;: { # Map of string keys and values that can be used to organize and categorize
1701 # (scope and select) objects. May match selectors of replication controllers
1702 # and routes.
1703 # More info: http://kubernetes.io/docs/user-guide/labels
1704 # +optional
1705 &quot;a_key&quot;: &quot;A String&quot;,
1706 },
1707 &quot;generation&quot;: 42, # A sequence number representing a specific generation of the desired state.
1708 # Populated by the system. Read-only.
1709 # +optional
1710 &quot;resourceVersion&quot;: &quot;A String&quot;, # An opaque value that represents the internal version of this object that
1711 # can be used by clients to determine when objects have changed. May be used
1712 # for optimistic concurrency, change detection, and the watch operation on a
1713 # resource or set of resources. Clients must treat these values as opaque and
1714 # passed unmodified back to the server. They may only be valid for a
1715 # particular resource or set of resources.
1716 #
1717 # Populated by the system.
1718 # Read-only.
1719 # Value must be treated as opaque by clients and .
1720 # More info:
1721 # https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency
1722 # +optional
1723 &quot;selfLink&quot;: &quot;A String&quot;, # SelfLink is a URL representing this object.
1724 # Populated by the system.
1725 # Read-only.
1726 # +optional
1727 # string selfLink = 4;
1728 &quot;uid&quot;: &quot;A String&quot;, # UID is the unique in time and space value for this object. It is typically
1729 # generated by the server on successful creation of a resource and is not
1730 # allowed to change on PUT operations.
1731 #
1732 # Populated by the system.
1733 # Read-only.
1734 # More info: http://kubernetes.io/docs/user-guide/identifiers#uids
1735 # +optional
1736 &quot;namespace&quot;: &quot;A String&quot;, # Namespace defines the space within each name must be unique, within a
1737 # Cloud Run region. In Cloud Run the namespace must be equal to either the
1738 # project ID or project number.
1739 &quot;annotations&quot;: { # Annotations is an unstructured key value map stored with a resource that
1740 # may be set by external tools to store and retrieve arbitrary metadata. They
1741 # are not queryable and should be preserved when modifying objects. More
1742 # info: http://kubernetes.io/docs/user-guide/annotations +optional
1743 &quot;a_key&quot;: &quot;A String&quot;,
1744 },
1745 },
Bu Sun Kim65020912020-05-20 12:08:20 -07001746 },
1747 &quot;revisionTemplate&quot;: { # RevisionTemplateSpec describes the data a revision should have when created # RevisionTemplate holds the latest specification for the Revision to
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001748 # be stamped out. The template references the container image, and may also
1749 # include labels and annotations that should be attached to the Revision.
1750 # To correlate a Revision, and/or to force a Revision to be created when the
Bu Sun Kim65020912020-05-20 12:08:20 -07001751 # spec doesn&#x27;t otherwise change, a nonce label may be provided in the
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001752 # template metadata. For more details, see:
1753 # https://github.com/knative/serving/blob/master/docs/client-conventions.md#associate-modifications-with-revisions
1754 #
1755 # Cloud Run does not currently support referencing a build that is
1756 # responsible for materializing the container image from source.
1757 # from a template. Based on:
1758 # https://github.com/kubernetes/api/blob/e771f807/core/v1/types.go#L3179-L3190
Bu Sun Kim65020912020-05-20 12:08:20 -07001759 &quot;spec&quot;: { # RevisionSpec holds the desired state of the Revision (from the client). # RevisionSpec holds the desired state of the Revision (from the client).
1760 &quot;containerConcurrency&quot;: 42, # (Optional)
Dan O'Mearadd494642020-05-01 07:42:23 -07001761 #
1762 # ContainerConcurrency specifies the maximum allowed in-flight (concurrent)
1763 # requests per container instance of the Revision.
1764 #
1765 # Cloud Run fully managed: supported, defaults to 80
1766 #
1767 # Cloud Run on GKE: supported, defaults to 0, which means concurrency
1768 # to the application is not limited, and the system decides the
1769 # target concurrency for the autoscaler.
Bu Sun Kim65020912020-05-20 12:08:20 -07001770 &quot;containers&quot;: [ # Containers holds the single container that defines the unit of execution
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001771 # for this Revision. In the context of a Revision, we disallow a number of
1772 # fields on this Container, including: name and lifecycle.
Dan O'Mearadd494642020-05-01 07:42:23 -07001773 # In Cloud Run, only a single container may be provided.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001774 { # A single application container.
1775 # This specifies both the container to run, the command to run in the container
1776 # and the arguments to supply to it.
1777 # Note that additional arguments may be supplied by the system to the container
1778 # at runtime.
Bu Sun Kim65020912020-05-20 12:08:20 -07001779 &quot;terminationMessagePolicy&quot;: &quot;A String&quot;, # Indicate how the termination message should be populated. File will use the
1780 # contents of terminationMessagePath to populate the container status message
1781 # on both success and failure. FallbackToLogsOnError will use the last chunk
1782 # of container log output if the termination message file is empty and the
1783 # container exited with an error. The log output is limited to 2048 bytes or
1784 # 80 lines, whichever is smaller. Defaults to File. Cannot be updated.
1785 # +optional
1786 &quot;securityContext&quot;: { # SecurityContext holds security configuration that will be applied to a # Security options the pod should run with.
1787 # More info: https://kubernetes.io/docs/concepts/policy/security-context/
1788 # More info:
1789 # https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
1790 # +optional
1791 # container. Some fields are present in both SecurityContext and
1792 # PodSecurityContext. When both are set, the values in SecurityContext take
1793 # precedence.
1794 &quot;capabilities&quot;: { # Adds and removes POSIX capabilities from running containers. # The capabilities to add/drop when running containers.
1795 # Defaults to the default set of capabilities granted by the container
1796 # runtime. +optional
1797 &quot;add&quot;: [ # Added capabilities
1798 # +optional
1799 &quot;A String&quot;,
1800 ],
1801 &quot;drop&quot;: [ # Removed capabilities
1802 # +optional
1803 &quot;A String&quot;,
1804 ],
1805 },
1806 &quot;runAsNonRoot&quot;: True or False, # Indicates that the container must run as a non-root user.
1807 # If true, the Kubelet will validate the image at runtime to ensure that it
1808 # does not run as UID 0 (root) and fail to start the container if it does.
1809 # If unset or false, no such validation will be performed.
1810 # May also be set in PodSecurityContext. If set in both SecurityContext and
1811 # PodSecurityContext, the value specified in SecurityContext takes
1812 # precedence. +optional
1813 &quot;runAsGroup&quot;: 42, # The GID to run the entrypoint of the container process.
1814 # Uses runtime default if unset.
1815 # May also be set in PodSecurityContext. If set in both SecurityContext and
1816 # PodSecurityContext, the value specified in SecurityContext takes
1817 # precedence. +optional
1818 &quot;privileged&quot;: True or False, # Run container in privileged mode.
1819 # Processes in privileged containers are essentially equivalent to root on
1820 # the host. Defaults to false. +optional
1821 &quot;allowPrivilegeEscalation&quot;: True or False, # AllowPrivilegeEscalation controls whether a process can gain more
1822 # privileges than its parent process. This bool directly controls if
1823 # the no_new_privs flag will be set on the container process.
1824 # AllowPrivilegeEscalation is true always when the container is:
1825 # 1) run as Privileged
1826 # 2) has CAP_SYS_ADMIN
1827 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001828 &quot;readOnlyRootFilesystem&quot;: True or False, # Whether this container has a read-only root filesystem.
1829 # Default is false.
1830 # +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07001831 &quot;seLinuxOptions&quot;: { # SELinuxOptions are the labels to be applied to the container # The SELinux context to be applied to the container.
1832 # If unspecified, the container runtime will allocate a random SELinux
1833 # context for each container. May also be set in PodSecurityContext. If set
1834 # in both SecurityContext and PodSecurityContext, the value specified in
1835 # SecurityContext takes precedence. +optional
1836 &quot;role&quot;: &quot;A String&quot;, # Role is a SELinux role label that applies to the container.
1837 # +optional
1838 &quot;level&quot;: &quot;A String&quot;, # Level is SELinux level label that applies to the container.
1839 # +optional
1840 &quot;user&quot;: &quot;A String&quot;, # User is a SELinux user label that applies to the container.
1841 # +optional
1842 &quot;type&quot;: &quot;A String&quot;, # Type is a SELinux type label that applies to the container.
1843 # +optional
1844 },
Bu Sun Kim65020912020-05-20 12:08:20 -07001845 &quot;runAsUser&quot;: 42, # The UID to run the entrypoint of the container process.
1846 # Defaults to user specified in image metadata if unspecified.
1847 # May also be set in PodSecurityContext. If set in both SecurityContext and
1848 # PodSecurityContext, the value specified in SecurityContext takes
1849 # precedence. +optional
1850 },
1851 &quot;livenessProbe&quot;: { # Probe describes a health check to be performed against a container to # Periodic probe of container liveness.
1852 # Container will be restarted if the probe fails.
1853 # Cannot be updated.
1854 # More info:
1855 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
1856 # +optional
1857 # determine whether it is alive or ready to receive traffic.
Bu Sun Kim65020912020-05-20 12:08:20 -07001858 &quot;initialDelaySeconds&quot;: 42, # Number of seconds after the container has started before liveness probes
1859 # are initiated. More info:
1860 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
1861 # +optional
1862 &quot;timeoutSeconds&quot;: 42, # Number of seconds after which the probe times out.
1863 # Defaults to 1 second. Minimum value is 1.
1864 # More info:
1865 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
1866 # +optional
1867 &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 -07001868 &quot;tcpSocket&quot;: { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
1869 # TCP hooks not yet supported
1870 &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.
1871 # Number must be in the range 1 to 65535.
1872 # Name must be an IANA_SVC_NAME.
1873 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
1874 # inner type. This allows you to have, for example, a JSON field that can
1875 # accept a name or number.
1876 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
1877 &quot;type&quot;: 42, # The type of the value.
1878 &quot;intVal&quot;: 42, # The int value.
1879 },
1880 &quot;host&quot;: &quot;A String&quot;, # Optional: Host name to connect to, defaults to the pod IP.
1881 # +optional
1882 },
Bu Sun Kim65020912020-05-20 12:08:20 -07001883 &quot;exec&quot;: { # ExecAction describes a &quot;run in container&quot; action. # One and only one of the following should be specified.
1884 # Exec specifies the action to take.
1885 # +optional
1886 &quot;command&quot;: &quot;A String&quot;, # Command is the command line to execute inside the container, the working
1887 # directory for the command is root (&#x27;/&#x27;) in the container&#x27;s filesystem. The
1888 # command is simply exec&#x27;d, it is not run inside a shell, so traditional
1889 # shell instructions (&#x27;|&#x27;, etc) won&#x27;t work. To use a shell, you need to
1890 # explicitly call out to that shell. Exit status of 0 is treated as
1891 # live/healthy and non-zero is unhealthy. +optional
1892 },
1893 &quot;httpGet&quot;: { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
1894 # +optional
1895 &quot;httpHeaders&quot;: [ # Custom headers to set in the request. HTTP allows repeated headers.
1896 # +optional
1897 { # HTTPHeader describes a custom header to be used in HTTP probes
Bu Sun Kim65020912020-05-20 12:08:20 -07001898 &quot;name&quot;: &quot;A String&quot;, # The header field name
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001899 &quot;value&quot;: &quot;A String&quot;, # The header field value
Bu Sun Kim65020912020-05-20 12:08:20 -07001900 },
1901 ],
1902 &quot;path&quot;: &quot;A String&quot;, # Path to access on the HTTP server.
1903 # +optional
1904 &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.
1905 # Number must be in the range 1 to 65535.
1906 # Name must be an IANA_SVC_NAME.
1907 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
1908 # inner type. This allows you to have, for example, a JSON field that can
1909 # accept a name or number.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001910 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
Bu Sun Kim65020912020-05-20 12:08:20 -07001911 &quot;type&quot;: 42, # The type of the value.
1912 &quot;intVal&quot;: 42, # The int value.
Bu Sun Kim65020912020-05-20 12:08:20 -07001913 },
1914 &quot;host&quot;: &quot;A String&quot;, # Host name to connect to, defaults to the pod IP. You probably want to set
1915 # &quot;Host&quot; in httpHeaders instead.
1916 # +optional
1917 &quot;scheme&quot;: &quot;A String&quot;, # Scheme to use for connecting to the host.
1918 # Defaults to HTTP.
1919 # +optional
1920 },
Bu Sun Kim65020912020-05-20 12:08:20 -07001921 },
1922 &quot;successThreshold&quot;: 42, # Minimum consecutive successes for the probe to be considered successful
1923 # after having failed. Defaults to 1. Must be 1 for liveness. Minimum value
1924 # is 1. +optional
1925 &quot;periodSeconds&quot;: 42, # How often (in seconds) to perform the probe.
1926 # Default to 10 seconds. Minimum value is 1.
1927 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001928 &quot;failureThreshold&quot;: 42, # Minimum consecutive failures for the probe to be considered failed after
1929 # having succeeded. Defaults to 3. Minimum value is 1. +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07001930 },
1931 &quot;env&quot;: [ # List of environment variables to set in the container.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001932 # Cannot be updated.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001933 # +optional
Dan O'Mearadd494642020-05-01 07:42:23 -07001934 { # EnvVar represents an environment variable present in a Container.
Bu Sun Kim65020912020-05-20 12:08:20 -07001935 &quot;name&quot;: &quot;A String&quot;, # Name of the environment variable. Must be a C_IDENTIFIER.
1936 &quot;valueFrom&quot;: { # Cloud Run fully managed: not supported # Cloud Run fully managed: not supported
Dan O'Mearadd494642020-05-01 07:42:23 -07001937 #
1938 # Cloud Run on GKE: supported
1939 #
Bu Sun Kim65020912020-05-20 12:08:20 -07001940 # Source for the environment variable&#x27;s value. Cannot be used if value is not
Dan O'Mearadd494642020-05-01 07:42:23 -07001941 # empty. +optional
1942 #
1943 # Cloud Run on GKE: supported
1944 #
1945 # EnvVarSource represents a source for the value of an EnvVar.
Bu Sun Kim65020912020-05-20 12:08:20 -07001946 &quot;configMapKeyRef&quot;: { # Cloud Run fully managed: not supported # Cloud Run fully managed: not supported
Dan O'Mearadd494642020-05-01 07:42:23 -07001947 #
1948 # Cloud Run on GKE: supported
1949 #
1950 # Selects a key of a ConfigMap.
1951 # +optional
1952 #
1953 # Cloud Run on GKE: supported
1954 #
1955 # Selects a key from a ConfigMap.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001956 &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
1957 # directly into the message. Use the &quot;name&quot; field instead.
1958 # referenced object inside the same namespace.
1959 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
1960 # More info:
1961 # https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
1962 },
Bu Sun Kim65020912020-05-20 12:08:20 -07001963 &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported
Dan O'Mearadd494642020-05-01 07:42:23 -07001964 #
1965 # Cloud Run on GKE: supported
1966 #
1967 # Specify whether the ConfigMap or its key must be defined
1968 # +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07001969 &quot;key&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
Dan O'Mearadd494642020-05-01 07:42:23 -07001970 #
1971 # Cloud Run on GKE: supported
1972 #
1973 # The key to select.
Bu Sun Kim65020912020-05-20 12:08:20 -07001974 &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
1975 #
1976 # Cloud Run on GKE: supported
1977 #
1978 # The ConfigMap to select from.
Bu Sun Kim65020912020-05-20 12:08:20 -07001979 },
1980 &quot;secretKeyRef&quot;: { # Cloud Run fully managed: not supported # Cloud Run fully managed: not supported
1981 #
1982 # Cloud Run on GKE: supported
1983 #
1984 # Selects a key of a secret in the pod&#x27;s namespace
1985 # +optional
1986 #
1987 # Cloud Run on GKE: supported
1988 #
1989 # SecretKeySelector selects a key of a Secret.
Bu Sun Kim65020912020-05-20 12:08:20 -07001990 &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported
1991 #
1992 # Cloud Run on GKE: supported
1993 #
1994 # Specify whether the Secret or its key must be defined
1995 # +optional
1996 &quot;key&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
1997 #
1998 # Cloud Run on GKE: supported
1999 #
2000 # The key of the secret to select from. Must be a valid secret key.
2001 &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
2002 #
2003 # Cloud Run on GKE: supported
2004 #
2005 # The name of the secret in the pod&#x27;s namespace to select from.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002006 &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
2007 # directly into the message. Use the &quot;name&quot; field instead.
2008 # referenced object inside the same namespace.
2009 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
2010 # More info:
2011 # https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
2012 },
Dan O'Mearadd494642020-05-01 07:42:23 -07002013 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002014 },
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002015 &quot;value&quot;: &quot;A String&quot;, # Variable references $(VAR_NAME) are expanded
2016 # using the previous defined environment variables in the container and
2017 # any route environment variables. If a variable cannot be resolved,
2018 # the reference in the input string will be unchanged. The $(VAR_NAME)
2019 # syntax can be escaped with a double $$, ie: $$(VAR_NAME). Escaped
2020 # references will never be expanded, regardless of whether the variable
2021 # exists or not.
2022 # Defaults to &quot;&quot;.
2023 # +optional
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002024 },
Dan O'Mearadd494642020-05-01 07:42:23 -07002025 ],
Bu Sun Kim65020912020-05-20 12:08:20 -07002026 &quot;resources&quot;: { # ResourceRequirements describes the compute resource requirements. # Compute Resources required by this container.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002027 # Cannot be updated.
2028 # More info:
2029 # https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
2030 # +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07002031 &quot;requestsInMap&quot;: { # Requests describes the minimum amount of compute resources required.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002032 # If Requests is omitted for a container, it defaults to Limits if that is
2033 # explicitly specified, otherwise to an implementation-defined value.
2034 # This is a temporary field created to migrate away from the
Dan O'Mearadd494642020-05-01 07:42:23 -07002035 # map&lt;string, Quantity&gt; requests field. This is done to become compliant
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002036 # with k8s style API.
2037 # This field is deprecated in favor of requests field.
Bu Sun Kim65020912020-05-20 12:08:20 -07002038 &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 -07002039 # 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 -07002040 &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 -07002041 },
2042 },
Bu Sun Kim65020912020-05-20 12:08:20 -07002043 &quot;requests&quot;: { # Requests describes the minimum amount of compute resources required.
Dan O'Mearadd494642020-05-01 07:42:23 -07002044 # If Requests is omitted for a container, it defaults to Limits if that is
2045 # explicitly specified, otherwise to an implementation-defined value.
Bu Sun Kim65020912020-05-20 12:08:20 -07002046 # The values of the map is string form of the &#x27;quantity&#x27; k8s type:
Dan O'Mearadd494642020-05-01 07:42:23 -07002047 # 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 -07002048 &quot;a_key&quot;: &quot;A String&quot;,
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002049 },
Bu Sun Kim65020912020-05-20 12:08:20 -07002050 &quot;limits&quot;: { # Limits describes the maximum amount of compute resources allowed.
2051 # The values of the map is string form of the &#x27;quantity&#x27; k8s type:
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002052 # 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 -07002053 &quot;a_key&quot;: &quot;A String&quot;,
2054 },
2055 &quot;limitsInMap&quot;: { # Limits describes the maximum amount of compute resources allowed.
2056 # This is a temporary field created to migrate away from the
2057 # map&lt;string, Quantity&gt; limits field. This is done to become compliant
2058 # with k8s style API.
2059 # This field is deprecated in favor of limits field.
2060 &quot;a_key&quot;: { # The view model of a single quantity, e.g. &quot;800 MiB&quot;. Corresponds to
2061 # https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/generated.proto
2062 &quot;string&quot;: &quot;A String&quot;, # Stringified version of the quantity, e.g., &quot;800 MiB&quot;.
2063 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002064 },
2065 },
Bu Sun Kim65020912020-05-20 12:08:20 -07002066 &quot;readinessProbe&quot;: { # Probe describes a health check to be performed against a container to # Periodic probe of container service readiness.
2067 # Container will be removed from service endpoints if the probe fails.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002068 # Cannot be updated.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002069 # More info:
Bu Sun Kim65020912020-05-20 12:08:20 -07002070 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002071 # +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07002072 # determine whether it is alive or ready to receive traffic.
Bu Sun Kim65020912020-05-20 12:08:20 -07002073 &quot;initialDelaySeconds&quot;: 42, # Number of seconds after the container has started before liveness probes
2074 # are initiated. More info:
2075 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
2076 # +optional
2077 &quot;timeoutSeconds&quot;: 42, # Number of seconds after which the probe times out.
2078 # Defaults to 1 second. Minimum value is 1.
2079 # More info:
2080 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
2081 # +optional
2082 &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 -07002083 &quot;tcpSocket&quot;: { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
2084 # TCP hooks not yet supported
2085 &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.
2086 # Number must be in the range 1 to 65535.
2087 # Name must be an IANA_SVC_NAME.
2088 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
2089 # inner type. This allows you to have, for example, a JSON field that can
2090 # accept a name or number.
2091 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
2092 &quot;type&quot;: 42, # The type of the value.
2093 &quot;intVal&quot;: 42, # The int value.
2094 },
2095 &quot;host&quot;: &quot;A String&quot;, # Optional: Host name to connect to, defaults to the pod IP.
2096 # +optional
2097 },
Bu Sun Kim65020912020-05-20 12:08:20 -07002098 &quot;exec&quot;: { # ExecAction describes a &quot;run in container&quot; action. # One and only one of the following should be specified.
2099 # Exec specifies the action to take.
2100 # +optional
2101 &quot;command&quot;: &quot;A String&quot;, # Command is the command line to execute inside the container, the working
2102 # directory for the command is root (&#x27;/&#x27;) in the container&#x27;s filesystem. The
2103 # command is simply exec&#x27;d, it is not run inside a shell, so traditional
2104 # shell instructions (&#x27;|&#x27;, etc) won&#x27;t work. To use a shell, you need to
2105 # explicitly call out to that shell. Exit status of 0 is treated as
2106 # live/healthy and non-zero is unhealthy. +optional
2107 },
2108 &quot;httpGet&quot;: { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
2109 # +optional
2110 &quot;httpHeaders&quot;: [ # Custom headers to set in the request. HTTP allows repeated headers.
2111 # +optional
2112 { # HTTPHeader describes a custom header to be used in HTTP probes
Bu Sun Kim65020912020-05-20 12:08:20 -07002113 &quot;name&quot;: &quot;A String&quot;, # The header field name
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002114 &quot;value&quot;: &quot;A String&quot;, # The header field value
Bu Sun Kim65020912020-05-20 12:08:20 -07002115 },
2116 ],
2117 &quot;path&quot;: &quot;A String&quot;, # Path to access on the HTTP server.
2118 # +optional
2119 &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.
2120 # Number must be in the range 1 to 65535.
2121 # Name must be an IANA_SVC_NAME.
2122 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
2123 # inner type. This allows you to have, for example, a JSON field that can
2124 # accept a name or number.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002125 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
Bu Sun Kim65020912020-05-20 12:08:20 -07002126 &quot;type&quot;: 42, # The type of the value.
2127 &quot;intVal&quot;: 42, # The int value.
Bu Sun Kim65020912020-05-20 12:08:20 -07002128 },
2129 &quot;host&quot;: &quot;A String&quot;, # Host name to connect to, defaults to the pod IP. You probably want to set
2130 # &quot;Host&quot; in httpHeaders instead.
2131 # +optional
2132 &quot;scheme&quot;: &quot;A String&quot;, # Scheme to use for connecting to the host.
2133 # Defaults to HTTP.
2134 # +optional
2135 },
Bu Sun Kim65020912020-05-20 12:08:20 -07002136 },
2137 &quot;successThreshold&quot;: 42, # Minimum consecutive successes for the probe to be considered successful
2138 # after having failed. Defaults to 1. Must be 1 for liveness. Minimum value
2139 # is 1. +optional
2140 &quot;periodSeconds&quot;: 42, # How often (in seconds) to perform the probe.
2141 # Default to 10 seconds. Minimum value is 1.
2142 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002143 &quot;failureThreshold&quot;: 42, # Minimum consecutive failures for the probe to be considered failed after
2144 # having succeeded. Defaults to 3. Minimum value is 1. +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07002145 },
2146 &quot;imagePullPolicy&quot;: &quot;A String&quot;, # Image pull policy.
2147 # One of Always, Never, IfNotPresent.
2148 # Defaults to Always if :latest tag is specified, or IfNotPresent otherwise.
2149 # Cannot be updated.
2150 # More info:
2151 # https://kubernetes.io/docs/concepts/containers/images#updating-images
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002152 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002153 &quot;lifecycle&quot;: { # Lifecycle describes actions that the management system should take in # Actions that the management system should take in response to container
2154 # lifecycle events. Cannot be updated. +optional
2155 # response to container lifecycle events. For the PostStart and PreStop
2156 # lifecycle handlers, management of the container blocks until the action is
2157 # complete, unless the container process fails, in which case the handler is
2158 # aborted.
2159 &quot;preStop&quot;: { # Handler defines a specific action that should be taken # PreStop is called immediately before a container is terminated.
2160 # The container is terminated after the handler completes.
2161 # The reason for termination is passed to the handler.
2162 # Regardless of the outcome of the handler, the container is eventually
2163 # terminated. Other management of the container blocks until the hook
2164 # completes. More info:
2165 # https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
2166 # +optional
2167 &quot;tcpSocket&quot;: { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
2168 # TCP hooks not yet supported
2169 &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.
2170 # Number must be in the range 1 to 65535.
2171 # Name must be an IANA_SVC_NAME.
2172 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
2173 # inner type. This allows you to have, for example, a JSON field that can
2174 # accept a name or number.
2175 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
2176 &quot;type&quot;: 42, # The type of the value.
2177 &quot;intVal&quot;: 42, # The int value.
2178 },
2179 &quot;host&quot;: &quot;A String&quot;, # Optional: Host name to connect to, defaults to the pod IP.
2180 # +optional
2181 },
2182 &quot;exec&quot;: { # ExecAction describes a &quot;run in container&quot; action. # One and only one of the following should be specified.
2183 # Exec specifies the action to take.
2184 # +optional
2185 &quot;command&quot;: &quot;A String&quot;, # Command is the command line to execute inside the container, the working
2186 # directory for the command is root (&#x27;/&#x27;) in the container&#x27;s filesystem. The
2187 # command is simply exec&#x27;d, it is not run inside a shell, so traditional
2188 # shell instructions (&#x27;|&#x27;, etc) won&#x27;t work. To use a shell, you need to
2189 # explicitly call out to that shell. Exit status of 0 is treated as
2190 # live/healthy and non-zero is unhealthy. +optional
2191 },
2192 &quot;httpGet&quot;: { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
2193 # +optional
2194 &quot;httpHeaders&quot;: [ # Custom headers to set in the request. HTTP allows repeated headers.
2195 # +optional
2196 { # HTTPHeader describes a custom header to be used in HTTP probes
2197 &quot;name&quot;: &quot;A String&quot;, # The header field name
2198 &quot;value&quot;: &quot;A String&quot;, # The header field value
2199 },
2200 ],
2201 &quot;path&quot;: &quot;A String&quot;, # Path to access on the HTTP server.
2202 # +optional
2203 &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.
2204 # Number must be in the range 1 to 65535.
2205 # Name must be an IANA_SVC_NAME.
2206 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
2207 # inner type. This allows you to have, for example, a JSON field that can
2208 # accept a name or number.
2209 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
2210 &quot;type&quot;: 42, # The type of the value.
2211 &quot;intVal&quot;: 42, # The int value.
2212 },
2213 &quot;host&quot;: &quot;A String&quot;, # Host name to connect to, defaults to the pod IP. You probably want to set
2214 # &quot;Host&quot; in httpHeaders instead.
2215 # +optional
2216 &quot;scheme&quot;: &quot;A String&quot;, # Scheme to use for connecting to the host.
2217 # Defaults to HTTP.
2218 # +optional
2219 },
2220 },
2221 &quot;postStart&quot;: { # Handler defines a specific action that should be taken # PostStart is called immediately after a container is created. If the
2222 # handler fails, the container is terminated and restarted according to its
2223 # restart policy. Other management of the container blocks until the hook
2224 # completes. More info:
2225 # https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
2226 # +optional
2227 &quot;tcpSocket&quot;: { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
2228 # TCP hooks not yet supported
2229 &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.
2230 # Number must be in the range 1 to 65535.
2231 # Name must be an IANA_SVC_NAME.
2232 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
2233 # inner type. This allows you to have, for example, a JSON field that can
2234 # accept a name or number.
2235 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
2236 &quot;type&quot;: 42, # The type of the value.
2237 &quot;intVal&quot;: 42, # The int value.
2238 },
2239 &quot;host&quot;: &quot;A String&quot;, # Optional: Host name to connect to, defaults to the pod IP.
2240 # +optional
2241 },
2242 &quot;exec&quot;: { # ExecAction describes a &quot;run in container&quot; action. # One and only one of the following should be specified.
2243 # Exec specifies the action to take.
2244 # +optional
2245 &quot;command&quot;: &quot;A String&quot;, # Command is the command line to execute inside the container, the working
2246 # directory for the command is root (&#x27;/&#x27;) in the container&#x27;s filesystem. The
2247 # command is simply exec&#x27;d, it is not run inside a shell, so traditional
2248 # shell instructions (&#x27;|&#x27;, etc) won&#x27;t work. To use a shell, you need to
2249 # explicitly call out to that shell. Exit status of 0 is treated as
2250 # live/healthy and non-zero is unhealthy. +optional
2251 },
2252 &quot;httpGet&quot;: { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
2253 # +optional
2254 &quot;httpHeaders&quot;: [ # Custom headers to set in the request. HTTP allows repeated headers.
2255 # +optional
2256 { # HTTPHeader describes a custom header to be used in HTTP probes
2257 &quot;name&quot;: &quot;A String&quot;, # The header field name
2258 &quot;value&quot;: &quot;A String&quot;, # The header field value
2259 },
2260 ],
2261 &quot;path&quot;: &quot;A String&quot;, # Path to access on the HTTP server.
2262 # +optional
2263 &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.
2264 # Number must be in the range 1 to 65535.
2265 # Name must be an IANA_SVC_NAME.
2266 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
2267 # inner type. This allows you to have, for example, a JSON field that can
2268 # accept a name or number.
2269 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
2270 &quot;type&quot;: 42, # The type of the value.
2271 &quot;intVal&quot;: 42, # The int value.
2272 },
2273 &quot;host&quot;: &quot;A String&quot;, # Host name to connect to, defaults to the pod IP. You probably want to set
2274 # &quot;Host&quot; in httpHeaders instead.
2275 # +optional
2276 &quot;scheme&quot;: &quot;A String&quot;, # Scheme to use for connecting to the host.
2277 # Defaults to HTTP.
2278 # +optional
2279 },
2280 },
2281 },
2282 &quot;terminationMessagePath&quot;: &quot;A String&quot;, # Optional: Path at which the file to which the container&#x27;s termination
2283 # message will be written is mounted into the container&#x27;s filesystem. Message
2284 # written is intended to be brief final status, such as an assertion failure
2285 # message. Will be truncated by the node if greater than 4096 bytes. The
2286 # total message length across all containers will be limited to 12kb.
2287 # Defaults to /dev/termination-log.
2288 # Cannot be updated.
2289 # +optional
2290 &quot;stdin&quot;: True or False, # Whether this container should allocate a buffer for stdin in the container
2291 # runtime. If this is not set, reads from stdin in the container will always
2292 # result in EOF. Default is false. +optional
2293 &quot;volumeMounts&quot;: [ # Pod volumes to mount into the container&#x27;s filesystem.
2294 # Cannot be updated.
2295 # +optional
2296 { # VolumeMount describes a mounting of a Volume within a container.
2297 &quot;name&quot;: &quot;A String&quot;, # This must match the Name of a Volume.
2298 &quot;readOnly&quot;: True or False, # Mounted read-only if true, read-write otherwise (false or unspecified).
2299 # Defaults to false.
2300 # +optional
2301 &quot;mountPropagation&quot;: &quot;A String&quot;, # mountPropagation determines how mounts are propagated from the host
2302 # to container and the other way around.
2303 # When not set, MountPropagationHostToContainer is used.
2304 # This field is beta in 1.10.
2305 # +optional
2306 &quot;mountPath&quot;: &quot;A String&quot;, # Path within the container at which the volume should be mounted. Must
2307 # not contain &#x27;:&#x27;.
2308 &quot;subPath&quot;: &quot;A String&quot;, # Path within the volume from which the container&#x27;s volume should be mounted.
2309 # Defaults to &quot;&quot; (volume&#x27;s root).
2310 # +optional
2311 },
2312 ],
2313 &quot;tty&quot;: True or False, # Whether this container should allocate a TTY for itself, also requires
2314 # &#x27;stdin&#x27; to be true. Default is false. +optional
2315 &quot;volumeDevices&quot;: [ # volumeDevices is the list of block devices to be used by the container.
2316 # This is an alpha feature and may change in the future.
2317 # +optional
2318 { # volumeDevice describes a mapping of a raw block device within a container.
2319 &quot;name&quot;: &quot;A String&quot;, # name must match the name of a persistentVolumeClaim in the pod
2320 &quot;devicePath&quot;: &quot;A String&quot;, # devicePath is the path inside of the container that the device will be
2321 # mapped to.
2322 },
2323 ],
2324 &quot;stdinOnce&quot;: True or False, # Whether the container runtime should close the stdin channel after it has
2325 # been opened by a single attach. When stdin is true the stdin stream will
2326 # remain open across multiple attach sessions. If stdinOnce is set to true,
2327 # stdin is opened on container start, is empty until the first client
2328 # attaches to stdin, and then remains open and accepts data until the client
2329 # disconnects, at which time stdin is closed and remains closed until the
2330 # container is restarted. If this flag is false, a container processes that
2331 # reads from stdin will never receive an EOF. Default is false +optional
2332 &quot;args&quot;: [ # Arguments to the entrypoint.
2333 # The docker image&#x27;s CMD is used if this is not provided.
2334 # Variable references $(VAR_NAME) are expanded using the container&#x27;s
2335 # environment. If a variable cannot be resolved, the reference in the input
2336 # string will be unchanged. The $(VAR_NAME) syntax can be escaped with a
2337 # double $$, ie: $$(VAR_NAME). Escaped references will never be expanded,
2338 # regardless of whether the variable exists or not.
2339 # Cannot be updated.
2340 # More info:
2341 # https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
2342 # +optional
2343 &quot;A String&quot;,
2344 ],
2345 &quot;workingDir&quot;: &quot;A String&quot;, # Container&#x27;s working directory.
2346 # If not specified, the container runtime&#x27;s default will be used, which
2347 # might be configured in the container image.
2348 # Cannot be updated.
2349 # +optional
2350 &quot;ports&quot;: [ # List of ports to expose from the container. Exposing a port here gives
2351 # the system additional information about the network connections a
2352 # container uses, but is primarily informational. Not specifying a port here
2353 # DOES NOT prevent that port from being exposed. Any port which is
2354 # listening on the default &quot;0.0.0.0&quot; address inside a container will be
2355 # accessible from the network.
2356 # Cannot be updated.
2357 # +optional
2358 { # ContainerPort represents a network port in a single container.
2359 &quot;hostIP&quot;: &quot;A String&quot;, # What host IP to bind the external port to.
2360 # +optional
2361 &quot;name&quot;: &quot;A String&quot;, # If specified, this must be an IANA_SVC_NAME and unique within the pod. Each
2362 # named port in a pod must have a unique name. Name for the port that can be
2363 # referred to by services.
2364 # +optional
2365 &quot;hostPort&quot;: 42, # Number of port to expose on the host.
2366 # If specified, this must be a valid port number, 0 &lt; x &lt; 65536.
2367 # If HostNetwork is specified, this must match ContainerPort.
2368 # Most containers do not need this.
2369 # +optional
2370 &quot;containerPort&quot;: 42, # Number of port to expose on the pod&#x27;s IP address.
2371 # This must be a valid port number, 0 &lt; x &lt; 65536.
2372 &quot;protocol&quot;: &quot;A String&quot;, # Protocol for port. Must be UDP or TCP.
2373 # Defaults to &quot;TCP&quot;.
2374 # +optional
2375 },
2376 ],
2377 &quot;image&quot;: &quot;A String&quot;, # Docker image name.
2378 # More info: https://kubernetes.io/docs/concepts/containers/images
2379 &quot;envFrom&quot;: [ # List of sources to populate environment variables in the container.
2380 # The keys defined within a source must be a C_IDENTIFIER. All invalid keys
2381 # will be reported as an event when the container is starting. When a key
2382 # exists in multiple sources, the value associated with the last source will
2383 # take precedence. Values defined by an Env with a duplicate key will take
2384 # precedence. Cannot be updated. +optional
2385 { # EnvFromSource represents the source of a set of ConfigMaps
2386 &quot;prefix&quot;: &quot;A String&quot;, # An optional identifier to prepend to each key in the ConfigMap. Must be a
2387 # C_IDENTIFIER. +optional
2388 &quot;configMapRef&quot;: { # ConfigMapEnvSource selects a ConfigMap to populate the environment # The ConfigMap to select from
2389 # +optional
2390 # variables with.
2391 #
2392 # The contents of the target ConfigMap&#x27;s Data field will represent the
2393 # key-value pairs as environment variables.
2394 &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
2395 # directly into the message. Use the &quot;name&quot; field instead.
2396 # referenced object inside the same namespace.
2397 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
2398 # More info:
2399 # https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
2400 },
2401 &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported
2402 #
2403 # Cloud Run for Anthos: supported
2404 #
2405 # Specify whether the ConfigMap must be defined
2406 # +optional
2407 &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
2408 #
2409 # Cloud Run for Anthos: supported
2410 #
2411 # The ConfigMap to select from.
2412 },
2413 &quot;secretRef&quot;: { # SecretEnvSource selects a Secret to populate the environment # The Secret to select from
2414 # +optional
2415 # variables with.
2416 #
2417 # The contents of the target Secret&#x27;s Data field will represent the
2418 # key-value pairs as environment variables.
2419 &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
2420 #
2421 # Cloud Run for Anthos: supported
2422 #
2423 # The Secret to select from.
2424 &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
2425 # directly into the message. Use the &quot;name&quot; field instead.
2426 # referenced object inside the same namespace.
2427 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
2428 # More info:
2429 # https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
2430 },
2431 &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported
2432 #
2433 # Cloud Run for Anthos: supported
2434 #
2435 # Specify whether the Secret must be defined
2436 # +optional
2437 },
2438 },
2439 ],
2440 &quot;name&quot;: &quot;A String&quot;, # Name of the container specified as a DNS_LABEL.
2441 # Each container must have a unique name (DNS_LABEL).
2442 # Cannot be updated.
2443 &quot;command&quot;: [ # Entrypoint array. Not executed within a shell.
2444 # The docker image&#x27;s ENTRYPOINT is used if this is not provided.
2445 # Variable references $(VAR_NAME) are expanded using the container&#x27;s
2446 # environment. If a variable cannot be resolved, the reference in the input
2447 # string will be unchanged. The $(VAR_NAME) syntax can be escaped with a
2448 # double $$, ie: $$(VAR_NAME). Escaped references will never be expanded,
2449 # regardless of whether the variable exists or not.
2450 # Cannot be updated.
2451 # More info:
2452 # https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
2453 # +optional
2454 &quot;A String&quot;,
2455 ],
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002456 },
2457 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002458 &quot;serviceAccountName&quot;: &quot;A String&quot;, # Email address of the IAM service account associated with the revision
2459 # of the service. The service account represents the identity of the
2460 # running revision, and determines what permissions the revision has. If
2461 # not provided, the revision will use the project&#x27;s default service account.
Bu Sun Kim65020912020-05-20 12:08:20 -07002462 &quot;generation&quot;: 42, # Deprecated and not currently populated by Cloud Run. See
2463 # metadata.generation instead, which is the sequence number containing the
2464 # latest generation of the desired state.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002465 #
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002466 # Read-only.
Bu Sun Kim65020912020-05-20 12:08:20 -07002467 &quot;servingState&quot;: &quot;A String&quot;, # ServingState holds a value describing the state the resources
2468 # are in for this Revision.
2469 # Users must not specify this when creating a revision. It is expected
2470 # that the system will manipulate this based on routability and load.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002471 #
Bu Sun Kim65020912020-05-20 12:08:20 -07002472 # Populated by the system.
2473 # Read-only.
2474 &quot;concurrencyModel&quot;: &quot;A String&quot;, # ConcurrencyModel specifies the desired concurrency model
2475 # (Single or Multi) for the Revision. Defaults to Multi.
2476 # Deprecated in favor of ContainerConcurrency.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002477 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002478 &quot;timeoutSeconds&quot;: 42, # TimeoutSeconds holds the max duration the instance is allowed for
2479 # responding to a request.
2480 # Not currently used by Cloud Run.
Bu Sun Kim65020912020-05-20 12:08:20 -07002481 &quot;container&quot;: { # A single application container. # Container defines the unit of execution for this Revision.
2482 # In the context of a Revision, we disallow a number of the fields of
2483 # this Container, including: name, ports, and volumeMounts.
2484 # The runtime contract is documented here:
2485 # https://github.com/knative/serving/blob/master/docs/runtime-contract.md
2486 # This specifies both the container to run, the command to run in the container
2487 # and the arguments to supply to it.
2488 # Note that additional arguments may be supplied by the system to the container
2489 # at runtime.
Bu Sun Kim65020912020-05-20 12:08:20 -07002490 &quot;terminationMessagePolicy&quot;: &quot;A String&quot;, # Indicate how the termination message should be populated. File will use the
2491 # contents of terminationMessagePath to populate the container status message
2492 # on both success and failure. FallbackToLogsOnError will use the last chunk
2493 # of container log output if the termination message file is empty and the
2494 # container exited with an error. The log output is limited to 2048 bytes or
2495 # 80 lines, whichever is smaller. Defaults to File. Cannot be updated.
2496 # +optional
2497 &quot;securityContext&quot;: { # SecurityContext holds security configuration that will be applied to a # Security options the pod should run with.
2498 # More info: https://kubernetes.io/docs/concepts/policy/security-context/
2499 # More info:
2500 # https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
2501 # +optional
2502 # container. Some fields are present in both SecurityContext and
2503 # PodSecurityContext. When both are set, the values in SecurityContext take
2504 # precedence.
2505 &quot;capabilities&quot;: { # Adds and removes POSIX capabilities from running containers. # The capabilities to add/drop when running containers.
2506 # Defaults to the default set of capabilities granted by the container
2507 # runtime. +optional
2508 &quot;add&quot;: [ # Added capabilities
2509 # +optional
2510 &quot;A String&quot;,
2511 ],
2512 &quot;drop&quot;: [ # Removed capabilities
2513 # +optional
2514 &quot;A String&quot;,
2515 ],
2516 },
2517 &quot;runAsNonRoot&quot;: True or False, # Indicates that the container must run as a non-root user.
2518 # If true, the Kubelet will validate the image at runtime to ensure that it
2519 # does not run as UID 0 (root) and fail to start the container if it does.
2520 # If unset or false, no such validation will be performed.
2521 # May also be set in PodSecurityContext. If set in both SecurityContext and
2522 # PodSecurityContext, the value specified in SecurityContext takes
2523 # precedence. +optional
2524 &quot;runAsGroup&quot;: 42, # The GID to run the entrypoint of the container process.
2525 # Uses runtime default if unset.
2526 # May also be set in PodSecurityContext. If set in both SecurityContext and
2527 # PodSecurityContext, the value specified in SecurityContext takes
2528 # precedence. +optional
2529 &quot;privileged&quot;: True or False, # Run container in privileged mode.
2530 # Processes in privileged containers are essentially equivalent to root on
2531 # the host. Defaults to false. +optional
2532 &quot;allowPrivilegeEscalation&quot;: True or False, # AllowPrivilegeEscalation controls whether a process can gain more
2533 # privileges than its parent process. This bool directly controls if
2534 # the no_new_privs flag will be set on the container process.
2535 # AllowPrivilegeEscalation is true always when the container is:
2536 # 1) run as Privileged
2537 # 2) has CAP_SYS_ADMIN
2538 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002539 &quot;readOnlyRootFilesystem&quot;: True or False, # Whether this container has a read-only root filesystem.
2540 # Default is false.
2541 # +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07002542 &quot;seLinuxOptions&quot;: { # SELinuxOptions are the labels to be applied to the container # The SELinux context to be applied to the container.
2543 # If unspecified, the container runtime will allocate a random SELinux
2544 # context for each container. May also be set in PodSecurityContext. If set
2545 # in both SecurityContext and PodSecurityContext, the value specified in
2546 # SecurityContext takes precedence. +optional
2547 &quot;role&quot;: &quot;A String&quot;, # Role is a SELinux role label that applies to the container.
2548 # +optional
2549 &quot;level&quot;: &quot;A String&quot;, # Level is SELinux level label that applies to the container.
2550 # +optional
2551 &quot;user&quot;: &quot;A String&quot;, # User is a SELinux user label that applies to the container.
2552 # +optional
2553 &quot;type&quot;: &quot;A String&quot;, # Type is a SELinux type label that applies to the container.
2554 # +optional
2555 },
Bu Sun Kim65020912020-05-20 12:08:20 -07002556 &quot;runAsUser&quot;: 42, # The UID to run the entrypoint of the container process.
2557 # Defaults to user specified in image metadata if unspecified.
2558 # May also be set in PodSecurityContext. If set in both SecurityContext and
2559 # PodSecurityContext, the value specified in SecurityContext takes
2560 # precedence. +optional
2561 },
2562 &quot;livenessProbe&quot;: { # Probe describes a health check to be performed against a container to # Periodic probe of container liveness.
2563 # Container will be restarted if the probe fails.
2564 # Cannot be updated.
2565 # More info:
2566 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
2567 # +optional
2568 # determine whether it is alive or ready to receive traffic.
Bu Sun Kim65020912020-05-20 12:08:20 -07002569 &quot;initialDelaySeconds&quot;: 42, # Number of seconds after the container has started before liveness probes
2570 # are initiated. More info:
2571 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
2572 # +optional
2573 &quot;timeoutSeconds&quot;: 42, # Number of seconds after which the probe times out.
2574 # Defaults to 1 second. Minimum value is 1.
2575 # More info:
2576 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
2577 # +optional
2578 &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 -07002579 &quot;tcpSocket&quot;: { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
2580 # TCP hooks not yet supported
2581 &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.
2582 # Number must be in the range 1 to 65535.
2583 # Name must be an IANA_SVC_NAME.
2584 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
2585 # inner type. This allows you to have, for example, a JSON field that can
2586 # accept a name or number.
2587 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
2588 &quot;type&quot;: 42, # The type of the value.
2589 &quot;intVal&quot;: 42, # The int value.
2590 },
2591 &quot;host&quot;: &quot;A String&quot;, # Optional: Host name to connect to, defaults to the pod IP.
2592 # +optional
2593 },
Bu Sun Kim65020912020-05-20 12:08:20 -07002594 &quot;exec&quot;: { # ExecAction describes a &quot;run in container&quot; action. # One and only one of the following should be specified.
2595 # Exec specifies the action to take.
2596 # +optional
2597 &quot;command&quot;: &quot;A String&quot;, # Command is the command line to execute inside the container, the working
2598 # directory for the command is root (&#x27;/&#x27;) in the container&#x27;s filesystem. The
2599 # command is simply exec&#x27;d, it is not run inside a shell, so traditional
2600 # shell instructions (&#x27;|&#x27;, etc) won&#x27;t work. To use a shell, you need to
2601 # explicitly call out to that shell. Exit status of 0 is treated as
2602 # live/healthy and non-zero is unhealthy. +optional
2603 },
2604 &quot;httpGet&quot;: { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
2605 # +optional
2606 &quot;httpHeaders&quot;: [ # Custom headers to set in the request. HTTP allows repeated headers.
2607 # +optional
2608 { # HTTPHeader describes a custom header to be used in HTTP probes
Bu Sun Kim65020912020-05-20 12:08:20 -07002609 &quot;name&quot;: &quot;A String&quot;, # The header field name
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002610 &quot;value&quot;: &quot;A String&quot;, # The header field value
Bu Sun Kim65020912020-05-20 12:08:20 -07002611 },
2612 ],
2613 &quot;path&quot;: &quot;A String&quot;, # Path to access on the HTTP server.
2614 # +optional
2615 &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.
2616 # Number must be in the range 1 to 65535.
2617 # Name must be an IANA_SVC_NAME.
2618 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
2619 # inner type. This allows you to have, for example, a JSON field that can
2620 # accept a name or number.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002621 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
Bu Sun Kim65020912020-05-20 12:08:20 -07002622 &quot;type&quot;: 42, # The type of the value.
2623 &quot;intVal&quot;: 42, # The int value.
Bu Sun Kim65020912020-05-20 12:08:20 -07002624 },
2625 &quot;host&quot;: &quot;A String&quot;, # Host name to connect to, defaults to the pod IP. You probably want to set
2626 # &quot;Host&quot; in httpHeaders instead.
2627 # +optional
2628 &quot;scheme&quot;: &quot;A String&quot;, # Scheme to use for connecting to the host.
2629 # Defaults to HTTP.
2630 # +optional
2631 },
Bu Sun Kim65020912020-05-20 12:08:20 -07002632 },
2633 &quot;successThreshold&quot;: 42, # Minimum consecutive successes for the probe to be considered successful
2634 # after having failed. Defaults to 1. Must be 1 for liveness. Minimum value
2635 # is 1. +optional
2636 &quot;periodSeconds&quot;: 42, # How often (in seconds) to perform the probe.
2637 # Default to 10 seconds. Minimum value is 1.
2638 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002639 &quot;failureThreshold&quot;: 42, # Minimum consecutive failures for the probe to be considered failed after
2640 # having succeeded. Defaults to 3. Minimum value is 1. +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07002641 },
2642 &quot;env&quot;: [ # List of environment variables to set in the container.
2643 # Cannot be updated.
2644 # +optional
2645 { # EnvVar represents an environment variable present in a Container.
Bu Sun Kim65020912020-05-20 12:08:20 -07002646 &quot;name&quot;: &quot;A String&quot;, # Name of the environment variable. Must be a C_IDENTIFIER.
2647 &quot;valueFrom&quot;: { # Cloud Run fully managed: not supported # Cloud Run fully managed: not supported
2648 #
2649 # Cloud Run on GKE: supported
2650 #
2651 # Source for the environment variable&#x27;s value. Cannot be used if value is not
2652 # empty. +optional
2653 #
2654 # Cloud Run on GKE: supported
2655 #
2656 # EnvVarSource represents a source for the value of an EnvVar.
2657 &quot;configMapKeyRef&quot;: { # Cloud Run fully managed: not supported # Cloud Run fully managed: not supported
2658 #
2659 # Cloud Run on GKE: supported
2660 #
2661 # Selects a key of a ConfigMap.
2662 # +optional
2663 #
2664 # Cloud Run on GKE: supported
2665 #
2666 # Selects a key from a ConfigMap.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002667 &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
2668 # directly into the message. Use the &quot;name&quot; field instead.
2669 # referenced object inside the same namespace.
2670 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
2671 # More info:
2672 # https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
2673 },
Bu Sun Kim65020912020-05-20 12:08:20 -07002674 &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported
2675 #
2676 # Cloud Run on GKE: supported
2677 #
2678 # Specify whether the ConfigMap or its key must be defined
2679 # +optional
2680 &quot;key&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
2681 #
2682 # Cloud Run on GKE: supported
2683 #
2684 # The key to select.
2685 &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
2686 #
2687 # Cloud Run on GKE: supported
2688 #
2689 # The ConfigMap to select from.
Bu Sun Kim65020912020-05-20 12:08:20 -07002690 },
2691 &quot;secretKeyRef&quot;: { # Cloud Run fully managed: not supported # Cloud Run fully managed: not supported
2692 #
2693 # Cloud Run on GKE: supported
2694 #
2695 # Selects a key of a secret in the pod&#x27;s namespace
2696 # +optional
2697 #
2698 # Cloud Run on GKE: supported
2699 #
2700 # SecretKeySelector selects a key of a Secret.
Bu Sun Kim65020912020-05-20 12:08:20 -07002701 &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported
2702 #
2703 # Cloud Run on GKE: supported
2704 #
2705 # Specify whether the Secret or its key must be defined
2706 # +optional
2707 &quot;key&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
2708 #
2709 # Cloud Run on GKE: supported
2710 #
2711 # The key of the secret to select from. Must be a valid secret key.
2712 &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
2713 #
2714 # Cloud Run on GKE: supported
2715 #
2716 # The name of the secret in the pod&#x27;s namespace to select from.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002717 &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
2718 # directly into the message. Use the &quot;name&quot; field instead.
2719 # referenced object inside the same namespace.
2720 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
2721 # More info:
2722 # https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
2723 },
Bu Sun Kim65020912020-05-20 12:08:20 -07002724 },
2725 },
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002726 &quot;value&quot;: &quot;A String&quot;, # Variable references $(VAR_NAME) are expanded
2727 # using the previous defined environment variables in the container and
2728 # any route environment variables. If a variable cannot be resolved,
2729 # the reference in the input string will be unchanged. The $(VAR_NAME)
2730 # syntax can be escaped with a double $$, ie: $$(VAR_NAME). Escaped
2731 # references will never be expanded, regardless of whether the variable
2732 # exists or not.
2733 # Defaults to &quot;&quot;.
2734 # +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07002735 },
2736 ],
2737 &quot;resources&quot;: { # ResourceRequirements describes the compute resource requirements. # Compute Resources required by this container.
2738 # Cannot be updated.
2739 # More info:
2740 # https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
2741 # +optional
2742 &quot;requestsInMap&quot;: { # Requests describes the minimum amount of compute resources required.
2743 # If Requests is omitted for a container, it defaults to Limits if that is
2744 # explicitly specified, otherwise to an implementation-defined value.
2745 # This is a temporary field created to migrate away from the
2746 # map&lt;string, Quantity&gt; requests field. This is done to become compliant
2747 # with k8s style API.
2748 # This field is deprecated in favor of requests field.
2749 &quot;a_key&quot;: { # The view model of a single quantity, e.g. &quot;800 MiB&quot;. Corresponds to
2750 # https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/generated.proto
2751 &quot;string&quot;: &quot;A String&quot;, # Stringified version of the quantity, e.g., &quot;800 MiB&quot;.
2752 },
2753 },
2754 &quot;requests&quot;: { # Requests describes the minimum amount of compute resources required.
2755 # If Requests is omitted for a container, it defaults to Limits if that is
2756 # explicitly specified, otherwise to an implementation-defined value.
2757 # The values of the map is string form of the &#x27;quantity&#x27; k8s type:
2758 # https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go
2759 &quot;a_key&quot;: &quot;A String&quot;,
2760 },
2761 &quot;limits&quot;: { # Limits describes the maximum amount of compute resources allowed.
2762 # The values of the map is string form of the &#x27;quantity&#x27; k8s type:
2763 # https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go
2764 &quot;a_key&quot;: &quot;A String&quot;,
2765 },
2766 &quot;limitsInMap&quot;: { # Limits describes the maximum amount of compute resources allowed.
2767 # This is a temporary field created to migrate away from the
2768 # map&lt;string, Quantity&gt; limits field. This is done to become compliant
2769 # with k8s style API.
2770 # This field is deprecated in favor of limits field.
2771 &quot;a_key&quot;: { # The view model of a single quantity, e.g. &quot;800 MiB&quot;. Corresponds to
2772 # https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/generated.proto
2773 &quot;string&quot;: &quot;A String&quot;, # Stringified version of the quantity, e.g., &quot;800 MiB&quot;.
2774 },
2775 },
2776 },
2777 &quot;readinessProbe&quot;: { # Probe describes a health check to be performed against a container to # Periodic probe of container service readiness.
2778 # Container will be removed from service endpoints if the probe fails.
2779 # Cannot be updated.
2780 # More info:
2781 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
2782 # +optional
2783 # determine whether it is alive or ready to receive traffic.
Bu Sun Kim65020912020-05-20 12:08:20 -07002784 &quot;initialDelaySeconds&quot;: 42, # Number of seconds after the container has started before liveness probes
2785 # are initiated. More info:
2786 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
2787 # +optional
2788 &quot;timeoutSeconds&quot;: 42, # Number of seconds after which the probe times out.
2789 # Defaults to 1 second. Minimum value is 1.
2790 # More info:
2791 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
2792 # +optional
2793 &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 -07002794 &quot;tcpSocket&quot;: { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
2795 # TCP hooks not yet supported
2796 &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.
2797 # Number must be in the range 1 to 65535.
2798 # Name must be an IANA_SVC_NAME.
2799 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
2800 # inner type. This allows you to have, for example, a JSON field that can
2801 # accept a name or number.
2802 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
2803 &quot;type&quot;: 42, # The type of the value.
2804 &quot;intVal&quot;: 42, # The int value.
2805 },
2806 &quot;host&quot;: &quot;A String&quot;, # Optional: Host name to connect to, defaults to the pod IP.
2807 # +optional
2808 },
Bu Sun Kim65020912020-05-20 12:08:20 -07002809 &quot;exec&quot;: { # ExecAction describes a &quot;run in container&quot; action. # One and only one of the following should be specified.
2810 # Exec specifies the action to take.
2811 # +optional
2812 &quot;command&quot;: &quot;A String&quot;, # Command is the command line to execute inside the container, the working
2813 # directory for the command is root (&#x27;/&#x27;) in the container&#x27;s filesystem. The
2814 # command is simply exec&#x27;d, it is not run inside a shell, so traditional
2815 # shell instructions (&#x27;|&#x27;, etc) won&#x27;t work. To use a shell, you need to
2816 # explicitly call out to that shell. Exit status of 0 is treated as
2817 # live/healthy and non-zero is unhealthy. +optional
2818 },
2819 &quot;httpGet&quot;: { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
2820 # +optional
2821 &quot;httpHeaders&quot;: [ # Custom headers to set in the request. HTTP allows repeated headers.
2822 # +optional
2823 { # HTTPHeader describes a custom header to be used in HTTP probes
Bu Sun Kim65020912020-05-20 12:08:20 -07002824 &quot;name&quot;: &quot;A String&quot;, # The header field name
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002825 &quot;value&quot;: &quot;A String&quot;, # The header field value
Bu Sun Kim65020912020-05-20 12:08:20 -07002826 },
2827 ],
2828 &quot;path&quot;: &quot;A String&quot;, # Path to access on the HTTP server.
2829 # +optional
2830 &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.
2831 # Number must be in the range 1 to 65535.
2832 # Name must be an IANA_SVC_NAME.
2833 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
2834 # inner type. This allows you to have, for example, a JSON field that can
2835 # accept a name or number.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002836 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
Bu Sun Kim65020912020-05-20 12:08:20 -07002837 &quot;type&quot;: 42, # The type of the value.
2838 &quot;intVal&quot;: 42, # The int value.
Bu Sun Kim65020912020-05-20 12:08:20 -07002839 },
2840 &quot;host&quot;: &quot;A String&quot;, # Host name to connect to, defaults to the pod IP. You probably want to set
2841 # &quot;Host&quot; in httpHeaders instead.
2842 # +optional
2843 &quot;scheme&quot;: &quot;A String&quot;, # Scheme to use for connecting to the host.
2844 # Defaults to HTTP.
2845 # +optional
2846 },
Bu Sun Kim65020912020-05-20 12:08:20 -07002847 },
2848 &quot;successThreshold&quot;: 42, # Minimum consecutive successes for the probe to be considered successful
2849 # after having failed. Defaults to 1. Must be 1 for liveness. Minimum value
2850 # is 1. +optional
2851 &quot;periodSeconds&quot;: 42, # How often (in seconds) to perform the probe.
2852 # Default to 10 seconds. Minimum value is 1.
2853 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002854 &quot;failureThreshold&quot;: 42, # Minimum consecutive failures for the probe to be considered failed after
2855 # having succeeded. Defaults to 3. Minimum value is 1. +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07002856 },
2857 &quot;imagePullPolicy&quot;: &quot;A String&quot;, # Image pull policy.
2858 # One of Always, Never, IfNotPresent.
2859 # Defaults to Always if :latest tag is specified, or IfNotPresent otherwise.
2860 # Cannot be updated.
2861 # More info:
2862 # https://kubernetes.io/docs/concepts/containers/images#updating-images
2863 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002864 &quot;lifecycle&quot;: { # Lifecycle describes actions that the management system should take in # Actions that the management system should take in response to container
2865 # lifecycle events. Cannot be updated. +optional
2866 # response to container lifecycle events. For the PostStart and PreStop
2867 # lifecycle handlers, management of the container blocks until the action is
2868 # complete, unless the container process fails, in which case the handler is
2869 # aborted.
2870 &quot;preStop&quot;: { # Handler defines a specific action that should be taken # PreStop is called immediately before a container is terminated.
2871 # The container is terminated after the handler completes.
2872 # The reason for termination is passed to the handler.
2873 # Regardless of the outcome of the handler, the container is eventually
2874 # terminated. Other management of the container blocks until the hook
2875 # completes. More info:
2876 # https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
2877 # +optional
2878 &quot;tcpSocket&quot;: { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
2879 # TCP hooks not yet supported
2880 &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.
2881 # Number must be in the range 1 to 65535.
2882 # Name must be an IANA_SVC_NAME.
2883 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
2884 # inner type. This allows you to have, for example, a JSON field that can
2885 # accept a name or number.
2886 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
2887 &quot;type&quot;: 42, # The type of the value.
2888 &quot;intVal&quot;: 42, # The int value.
2889 },
2890 &quot;host&quot;: &quot;A String&quot;, # Optional: Host name to connect to, defaults to the pod IP.
2891 # +optional
2892 },
2893 &quot;exec&quot;: { # ExecAction describes a &quot;run in container&quot; action. # One and only one of the following should be specified.
2894 # Exec specifies the action to take.
2895 # +optional
2896 &quot;command&quot;: &quot;A String&quot;, # Command is the command line to execute inside the container, the working
2897 # directory for the command is root (&#x27;/&#x27;) in the container&#x27;s filesystem. The
2898 # command is simply exec&#x27;d, it is not run inside a shell, so traditional
2899 # shell instructions (&#x27;|&#x27;, etc) won&#x27;t work. To use a shell, you need to
2900 # explicitly call out to that shell. Exit status of 0 is treated as
2901 # live/healthy and non-zero is unhealthy. +optional
2902 },
2903 &quot;httpGet&quot;: { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
2904 # +optional
2905 &quot;httpHeaders&quot;: [ # Custom headers to set in the request. HTTP allows repeated headers.
2906 # +optional
2907 { # HTTPHeader describes a custom header to be used in HTTP probes
2908 &quot;name&quot;: &quot;A String&quot;, # The header field name
2909 &quot;value&quot;: &quot;A String&quot;, # The header field value
2910 },
2911 ],
2912 &quot;path&quot;: &quot;A String&quot;, # Path to access on the HTTP server.
2913 # +optional
2914 &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.
2915 # Number must be in the range 1 to 65535.
2916 # Name must be an IANA_SVC_NAME.
2917 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
2918 # inner type. This allows you to have, for example, a JSON field that can
2919 # accept a name or number.
2920 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
2921 &quot;type&quot;: 42, # The type of the value.
2922 &quot;intVal&quot;: 42, # The int value.
2923 },
2924 &quot;host&quot;: &quot;A String&quot;, # Host name to connect to, defaults to the pod IP. You probably want to set
2925 # &quot;Host&quot; in httpHeaders instead.
2926 # +optional
2927 &quot;scheme&quot;: &quot;A String&quot;, # Scheme to use for connecting to the host.
2928 # Defaults to HTTP.
2929 # +optional
2930 },
2931 },
2932 &quot;postStart&quot;: { # Handler defines a specific action that should be taken # PostStart is called immediately after a container is created. If the
2933 # handler fails, the container is terminated and restarted according to its
2934 # restart policy. Other management of the container blocks until the hook
2935 # completes. More info:
2936 # https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
2937 # +optional
2938 &quot;tcpSocket&quot;: { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
2939 # TCP hooks not yet supported
2940 &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.
2941 # Number must be in the range 1 to 65535.
2942 # Name must be an IANA_SVC_NAME.
2943 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
2944 # inner type. This allows you to have, for example, a JSON field that can
2945 # accept a name or number.
2946 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
2947 &quot;type&quot;: 42, # The type of the value.
2948 &quot;intVal&quot;: 42, # The int value.
2949 },
2950 &quot;host&quot;: &quot;A String&quot;, # Optional: Host name to connect to, defaults to the pod IP.
2951 # +optional
2952 },
2953 &quot;exec&quot;: { # ExecAction describes a &quot;run in container&quot; action. # One and only one of the following should be specified.
2954 # Exec specifies the action to take.
2955 # +optional
2956 &quot;command&quot;: &quot;A String&quot;, # Command is the command line to execute inside the container, the working
2957 # directory for the command is root (&#x27;/&#x27;) in the container&#x27;s filesystem. The
2958 # command is simply exec&#x27;d, it is not run inside a shell, so traditional
2959 # shell instructions (&#x27;|&#x27;, etc) won&#x27;t work. To use a shell, you need to
2960 # explicitly call out to that shell. Exit status of 0 is treated as
2961 # live/healthy and non-zero is unhealthy. +optional
2962 },
2963 &quot;httpGet&quot;: { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
2964 # +optional
2965 &quot;httpHeaders&quot;: [ # Custom headers to set in the request. HTTP allows repeated headers.
2966 # +optional
2967 { # HTTPHeader describes a custom header to be used in HTTP probes
2968 &quot;name&quot;: &quot;A String&quot;, # The header field name
2969 &quot;value&quot;: &quot;A String&quot;, # The header field value
2970 },
2971 ],
2972 &quot;path&quot;: &quot;A String&quot;, # Path to access on the HTTP server.
2973 # +optional
2974 &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.
2975 # Number must be in the range 1 to 65535.
2976 # Name must be an IANA_SVC_NAME.
2977 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
2978 # inner type. This allows you to have, for example, a JSON field that can
2979 # accept a name or number.
2980 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
2981 &quot;type&quot;: 42, # The type of the value.
2982 &quot;intVal&quot;: 42, # The int value.
2983 },
2984 &quot;host&quot;: &quot;A String&quot;, # Host name to connect to, defaults to the pod IP. You probably want to set
2985 # &quot;Host&quot; in httpHeaders instead.
2986 # +optional
2987 &quot;scheme&quot;: &quot;A String&quot;, # Scheme to use for connecting to the host.
2988 # Defaults to HTTP.
2989 # +optional
2990 },
2991 },
2992 },
2993 &quot;terminationMessagePath&quot;: &quot;A String&quot;, # Optional: Path at which the file to which the container&#x27;s termination
2994 # message will be written is mounted into the container&#x27;s filesystem. Message
2995 # written is intended to be brief final status, such as an assertion failure
2996 # message. Will be truncated by the node if greater than 4096 bytes. The
2997 # total message length across all containers will be limited to 12kb.
2998 # Defaults to /dev/termination-log.
2999 # Cannot be updated.
3000 # +optional
3001 &quot;stdin&quot;: True or False, # Whether this container should allocate a buffer for stdin in the container
3002 # runtime. If this is not set, reads from stdin in the container will always
3003 # result in EOF. Default is false. +optional
3004 &quot;volumeMounts&quot;: [ # Pod volumes to mount into the container&#x27;s filesystem.
3005 # Cannot be updated.
3006 # +optional
3007 { # VolumeMount describes a mounting of a Volume within a container.
3008 &quot;name&quot;: &quot;A String&quot;, # This must match the Name of a Volume.
3009 &quot;readOnly&quot;: True or False, # Mounted read-only if true, read-write otherwise (false or unspecified).
3010 # Defaults to false.
3011 # +optional
3012 &quot;mountPropagation&quot;: &quot;A String&quot;, # mountPropagation determines how mounts are propagated from the host
3013 # to container and the other way around.
3014 # When not set, MountPropagationHostToContainer is used.
3015 # This field is beta in 1.10.
3016 # +optional
3017 &quot;mountPath&quot;: &quot;A String&quot;, # Path within the container at which the volume should be mounted. Must
3018 # not contain &#x27;:&#x27;.
3019 &quot;subPath&quot;: &quot;A String&quot;, # Path within the volume from which the container&#x27;s volume should be mounted.
3020 # Defaults to &quot;&quot; (volume&#x27;s root).
3021 # +optional
3022 },
3023 ],
3024 &quot;tty&quot;: True or False, # Whether this container should allocate a TTY for itself, also requires
3025 # &#x27;stdin&#x27; to be true. Default is false. +optional
3026 &quot;volumeDevices&quot;: [ # volumeDevices is the list of block devices to be used by the container.
3027 # This is an alpha feature and may change in the future.
3028 # +optional
3029 { # volumeDevice describes a mapping of a raw block device within a container.
3030 &quot;name&quot;: &quot;A String&quot;, # name must match the name of a persistentVolumeClaim in the pod
3031 &quot;devicePath&quot;: &quot;A String&quot;, # devicePath is the path inside of the container that the device will be
3032 # mapped to.
3033 },
3034 ],
3035 &quot;stdinOnce&quot;: True or False, # Whether the container runtime should close the stdin channel after it has
3036 # been opened by a single attach. When stdin is true the stdin stream will
3037 # remain open across multiple attach sessions. If stdinOnce is set to true,
3038 # stdin is opened on container start, is empty until the first client
3039 # attaches to stdin, and then remains open and accepts data until the client
3040 # disconnects, at which time stdin is closed and remains closed until the
3041 # container is restarted. If this flag is false, a container processes that
3042 # reads from stdin will never receive an EOF. Default is false +optional
3043 &quot;args&quot;: [ # Arguments to the entrypoint.
3044 # The docker image&#x27;s CMD is used if this is not provided.
3045 # Variable references $(VAR_NAME) are expanded using the container&#x27;s
3046 # environment. If a variable cannot be resolved, the reference in the input
3047 # string will be unchanged. The $(VAR_NAME) syntax can be escaped with a
3048 # double $$, ie: $$(VAR_NAME). Escaped references will never be expanded,
3049 # regardless of whether the variable exists or not.
3050 # Cannot be updated.
3051 # More info:
3052 # https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
3053 # +optional
3054 &quot;A String&quot;,
3055 ],
3056 &quot;workingDir&quot;: &quot;A String&quot;, # Container&#x27;s working directory.
3057 # If not specified, the container runtime&#x27;s default will be used, which
3058 # might be configured in the container image.
3059 # Cannot be updated.
3060 # +optional
3061 &quot;ports&quot;: [ # List of ports to expose from the container. Exposing a port here gives
3062 # the system additional information about the network connections a
3063 # container uses, but is primarily informational. Not specifying a port here
3064 # DOES NOT prevent that port from being exposed. Any port which is
3065 # listening on the default &quot;0.0.0.0&quot; address inside a container will be
3066 # accessible from the network.
3067 # Cannot be updated.
3068 # +optional
3069 { # ContainerPort represents a network port in a single container.
3070 &quot;hostIP&quot;: &quot;A String&quot;, # What host IP to bind the external port to.
3071 # +optional
3072 &quot;name&quot;: &quot;A String&quot;, # If specified, this must be an IANA_SVC_NAME and unique within the pod. Each
3073 # named port in a pod must have a unique name. Name for the port that can be
3074 # referred to by services.
3075 # +optional
3076 &quot;hostPort&quot;: 42, # Number of port to expose on the host.
3077 # If specified, this must be a valid port number, 0 &lt; x &lt; 65536.
3078 # If HostNetwork is specified, this must match ContainerPort.
3079 # Most containers do not need this.
3080 # +optional
3081 &quot;containerPort&quot;: 42, # Number of port to expose on the pod&#x27;s IP address.
3082 # This must be a valid port number, 0 &lt; x &lt; 65536.
3083 &quot;protocol&quot;: &quot;A String&quot;, # Protocol for port. Must be UDP or TCP.
3084 # Defaults to &quot;TCP&quot;.
3085 # +optional
3086 },
3087 ],
3088 &quot;image&quot;: &quot;A String&quot;, # Docker image name.
3089 # More info: https://kubernetes.io/docs/concepts/containers/images
3090 &quot;envFrom&quot;: [ # List of sources to populate environment variables in the container.
3091 # The keys defined within a source must be a C_IDENTIFIER. All invalid keys
3092 # will be reported as an event when the container is starting. When a key
3093 # exists in multiple sources, the value associated with the last source will
3094 # take precedence. Values defined by an Env with a duplicate key will take
3095 # precedence. Cannot be updated. +optional
3096 { # EnvFromSource represents the source of a set of ConfigMaps
3097 &quot;prefix&quot;: &quot;A String&quot;, # An optional identifier to prepend to each key in the ConfigMap. Must be a
3098 # C_IDENTIFIER. +optional
3099 &quot;configMapRef&quot;: { # ConfigMapEnvSource selects a ConfigMap to populate the environment # The ConfigMap to select from
3100 # +optional
3101 # variables with.
3102 #
3103 # The contents of the target ConfigMap&#x27;s Data field will represent the
3104 # key-value pairs as environment variables.
3105 &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
3106 # directly into the message. Use the &quot;name&quot; field instead.
3107 # referenced object inside the same namespace.
3108 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
3109 # More info:
3110 # https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
3111 },
3112 &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported
3113 #
3114 # Cloud Run for Anthos: supported
3115 #
3116 # Specify whether the ConfigMap must be defined
3117 # +optional
3118 &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
3119 #
3120 # Cloud Run for Anthos: supported
3121 #
3122 # The ConfigMap to select from.
3123 },
3124 &quot;secretRef&quot;: { # SecretEnvSource selects a Secret to populate the environment # The Secret to select from
3125 # +optional
3126 # variables with.
3127 #
3128 # The contents of the target Secret&#x27;s Data field will represent the
3129 # key-value pairs as environment variables.
3130 &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
3131 #
3132 # Cloud Run for Anthos: supported
3133 #
3134 # The Secret to select from.
3135 &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
3136 # directly into the message. Use the &quot;name&quot; field instead.
3137 # referenced object inside the same namespace.
3138 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
3139 # More info:
3140 # https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
3141 },
3142 &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported
3143 #
3144 # Cloud Run for Anthos: supported
3145 #
3146 # Specify whether the Secret must be defined
3147 # +optional
3148 },
3149 },
3150 ],
3151 &quot;name&quot;: &quot;A String&quot;, # Name of the container specified as a DNS_LABEL.
3152 # Each container must have a unique name (DNS_LABEL).
3153 # Cannot be updated.
3154 &quot;command&quot;: [ # Entrypoint array. Not executed within a shell.
3155 # The docker image&#x27;s ENTRYPOINT is used if this is not provided.
3156 # Variable references $(VAR_NAME) are expanded using the container&#x27;s
3157 # environment. If a variable cannot be resolved, the reference in the input
3158 # string will be unchanged. The $(VAR_NAME) syntax can be escaped with a
3159 # double $$, ie: $$(VAR_NAME). Escaped references will never be expanded,
3160 # regardless of whether the variable exists or not.
3161 # Cannot be updated.
3162 # More info:
3163 # https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
3164 # +optional
3165 &quot;A String&quot;,
3166 ],
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003167 },
Bu Sun Kim65020912020-05-20 12:08:20 -07003168 &quot;volumes&quot;: [
3169 { # Volume represents a named volume in a container.
3170 &quot;configMap&quot;: { # Adapts a ConfigMap into a volume.
3171 # The contents of the target ConfigMap&#x27;s Data field will be presented in a
3172 # volume as files using the keys in the Data field as the file names, unless
3173 # the items element is populated with specific mappings of keys to paths.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07003174 &quot;optional&quot;: True or False, # Specify whether the Secret or its keys must be defined.
Bu Sun Kim65020912020-05-20 12:08:20 -07003175 &quot;name&quot;: &quot;A String&quot;, # Name of the config.
3176 &quot;defaultMode&quot;: 42, # Mode bits to use on created files by default. Must be a value between 0 and
3177 # 0777. Defaults to 0644. Directories within the path are not affected by
3178 # this setting. This might be in conflict with other options that affect the
3179 # file mode, like fsGroup, and the result can be other mode bits set.
3180 &quot;items&quot;: [ # If unspecified, each key-value pair in the Data field of the referenced
3181 # Secret will be projected into the volume as a file whose name is the
3182 # key and content is the value. If specified, the listed keys will be
3183 # projected into the specified paths, and unlisted keys will not be
3184 # present. If a key is specified which is not present in the Secret,
3185 # the volume setup will error unless it is marked optional.
3186 { # Maps a string key to a path within a volume.
Bu Sun Kim65020912020-05-20 12:08:20 -07003187 &quot;path&quot;: &quot;A String&quot;, # The relative path of the file to map the key to.
3188 # May not be an absolute path.
3189 # May not contain the path element &#x27;..&#x27;.
3190 # May not start with the string &#x27;..&#x27;.
3191 &quot;mode&quot;: 42, # Mode bits to use on this file, must be a value between 0 and 0777. If not
3192 # specified, the volume defaultMode will be used. This might be in conflict
3193 # with other options that affect the file mode, like fsGroup, and the result
3194 # can be other mode bits set. +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07003195 &quot;key&quot;: &quot;A String&quot;, # The key to project.
Bu Sun Kim65020912020-05-20 12:08:20 -07003196 },
3197 ],
Bu Sun Kim65020912020-05-20 12:08:20 -07003198 },
3199 &quot;name&quot;: &quot;A String&quot;, # Volume&#x27;s name.
3200 &quot;secret&quot;: { # The contents of the target Secret&#x27;s Data field will be presented in a volume
3201 # as files using the keys in the Data field as the file names.
Bu Sun Kim65020912020-05-20 12:08:20 -07003202 &quot;defaultMode&quot;: 42, # Mode bits to use on created files by default. Must be a value between 0 and
3203 # 0777. Defaults to 0644. Directories within the path are not affected by
3204 # this setting. This might be in conflict with other options that affect the
3205 # file mode, like fsGroup, and the result can be other mode bits set.
3206 &quot;secretName&quot;: &quot;A String&quot;, # Name of the secret in the container&#x27;s namespace to use.
3207 &quot;items&quot;: [ # If unspecified, each key-value pair in the Data field of the referenced
3208 # Secret will be projected into the volume as a file whose name is the
3209 # key and content is the value. If specified, the listed keys will be
3210 # projected into the specified paths, and unlisted keys will not be
3211 # present. If a key is specified which is not present in the Secret,
3212 # the volume setup will error unless it is marked optional.
3213 { # Maps a string key to a path within a volume.
Bu Sun Kim65020912020-05-20 12:08:20 -07003214 &quot;path&quot;: &quot;A String&quot;, # The relative path of the file to map the key to.
3215 # May not be an absolute path.
3216 # May not contain the path element &#x27;..&#x27;.
3217 # May not start with the string &#x27;..&#x27;.
3218 &quot;mode&quot;: 42, # Mode bits to use on this file, must be a value between 0 and 0777. If not
3219 # specified, the volume defaultMode will be used. This might be in conflict
3220 # with other options that affect the file mode, like fsGroup, and the result
3221 # can be other mode bits set. +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07003222 &quot;key&quot;: &quot;A String&quot;, # The key to project.
Bu Sun Kim65020912020-05-20 12:08:20 -07003223 },
3224 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07003225 &quot;optional&quot;: True or False, # Specify whether the Secret or its keys must be defined.
Bu Sun Kim65020912020-05-20 12:08:20 -07003226 },
3227 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003228 ],
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003229 },
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07003230 &quot;metadata&quot;: { # ObjectMeta is metadata that all persisted resources must have, which includes # Optional metadata for this Revision, including labels and annotations. Name
3231 # will be generated by the Configuration.
3232 # To set minimum instances for this revision, use the
3233 # &quot;autoscaling.knative.dev/minScale&quot; annotation key. (Cloud Run on GKE only).
3234 # To set maximum instances for this revision, use the
3235 # &quot;autoscaling.knative.dev/maxScale&quot; annotation key.
3236 # To set Cloud SQL connections for the revision, use the
3237 # &quot;run.googleapis.com/cloudsql-instances&quot; annotation key. Values should be
3238 # comma separated.
3239 # all objects users must create.
3240 &quot;generateName&quot;: &quot;A String&quot;, # Not currently supported by Cloud Run.
3241 #
3242 # GenerateName is an optional prefix, used by the server, to generate a
3243 # unique name ONLY IF the Name field has not been provided. If this field is
3244 # used, the name returned to the client will be different than the name
3245 # passed. This value will also be combined with a unique suffix. The provided
3246 # value has the same validation rules as the Name field, and may be truncated
3247 # by the length of the suffix required to make the value unique on the
3248 # server.
3249 #
3250 # If this field is specified and the generated name exists, the server will
3251 # NOT return a 409 - instead, it will either return 201 Created or 500 with
3252 # Reason ServerTimeout indicating a unique name could not be found in the
3253 # time allotted, and the client should retry (optionally after the time
3254 # indicated in the Retry-After header).
3255 #
3256 # Applied only if Name is not specified.
3257 # More info:
3258 # https://git.k8s.io/community/contributors/devel/api-conventions.md#idempotency
3259 # +optional
3260 # string generateName = 2;
3261 &quot;name&quot;: &quot;A String&quot;, # Name must be unique within a namespace, within a Cloud Run region.
3262 # Is required when creating
3263 # resources, although some resources may allow a client to request the
3264 # generation of an appropriate name automatically. Name is primarily intended
3265 # for creation idempotence and configuration definition. Cannot be updated.
3266 # More info: http://kubernetes.io/docs/user-guide/identifiers#names
3267 # +optional
3268 &quot;deletionGracePeriodSeconds&quot;: 42, # Not currently supported by Cloud Run.
3269 #
3270 # Number of seconds allowed for this object to gracefully terminate before
3271 # it will be removed from the system. Only set when deletionTimestamp is also
3272 # set. May only be shortened. Read-only. +optional
3273 &quot;clusterName&quot;: &quot;A String&quot;, # Not currently supported by Cloud Run.
3274 #
3275 # The name of the cluster which the object belongs to.
3276 # This is used to distinguish resources with same name and namespace in
3277 # different clusters. This field is not set anywhere right now and apiserver
3278 # is going to ignore it if set in create or update request. +optional
3279 &quot;finalizers&quot;: [ # Not currently supported by Cloud Run.
3280 #
3281 # Must be empty before the object is deleted from the registry. Each entry
3282 # is an identifier for the responsible component that will remove the entry
3283 # from the list. If the deletionTimestamp of the object is non-nil, entries
3284 # in this list can only be removed.
3285 # +optional
3286 # +patchStrategy=merge
3287 &quot;A String&quot;,
3288 ],
3289 &quot;deletionTimestamp&quot;: &quot;A String&quot;, # DeletionTimestamp is RFC 3339 date and time at which this resource will be
3290 # deleted. This field is set by the server when a graceful deletion is
3291 # requested by the user, and is not directly settable by a client. The
3292 # resource is expected to be deleted (no longer visible from resource lists,
3293 # and not reachable by name) after the time in this field, once the
3294 # finalizers list is empty. As long as the finalizers list contains items,
3295 # deletion is blocked. Once the deletionTimestamp is set, this value may not
3296 # be unset or be set further into the future, although it may be shortened or
3297 # the resource may be deleted prior to this time. For example, a user may
3298 # request that a pod is deleted in 30 seconds. The Kubelet will react by
3299 # sending a graceful termination signal to the containers in the pod. After
3300 # that 30 seconds, the Kubelet will send a hard termination signal (SIGKILL)
3301 # to the container and after cleanup, remove the pod from the API. In the
3302 # presence of network partitions, this object may still exist after this
3303 # timestamp, until an administrator or automated process can determine the
3304 # resource is fully terminated.
3305 # If not set, graceful deletion of the object has not been requested.
3306 #
3307 # Populated by the system when a graceful deletion is requested.
3308 # Read-only.
3309 # More info:
3310 # https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
3311 # +optional
3312 &quot;ownerReferences&quot;: [ # List of objects that own this object. If ALL objects in the list have
3313 # been deleted, this object will be garbage collected.
3314 # +optional
3315 { # OwnerReference contains enough information to let you identify an owning
3316 # object. Currently, an owning object must be in the same namespace, so there
3317 # is no namespace field.
3318 &quot;controller&quot;: True or False, # If true, this reference points to the managing controller.
3319 # +optional
3320 &quot;kind&quot;: &quot;A String&quot;, # Kind of the referent.
3321 # More info:
3322 # https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds
3323 &quot;blockOwnerDeletion&quot;: True or False, # If true, AND if the owner has the &quot;foregroundDeletion&quot; finalizer, then
3324 # the owner cannot be deleted from the key-value store until this
3325 # reference is removed.
3326 # Defaults to false.
3327 # To set this field, a user needs &quot;delete&quot; permission of the owner,
3328 # otherwise 422 (Unprocessable Entity) will be returned.
3329 # +optional
3330 &quot;apiVersion&quot;: &quot;A String&quot;, # API version of the referent.
3331 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
3332 # More info: http://kubernetes.io/docs/user-guide/identifiers#names
3333 &quot;uid&quot;: &quot;A String&quot;, # UID of the referent.
3334 # More info: http://kubernetes.io/docs/user-guide/identifiers#uids
3335 },
3336 ],
3337 &quot;creationTimestamp&quot;: &quot;A String&quot;, # CreationTimestamp is a timestamp representing the server time when this
3338 # object was created. It is not guaranteed to be set in happens-before order
3339 # across separate operations. Clients may not set this value. It is
3340 # represented in RFC3339 form and is in UTC.
3341 #
3342 # Populated by the system.
3343 # Read-only.
3344 # Null for lists.
3345 # More info:
3346 # https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
3347 # +optional
3348 &quot;labels&quot;: { # Map of string keys and values that can be used to organize and categorize
3349 # (scope and select) objects. May match selectors of replication controllers
3350 # and routes.
3351 # More info: http://kubernetes.io/docs/user-guide/labels
3352 # +optional
3353 &quot;a_key&quot;: &quot;A String&quot;,
3354 },
3355 &quot;generation&quot;: 42, # A sequence number representing a specific generation of the desired state.
3356 # Populated by the system. Read-only.
3357 # +optional
3358 &quot;resourceVersion&quot;: &quot;A String&quot;, # An opaque value that represents the internal version of this object that
3359 # can be used by clients to determine when objects have changed. May be used
3360 # for optimistic concurrency, change detection, and the watch operation on a
3361 # resource or set of resources. Clients must treat these values as opaque and
3362 # passed unmodified back to the server. They may only be valid for a
3363 # particular resource or set of resources.
3364 #
3365 # Populated by the system.
3366 # Read-only.
3367 # Value must be treated as opaque by clients and .
3368 # More info:
3369 # https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency
3370 # +optional
3371 &quot;selfLink&quot;: &quot;A String&quot;, # SelfLink is a URL representing this object.
3372 # Populated by the system.
3373 # Read-only.
3374 # +optional
3375 # string selfLink = 4;
3376 &quot;uid&quot;: &quot;A String&quot;, # UID is the unique in time and space value for this object. It is typically
3377 # generated by the server on successful creation of a resource and is not
3378 # allowed to change on PUT operations.
3379 #
3380 # Populated by the system.
3381 # Read-only.
3382 # More info: http://kubernetes.io/docs/user-guide/identifiers#uids
3383 # +optional
3384 &quot;namespace&quot;: &quot;A String&quot;, # Namespace defines the space within each name must be unique, within a
3385 # Cloud Run region. In Cloud Run the namespace must be equal to either the
3386 # project ID or project number.
3387 &quot;annotations&quot;: { # Annotations is an unstructured key value map stored with a resource that
3388 # may be set by external tools to store and retrieve arbitrary metadata. They
3389 # are not queryable and should be preserved when modifying objects. More
3390 # info: http://kubernetes.io/docs/user-guide/annotations +optional
3391 &quot;a_key&quot;: &quot;A String&quot;,
3392 },
3393 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003394 },
Bu Sun Kim65020912020-05-20 12:08:20 -07003395 &quot;generation&quot;: 42, # Deprecated and not currently populated by Cloud Run. See
3396 # metadata.generation instead, which is the sequence number containing the
3397 # latest generation of the desired state.
3398 #
3399 # Read-only.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003400 },
Bu Sun Kim65020912020-05-20 12:08:20 -07003401 &quot;kind&quot;: &quot;A String&quot;, # The kind of resource, in this case always &quot;Configuration&quot;.
3402 &quot;metadata&quot;: { # ObjectMeta is metadata that all persisted resources must have, which includes # Metadata associated with this Configuration, including name, namespace,
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003403 # labels, and annotations.
3404 # all objects users must create.
Bu Sun Kim65020912020-05-20 12:08:20 -07003405 &quot;generateName&quot;: &quot;A String&quot;, # Not currently supported by Cloud Run.
3406 #
3407 # GenerateName is an optional prefix, used by the server, to generate a
3408 # unique name ONLY IF the Name field has not been provided. If this field is
3409 # used, the name returned to the client will be different than the name
3410 # passed. This value will also be combined with a unique suffix. The provided
3411 # value has the same validation rules as the Name field, and may be truncated
3412 # by the length of the suffix required to make the value unique on the
3413 # server.
3414 #
3415 # If this field is specified and the generated name exists, the server will
3416 # NOT return a 409 - instead, it will either return 201 Created or 500 with
3417 # Reason ServerTimeout indicating a unique name could not be found in the
3418 # time allotted, and the client should retry (optionally after the time
3419 # indicated in the Retry-After header).
3420 #
3421 # Applied only if Name is not specified.
3422 # More info:
3423 # https://git.k8s.io/community/contributors/devel/api-conventions.md#idempotency
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003424 # +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07003425 # string generateName = 2;
3426 &quot;name&quot;: &quot;A String&quot;, # Name must be unique within a namespace, within a Cloud Run region.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003427 # Is required when creating
3428 # resources, although some resources may allow a client to request the
3429 # generation of an appropriate name automatically. Name is primarily intended
3430 # for creation idempotence and configuration definition. Cannot be updated.
3431 # More info: http://kubernetes.io/docs/user-guide/identifiers#names
3432 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07003433 &quot;deletionGracePeriodSeconds&quot;: 42, # Not currently supported by Cloud Run.
3434 #
3435 # Number of seconds allowed for this object to gracefully terminate before
3436 # it will be removed from the system. Only set when deletionTimestamp is also
3437 # set. May only be shortened. Read-only. +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07003438 &quot;clusterName&quot;: &quot;A String&quot;, # Not currently supported by Cloud Run.
3439 #
3440 # The name of the cluster which the object belongs to.
3441 # This is used to distinguish resources with same name and namespace in
3442 # different clusters. This field is not set anywhere right now and apiserver
3443 # is going to ignore it if set in create or update request. +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07003444 &quot;finalizers&quot;: [ # Not currently supported by Cloud Run.
3445 #
3446 # Must be empty before the object is deleted from the registry. Each entry
3447 # is an identifier for the responsible component that will remove the entry
3448 # from the list. If the deletionTimestamp of the object is non-nil, entries
3449 # in this list can only be removed.
3450 # +optional
3451 # +patchStrategy=merge
3452 &quot;A String&quot;,
3453 ],
3454 &quot;deletionTimestamp&quot;: &quot;A String&quot;, # DeletionTimestamp is RFC 3339 date and time at which this resource will be
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003455 # deleted. This field is set by the server when a graceful deletion is
3456 # requested by the user, and is not directly settable by a client. The
3457 # resource is expected to be deleted (no longer visible from resource lists,
3458 # and not reachable by name) after the time in this field, once the
3459 # finalizers list is empty. As long as the finalizers list contains items,
3460 # deletion is blocked. Once the deletionTimestamp is set, this value may not
3461 # be unset or be set further into the future, although it may be shortened or
3462 # the resource may be deleted prior to this time. For example, a user may
3463 # request that a pod is deleted in 30 seconds. The Kubelet will react by
3464 # sending a graceful termination signal to the containers in the pod. After
3465 # that 30 seconds, the Kubelet will send a hard termination signal (SIGKILL)
3466 # to the container and after cleanup, remove the pod from the API. In the
3467 # presence of network partitions, this object may still exist after this
3468 # timestamp, until an administrator or automated process can determine the
3469 # resource is fully terminated.
3470 # If not set, graceful deletion of the object has not been requested.
3471 #
3472 # Populated by the system when a graceful deletion is requested.
3473 # Read-only.
3474 # More info:
3475 # https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
3476 # +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07003477 &quot;ownerReferences&quot;: [ # List of objects that own this object. If ALL objects in the list have
3478 # been deleted, this object will be garbage collected.
3479 # +optional
3480 { # OwnerReference contains enough information to let you identify an owning
3481 # object. Currently, an owning object must be in the same namespace, so there
3482 # is no namespace field.
Bu Sun Kim65020912020-05-20 12:08:20 -07003483 &quot;controller&quot;: True or False, # If true, this reference points to the managing controller.
3484 # +optional
3485 &quot;kind&quot;: &quot;A String&quot;, # Kind of the referent.
3486 # More info:
3487 # https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds
3488 &quot;blockOwnerDeletion&quot;: True or False, # If true, AND if the owner has the &quot;foregroundDeletion&quot; finalizer, then
3489 # the owner cannot be deleted from the key-value store until this
3490 # reference is removed.
3491 # Defaults to false.
3492 # To set this field, a user needs &quot;delete&quot; permission of the owner,
3493 # otherwise 422 (Unprocessable Entity) will be returned.
3494 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07003495 &quot;apiVersion&quot;: &quot;A String&quot;, # API version of the referent.
3496 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
3497 # More info: http://kubernetes.io/docs/user-guide/identifiers#names
3498 &quot;uid&quot;: &quot;A String&quot;, # UID of the referent.
3499 # More info: http://kubernetes.io/docs/user-guide/identifiers#uids
Bu Sun Kim65020912020-05-20 12:08:20 -07003500 },
3501 ],
3502 &quot;creationTimestamp&quot;: &quot;A String&quot;, # CreationTimestamp is a timestamp representing the server time when this
3503 # object was created. It is not guaranteed to be set in happens-before order
3504 # across separate operations. Clients may not set this value. It is
3505 # represented in RFC3339 form and is in UTC.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003506 #
Bu Sun Kim65020912020-05-20 12:08:20 -07003507 # Populated by the system.
3508 # Read-only.
3509 # Null for lists.
3510 # More info:
3511 # https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
3512 # +optional
3513 &quot;labels&quot;: { # Map of string keys and values that can be used to organize and categorize
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003514 # (scope and select) objects. May match selectors of replication controllers
3515 # and routes.
3516 # More info: http://kubernetes.io/docs/user-guide/labels
3517 # +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07003518 &quot;a_key&quot;: &quot;A String&quot;,
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003519 },
Bu Sun Kim65020912020-05-20 12:08:20 -07003520 &quot;generation&quot;: 42, # A sequence number representing a specific generation of the desired state.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003521 # Populated by the system. Read-only.
3522 # +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07003523 &quot;resourceVersion&quot;: &quot;A String&quot;, # An opaque value that represents the internal version of this object that
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003524 # can be used by clients to determine when objects have changed. May be used
3525 # for optimistic concurrency, change detection, and the watch operation on a
3526 # resource or set of resources. Clients must treat these values as opaque and
3527 # passed unmodified back to the server. They may only be valid for a
3528 # particular resource or set of resources.
3529 #
3530 # Populated by the system.
3531 # Read-only.
3532 # Value must be treated as opaque by clients and .
3533 # More info:
3534 # https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency
3535 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07003536 &quot;selfLink&quot;: &quot;A String&quot;, # SelfLink is a URL representing this object.
3537 # Populated by the system.
3538 # Read-only.
3539 # +optional
3540 # string selfLink = 4;
Bu Sun Kim65020912020-05-20 12:08:20 -07003541 &quot;uid&quot;: &quot;A String&quot;, # UID is the unique in time and space value for this object. It is typically
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003542 # generated by the server on successful creation of a resource and is not
3543 # allowed to change on PUT operations.
3544 #
3545 # Populated by the system.
3546 # Read-only.
3547 # More info: http://kubernetes.io/docs/user-guide/identifiers#uids
3548 # +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07003549 &quot;namespace&quot;: &quot;A String&quot;, # Namespace defines the space within each name must be unique, within a
3550 # Cloud Run region. In Cloud Run the namespace must be equal to either the
3551 # project ID or project number.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07003552 &quot;annotations&quot;: { # Annotations is an unstructured key value map stored with a resource that
3553 # may be set by external tools to store and retrieve arbitrary metadata. They
3554 # are not queryable and should be preserved when modifying objects. More
3555 # info: http://kubernetes.io/docs/user-guide/annotations +optional
3556 &quot;a_key&quot;: &quot;A String&quot;,
3557 },
Bu Sun Kim65020912020-05-20 12:08:20 -07003558 },
3559 &quot;status&quot;: { # ConfigurationStatus communicates the observed state of the Configuration # Status communicates the observed state of the Configuration (from the
3560 # controller).
3561 # (from the controller).
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07003562 &quot;latestCreatedRevisionName&quot;: &quot;A String&quot;, # LatestCreatedRevisionName is the last revision that was created from this
3563 # Configuration. It might not be ready yet, for that use
3564 # LatestReadyRevisionName.
3565 &quot;latestReadyRevisionName&quot;: &quot;A String&quot;, # LatestReadyRevisionName holds the name of the latest Revision stamped out
3566 # from this Configuration that has had its &quot;Ready&quot; condition become &quot;True&quot;.
Bu Sun Kim65020912020-05-20 12:08:20 -07003567 &quot;conditions&quot;: [ # Conditions communicates information about ongoing/complete
3568 # reconciliation processes that bring the &quot;spec&quot; inline with the observed
3569 # state of the world.
3570 { # ConfigurationCondition defines a readiness condition for a Configuration.
3571 &quot;message&quot;: &quot;A String&quot;, # Human-readable message indicating details about last transition.
3572 # +optional
3573 &quot;lastTransitionTime&quot;: &quot;A String&quot;, # Last time the condition transitioned from one status to another.
3574 # +optional
3575 &quot;status&quot;: &quot;A String&quot;, # Status of the condition, one of True, False, Unknown.
3576 &quot;severity&quot;: &quot;A String&quot;, # How to interpret failures of this condition, one of Error, Warning, Info
3577 # +optional
3578 &quot;reason&quot;: &quot;A String&quot;, # One-word CamelCase reason for the condition&#x27;s last transition.
3579 # +optional
3580 &quot;type&quot;: &quot;A String&quot;, # ConfigurationConditionType is used to communicate the status of the
3581 # reconciliation process. See also:
3582 # https://github.com/knative/serving/blob/master/docs/spec/errors.md#error-conditions-and-reporting
3583 # Types include:&quot;Ready&quot;
3584 },
3585 ],
3586 &quot;observedGeneration&quot;: 42, # ObservedGeneration is the &#x27;Generation&#x27; of the Configuration that
3587 # was last processed by the controller. The observed generation is updated
3588 # even if the controller failed to process the spec and create the Revision.
3589 #
3590 # Clients polling for completed reconciliation should poll until
3591 # observedGeneration = metadata.generation, and the Ready condition&#x27;s status
3592 # is True or False.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003593 },
3594 }</pre>
3595</div>
3596
3597<div class="method">
Bu Sun Kim65020912020-05-20 12:08:20 -07003598 <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 -07003599 <pre>Rpc to list configurations.
3600
3601Args:
3602 parent: string, The project ID or project number from which the configurations should be
3603listed. (required)
Bu Sun Kim65020912020-05-20 12:08:20 -07003604 limit: integer, The maximum number of records that should be returned.
3605 watch: boolean, Flag that indicates that the client expects to watch this resource as well.
3606Not currently used by Cloud Run.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003607 labelSelector: string, Allows to filter resources based on a label. Supported operations are
3608=, !=, exists, in, and notIn.
Bu Sun Kim65020912020-05-20 12:08:20 -07003609 resourceVersion: string, The baseline resource version from which the list or watch operation should
3610start. Not currently used by Cloud Run.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003611 includeUninitialized: boolean, Not currently used by Cloud Run.
Bu Sun Kim65020912020-05-20 12:08:20 -07003612 fieldSelector: string, Allows to filter resources based on a specific value for a field name.
3613Send this in a query string format. i.e. &#x27;metadata.name%3Dlorem&#x27;.
3614Not currently used by Cloud Run.
3615 continue: string, Optional encoded string to continue paging.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003616 x__xgafv: string, V1 error format.
3617 Allowed values
3618 1 - v1 error format
3619 2 - v2 error format
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003620
3621Returns:
3622 An object of the form:
3623
3624 { # ListConfigurationsResponse is a list of Configuration resources.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07003625 &quot;kind&quot;: &quot;A String&quot;, # The kind of this resource, in this case &quot;ConfigurationList&quot;.
3626 &quot;unreachable&quot;: [ # Locations that could not be reached.
3627 &quot;A String&quot;,
3628 ],
Bu Sun Kim65020912020-05-20 12:08:20 -07003629 &quot;metadata&quot;: { # ListMeta describes metadata that synthetic resources must have, including # Metadata associated with this Configuration list.
3630 # lists and various status objects. A resource may have only one of
3631 # {ObjectMeta, ListMeta}.
3632 &quot;resourceVersion&quot;: &quot;A String&quot;, # String that identifies the server&#x27;s internal version of this object that
3633 # can be used by clients to determine when objects have changed. Value must
3634 # be treated as opaque by clients and passed unmodified back to the server.
3635 # Populated by the system.
3636 # Read-only.
3637 # More info:
3638 # https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency
3639 # +optional
3640 &quot;continue&quot;: &quot;A String&quot;, # continue may be set if the user set a limit on the number of items
3641 # returned, and indicates that the server has more data available. The value
3642 # is opaque and may be used to issue another request to the endpoint that
3643 # served this list to retrieve the next set of available objects. Continuing
3644 # a list may not be possible if the server configuration has changed or more
3645 # than a few minutes have passed. The resourceVersion field returned when
3646 # using this continue value will be identical to the value in the first
3647 # response.
3648 &quot;selfLink&quot;: &quot;A String&quot;, # SelfLink is a URL representing this object.
3649 # Populated by the system.
3650 # Read-only.
3651 # +optional
3652 },
3653 &quot;items&quot;: [ # List of Configurations.
3654 { # Configuration represents the &quot;floating HEAD&quot; of a linear history of
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003655 # Revisions, and optionally how the containers those revisions reference are
Bu Sun Kim65020912020-05-20 12:08:20 -07003656 # built. Users create new Revisions by updating the Configuration&#x27;s spec. The
3657 # &quot;latest created&quot; revision&#x27;s name is available under status, as is the &quot;latest
3658 # ready&quot; revision&#x27;s name. See also:
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003659 # https://github.com/knative/serving/blob/master/docs/spec/overview.md#configuration
Bu Sun Kim65020912020-05-20 12:08:20 -07003660 &quot;apiVersion&quot;: &quot;A String&quot;, # The API version for this call such as &quot;serving.knative.dev/v1alpha1&quot;.
3661 &quot;spec&quot;: { # ConfigurationSpec holds the desired state of the Configuration (from the # Spec holds the desired state of the Configuration (from the client).
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003662 # client).
Bu Sun Kim65020912020-05-20 12:08:20 -07003663 &quot;template&quot;: { # RevisionTemplateSpec describes the data a revision should have when created # Template holds the latest specification for the Revision to be stamped out.
3664 # from a template. Based on:
3665 # https://github.com/kubernetes/api/blob/e771f807/core/v1/types.go#L3179-L3190
Bu Sun Kim65020912020-05-20 12:08:20 -07003666 &quot;spec&quot;: { # RevisionSpec holds the desired state of the Revision (from the client). # RevisionSpec holds the desired state of the Revision (from the client).
3667 &quot;containerConcurrency&quot;: 42, # (Optional)
3668 #
3669 # ContainerConcurrency specifies the maximum allowed in-flight (concurrent)
3670 # requests per container instance of the Revision.
3671 #
3672 # Cloud Run fully managed: supported, defaults to 80
3673 #
3674 # Cloud Run on GKE: supported, defaults to 0, which means concurrency
3675 # to the application is not limited, and the system decides the
3676 # target concurrency for the autoscaler.
Bu Sun Kim65020912020-05-20 12:08:20 -07003677 &quot;containers&quot;: [ # Containers holds the single container that defines the unit of execution
3678 # for this Revision. In the context of a Revision, we disallow a number of
3679 # fields on this Container, including: name and lifecycle.
3680 # In Cloud Run, only a single container may be provided.
3681 { # A single application container.
3682 # This specifies both the container to run, the command to run in the container
3683 # and the arguments to supply to it.
3684 # Note that additional arguments may be supplied by the system to the container
3685 # at runtime.
Bu Sun Kim65020912020-05-20 12:08:20 -07003686 &quot;terminationMessagePolicy&quot;: &quot;A String&quot;, # Indicate how the termination message should be populated. File will use the
3687 # contents of terminationMessagePath to populate the container status message
3688 # on both success and failure. FallbackToLogsOnError will use the last chunk
3689 # of container log output if the termination message file is empty and the
3690 # container exited with an error. The log output is limited to 2048 bytes or
3691 # 80 lines, whichever is smaller. Defaults to File. Cannot be updated.
3692 # +optional
3693 &quot;securityContext&quot;: { # SecurityContext holds security configuration that will be applied to a # Security options the pod should run with.
3694 # More info: https://kubernetes.io/docs/concepts/policy/security-context/
3695 # More info:
3696 # https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
3697 # +optional
3698 # container. Some fields are present in both SecurityContext and
3699 # PodSecurityContext. When both are set, the values in SecurityContext take
3700 # precedence.
3701 &quot;capabilities&quot;: { # Adds and removes POSIX capabilities from running containers. # The capabilities to add/drop when running containers.
3702 # Defaults to the default set of capabilities granted by the container
3703 # runtime. +optional
3704 &quot;add&quot;: [ # Added capabilities
3705 # +optional
3706 &quot;A String&quot;,
3707 ],
3708 &quot;drop&quot;: [ # Removed capabilities
3709 # +optional
3710 &quot;A String&quot;,
3711 ],
3712 },
3713 &quot;runAsNonRoot&quot;: True or False, # Indicates that the container must run as a non-root user.
3714 # If true, the Kubelet will validate the image at runtime to ensure that it
3715 # does not run as UID 0 (root) and fail to start the container if it does.
3716 # If unset or false, no such validation will be performed.
3717 # May also be set in PodSecurityContext. If set in both SecurityContext and
3718 # PodSecurityContext, the value specified in SecurityContext takes
3719 # precedence. +optional
3720 &quot;runAsGroup&quot;: 42, # The GID to run the entrypoint of the container process.
3721 # Uses runtime default if unset.
3722 # May also be set in PodSecurityContext. If set in both SecurityContext and
3723 # PodSecurityContext, the value specified in SecurityContext takes
3724 # precedence. +optional
3725 &quot;privileged&quot;: True or False, # Run container in privileged mode.
3726 # Processes in privileged containers are essentially equivalent to root on
3727 # the host. Defaults to false. +optional
3728 &quot;allowPrivilegeEscalation&quot;: True or False, # AllowPrivilegeEscalation controls whether a process can gain more
3729 # privileges than its parent process. This bool directly controls if
3730 # the no_new_privs flag will be set on the container process.
3731 # AllowPrivilegeEscalation is true always when the container is:
3732 # 1) run as Privileged
3733 # 2) has CAP_SYS_ADMIN
3734 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07003735 &quot;readOnlyRootFilesystem&quot;: True or False, # Whether this container has a read-only root filesystem.
3736 # Default is false.
3737 # +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07003738 &quot;seLinuxOptions&quot;: { # SELinuxOptions are the labels to be applied to the container # The SELinux context to be applied to the container.
3739 # If unspecified, the container runtime will allocate a random SELinux
3740 # context for each container. May also be set in PodSecurityContext. If set
3741 # in both SecurityContext and PodSecurityContext, the value specified in
3742 # SecurityContext takes precedence. +optional
3743 &quot;role&quot;: &quot;A String&quot;, # Role is a SELinux role label that applies to the container.
3744 # +optional
3745 &quot;level&quot;: &quot;A String&quot;, # Level is SELinux level label that applies to the container.
3746 # +optional
3747 &quot;user&quot;: &quot;A String&quot;, # User is a SELinux user label that applies to the container.
3748 # +optional
3749 &quot;type&quot;: &quot;A String&quot;, # Type is a SELinux type label that applies to the container.
3750 # +optional
3751 },
Bu Sun Kim65020912020-05-20 12:08:20 -07003752 &quot;runAsUser&quot;: 42, # The UID to run the entrypoint of the container process.
3753 # Defaults to user specified in image metadata if unspecified.
3754 # May also be set in PodSecurityContext. If set in both SecurityContext and
3755 # PodSecurityContext, the value specified in SecurityContext takes
3756 # precedence. +optional
3757 },
3758 &quot;livenessProbe&quot;: { # Probe describes a health check to be performed against a container to # Periodic probe of container liveness.
3759 # Container will be restarted if the probe fails.
3760 # Cannot be updated.
3761 # More info:
3762 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
3763 # +optional
3764 # determine whether it is alive or ready to receive traffic.
Bu Sun Kim65020912020-05-20 12:08:20 -07003765 &quot;initialDelaySeconds&quot;: 42, # Number of seconds after the container has started before liveness probes
3766 # are initiated. More info:
3767 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
3768 # +optional
3769 &quot;timeoutSeconds&quot;: 42, # Number of seconds after which the probe times out.
3770 # Defaults to 1 second. Minimum value is 1.
3771 # More info:
3772 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
3773 # +optional
3774 &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 -07003775 &quot;tcpSocket&quot;: { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
3776 # TCP hooks not yet supported
3777 &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.
3778 # Number must be in the range 1 to 65535.
3779 # Name must be an IANA_SVC_NAME.
3780 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
3781 # inner type. This allows you to have, for example, a JSON field that can
3782 # accept a name or number.
3783 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
3784 &quot;type&quot;: 42, # The type of the value.
3785 &quot;intVal&quot;: 42, # The int value.
3786 },
3787 &quot;host&quot;: &quot;A String&quot;, # Optional: Host name to connect to, defaults to the pod IP.
3788 # +optional
3789 },
Bu Sun Kim65020912020-05-20 12:08:20 -07003790 &quot;exec&quot;: { # ExecAction describes a &quot;run in container&quot; action. # One and only one of the following should be specified.
3791 # Exec specifies the action to take.
3792 # +optional
3793 &quot;command&quot;: &quot;A String&quot;, # Command is the command line to execute inside the container, the working
3794 # directory for the command is root (&#x27;/&#x27;) in the container&#x27;s filesystem. The
3795 # command is simply exec&#x27;d, it is not run inside a shell, so traditional
3796 # shell instructions (&#x27;|&#x27;, etc) won&#x27;t work. To use a shell, you need to
3797 # explicitly call out to that shell. Exit status of 0 is treated as
3798 # live/healthy and non-zero is unhealthy. +optional
3799 },
3800 &quot;httpGet&quot;: { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
3801 # +optional
3802 &quot;httpHeaders&quot;: [ # Custom headers to set in the request. HTTP allows repeated headers.
3803 # +optional
3804 { # HTTPHeader describes a custom header to be used in HTTP probes
Bu Sun Kim65020912020-05-20 12:08:20 -07003805 &quot;name&quot;: &quot;A String&quot;, # The header field name
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07003806 &quot;value&quot;: &quot;A String&quot;, # The header field value
Bu Sun Kim65020912020-05-20 12:08:20 -07003807 },
3808 ],
3809 &quot;path&quot;: &quot;A String&quot;, # Path to access on the HTTP server.
3810 # +optional
3811 &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.
3812 # Number must be in the range 1 to 65535.
3813 # Name must be an IANA_SVC_NAME.
3814 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
3815 # inner type. This allows you to have, for example, a JSON field that can
3816 # accept a name or number.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07003817 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
Bu Sun Kim65020912020-05-20 12:08:20 -07003818 &quot;type&quot;: 42, # The type of the value.
3819 &quot;intVal&quot;: 42, # The int value.
Bu Sun Kim65020912020-05-20 12:08:20 -07003820 },
3821 &quot;host&quot;: &quot;A String&quot;, # Host name to connect to, defaults to the pod IP. You probably want to set
3822 # &quot;Host&quot; in httpHeaders instead.
3823 # +optional
3824 &quot;scheme&quot;: &quot;A String&quot;, # Scheme to use for connecting to the host.
3825 # Defaults to HTTP.
3826 # +optional
3827 },
Bu Sun Kim65020912020-05-20 12:08:20 -07003828 },
3829 &quot;successThreshold&quot;: 42, # Minimum consecutive successes for the probe to be considered successful
3830 # after having failed. Defaults to 1. Must be 1 for liveness. Minimum value
3831 # is 1. +optional
3832 &quot;periodSeconds&quot;: 42, # How often (in seconds) to perform the probe.
3833 # Default to 10 seconds. Minimum value is 1.
3834 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07003835 &quot;failureThreshold&quot;: 42, # Minimum consecutive failures for the probe to be considered failed after
3836 # having succeeded. Defaults to 3. Minimum value is 1. +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07003837 },
3838 &quot;env&quot;: [ # List of environment variables to set in the container.
3839 # Cannot be updated.
3840 # +optional
3841 { # EnvVar represents an environment variable present in a Container.
Bu Sun Kim65020912020-05-20 12:08:20 -07003842 &quot;name&quot;: &quot;A String&quot;, # Name of the environment variable. Must be a C_IDENTIFIER.
3843 &quot;valueFrom&quot;: { # Cloud Run fully managed: not supported # Cloud Run fully managed: not supported
3844 #
3845 # Cloud Run on GKE: supported
3846 #
3847 # Source for the environment variable&#x27;s value. Cannot be used if value is not
3848 # empty. +optional
3849 #
3850 # Cloud Run on GKE: supported
3851 #
3852 # EnvVarSource represents a source for the value of an EnvVar.
3853 &quot;configMapKeyRef&quot;: { # Cloud Run fully managed: not supported # Cloud Run fully managed: not supported
3854 #
3855 # Cloud Run on GKE: supported
3856 #
3857 # Selects a key of a ConfigMap.
3858 # +optional
3859 #
3860 # Cloud Run on GKE: supported
3861 #
3862 # Selects a key from a ConfigMap.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07003863 &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
3864 # directly into the message. Use the &quot;name&quot; field instead.
3865 # referenced object inside the same namespace.
3866 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
3867 # More info:
3868 # https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
3869 },
Bu Sun Kim65020912020-05-20 12:08:20 -07003870 &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported
3871 #
3872 # Cloud Run on GKE: supported
3873 #
3874 # Specify whether the ConfigMap or its key must be defined
3875 # +optional
3876 &quot;key&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
3877 #
3878 # Cloud Run on GKE: supported
3879 #
3880 # The key to select.
3881 &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
3882 #
3883 # Cloud Run on GKE: supported
3884 #
3885 # The ConfigMap to select from.
Bu Sun Kim65020912020-05-20 12:08:20 -07003886 },
3887 &quot;secretKeyRef&quot;: { # Cloud Run fully managed: not supported # Cloud Run fully managed: not supported
3888 #
3889 # Cloud Run on GKE: supported
3890 #
3891 # Selects a key of a secret in the pod&#x27;s namespace
3892 # +optional
3893 #
3894 # Cloud Run on GKE: supported
3895 #
3896 # SecretKeySelector selects a key of a Secret.
Bu Sun Kim65020912020-05-20 12:08:20 -07003897 &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported
3898 #
3899 # Cloud Run on GKE: supported
3900 #
3901 # Specify whether the Secret or its key must be defined
3902 # +optional
3903 &quot;key&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
3904 #
3905 # Cloud Run on GKE: supported
3906 #
3907 # The key of the secret to select from. Must be a valid secret key.
3908 &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
3909 #
3910 # Cloud Run on GKE: supported
3911 #
3912 # The name of the secret in the pod&#x27;s namespace to select from.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07003913 &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
3914 # directly into the message. Use the &quot;name&quot; field instead.
3915 # referenced object inside the same namespace.
3916 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
3917 # More info:
3918 # https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
3919 },
Bu Sun Kim65020912020-05-20 12:08:20 -07003920 },
3921 },
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07003922 &quot;value&quot;: &quot;A String&quot;, # Variable references $(VAR_NAME) are expanded
3923 # using the previous defined environment variables in the container and
3924 # any route environment variables. If a variable cannot be resolved,
3925 # the reference in the input string will be unchanged. The $(VAR_NAME)
3926 # syntax can be escaped with a double $$, ie: $$(VAR_NAME). Escaped
3927 # references will never be expanded, regardless of whether the variable
3928 # exists or not.
3929 # Defaults to &quot;&quot;.
3930 # +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07003931 },
3932 ],
3933 &quot;resources&quot;: { # ResourceRequirements describes the compute resource requirements. # Compute Resources required by this container.
3934 # Cannot be updated.
3935 # More info:
3936 # https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
3937 # +optional
3938 &quot;requestsInMap&quot;: { # Requests describes the minimum amount of compute resources required.
3939 # If Requests is omitted for a container, it defaults to Limits if that is
3940 # explicitly specified, otherwise to an implementation-defined value.
3941 # This is a temporary field created to migrate away from the
3942 # map&lt;string, Quantity&gt; requests field. This is done to become compliant
3943 # with k8s style API.
3944 # This field is deprecated in favor of requests field.
3945 &quot;a_key&quot;: { # The view model of a single quantity, e.g. &quot;800 MiB&quot;. Corresponds to
3946 # https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/generated.proto
3947 &quot;string&quot;: &quot;A String&quot;, # Stringified version of the quantity, e.g., &quot;800 MiB&quot;.
3948 },
3949 },
3950 &quot;requests&quot;: { # Requests describes the minimum amount of compute resources required.
3951 # If Requests is omitted for a container, it defaults to Limits if that is
3952 # explicitly specified, otherwise to an implementation-defined value.
3953 # The values of the map is string form of the &#x27;quantity&#x27; k8s type:
3954 # https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go
3955 &quot;a_key&quot;: &quot;A String&quot;,
3956 },
3957 &quot;limits&quot;: { # Limits describes the maximum amount of compute resources allowed.
3958 # The values of the map is string form of the &#x27;quantity&#x27; k8s type:
3959 # https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go
3960 &quot;a_key&quot;: &quot;A String&quot;,
3961 },
3962 &quot;limitsInMap&quot;: { # Limits describes the maximum amount of compute resources allowed.
3963 # This is a temporary field created to migrate away from the
3964 # map&lt;string, Quantity&gt; limits field. This is done to become compliant
3965 # with k8s style API.
3966 # This field is deprecated in favor of limits field.
3967 &quot;a_key&quot;: { # The view model of a single quantity, e.g. &quot;800 MiB&quot;. Corresponds to
3968 # https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/generated.proto
3969 &quot;string&quot;: &quot;A String&quot;, # Stringified version of the quantity, e.g., &quot;800 MiB&quot;.
3970 },
3971 },
3972 },
3973 &quot;readinessProbe&quot;: { # Probe describes a health check to be performed against a container to # Periodic probe of container service readiness.
3974 # Container will be removed from service endpoints if the probe fails.
3975 # Cannot be updated.
3976 # More info:
3977 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
3978 # +optional
3979 # determine whether it is alive or ready to receive traffic.
Bu Sun Kim65020912020-05-20 12:08:20 -07003980 &quot;initialDelaySeconds&quot;: 42, # Number of seconds after the container has started before liveness probes
3981 # are initiated. More info:
3982 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
3983 # +optional
3984 &quot;timeoutSeconds&quot;: 42, # Number of seconds after which the probe times out.
3985 # Defaults to 1 second. Minimum value is 1.
3986 # More info:
3987 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
3988 # +optional
3989 &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 -07003990 &quot;tcpSocket&quot;: { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
3991 # TCP hooks not yet supported
3992 &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.
3993 # Number must be in the range 1 to 65535.
3994 # Name must be an IANA_SVC_NAME.
3995 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
3996 # inner type. This allows you to have, for example, a JSON field that can
3997 # accept a name or number.
3998 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
3999 &quot;type&quot;: 42, # The type of the value.
4000 &quot;intVal&quot;: 42, # The int value.
4001 },
4002 &quot;host&quot;: &quot;A String&quot;, # Optional: Host name to connect to, defaults to the pod IP.
4003 # +optional
4004 },
Bu Sun Kim65020912020-05-20 12:08:20 -07004005 &quot;exec&quot;: { # ExecAction describes a &quot;run in container&quot; action. # One and only one of the following should be specified.
4006 # Exec specifies the action to take.
4007 # +optional
4008 &quot;command&quot;: &quot;A String&quot;, # Command is the command line to execute inside the container, the working
4009 # directory for the command is root (&#x27;/&#x27;) in the container&#x27;s filesystem. The
4010 # command is simply exec&#x27;d, it is not run inside a shell, so traditional
4011 # shell instructions (&#x27;|&#x27;, etc) won&#x27;t work. To use a shell, you need to
4012 # explicitly call out to that shell. Exit status of 0 is treated as
4013 # live/healthy and non-zero is unhealthy. +optional
4014 },
4015 &quot;httpGet&quot;: { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
4016 # +optional
4017 &quot;httpHeaders&quot;: [ # Custom headers to set in the request. HTTP allows repeated headers.
4018 # +optional
4019 { # HTTPHeader describes a custom header to be used in HTTP probes
Bu Sun Kim65020912020-05-20 12:08:20 -07004020 &quot;name&quot;: &quot;A String&quot;, # The header field name
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07004021 &quot;value&quot;: &quot;A String&quot;, # The header field value
Bu Sun Kim65020912020-05-20 12:08:20 -07004022 },
4023 ],
4024 &quot;path&quot;: &quot;A String&quot;, # Path to access on the HTTP server.
4025 # +optional
4026 &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.
4027 # Number must be in the range 1 to 65535.
4028 # Name must be an IANA_SVC_NAME.
4029 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
4030 # inner type. This allows you to have, for example, a JSON field that can
4031 # accept a name or number.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07004032 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
Bu Sun Kim65020912020-05-20 12:08:20 -07004033 &quot;type&quot;: 42, # The type of the value.
4034 &quot;intVal&quot;: 42, # The int value.
Bu Sun Kim65020912020-05-20 12:08:20 -07004035 },
4036 &quot;host&quot;: &quot;A String&quot;, # Host name to connect to, defaults to the pod IP. You probably want to set
4037 # &quot;Host&quot; in httpHeaders instead.
4038 # +optional
4039 &quot;scheme&quot;: &quot;A String&quot;, # Scheme to use for connecting to the host.
4040 # Defaults to HTTP.
4041 # +optional
4042 },
Bu Sun Kim65020912020-05-20 12:08:20 -07004043 },
4044 &quot;successThreshold&quot;: 42, # Minimum consecutive successes for the probe to be considered successful
4045 # after having failed. Defaults to 1. Must be 1 for liveness. Minimum value
4046 # is 1. +optional
4047 &quot;periodSeconds&quot;: 42, # How often (in seconds) to perform the probe.
4048 # Default to 10 seconds. Minimum value is 1.
4049 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07004050 &quot;failureThreshold&quot;: 42, # Minimum consecutive failures for the probe to be considered failed after
4051 # having succeeded. Defaults to 3. Minimum value is 1. +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07004052 },
4053 &quot;imagePullPolicy&quot;: &quot;A String&quot;, # Image pull policy.
4054 # One of Always, Never, IfNotPresent.
4055 # Defaults to Always if :latest tag is specified, or IfNotPresent otherwise.
4056 # Cannot be updated.
4057 # More info:
4058 # https://kubernetes.io/docs/concepts/containers/images#updating-images
4059 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07004060 &quot;lifecycle&quot;: { # Lifecycle describes actions that the management system should take in # Actions that the management system should take in response to container
4061 # lifecycle events. Cannot be updated. +optional
4062 # response to container lifecycle events. For the PostStart and PreStop
4063 # lifecycle handlers, management of the container blocks until the action is
4064 # complete, unless the container process fails, in which case the handler is
4065 # aborted.
4066 &quot;preStop&quot;: { # Handler defines a specific action that should be taken # PreStop is called immediately before a container is terminated.
4067 # The container is terminated after the handler completes.
4068 # The reason for termination is passed to the handler.
4069 # Regardless of the outcome of the handler, the container is eventually
4070 # terminated. Other management of the container blocks until the hook
4071 # completes. More info:
4072 # https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
4073 # +optional
4074 &quot;tcpSocket&quot;: { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
4075 # TCP hooks not yet supported
4076 &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.
4077 # Number must be in the range 1 to 65535.
4078 # Name must be an IANA_SVC_NAME.
4079 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
4080 # inner type. This allows you to have, for example, a JSON field that can
4081 # accept a name or number.
4082 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
4083 &quot;type&quot;: 42, # The type of the value.
4084 &quot;intVal&quot;: 42, # The int value.
4085 },
4086 &quot;host&quot;: &quot;A String&quot;, # Optional: Host name to connect to, defaults to the pod IP.
4087 # +optional
4088 },
4089 &quot;exec&quot;: { # ExecAction describes a &quot;run in container&quot; action. # One and only one of the following should be specified.
4090 # Exec specifies the action to take.
4091 # +optional
4092 &quot;command&quot;: &quot;A String&quot;, # Command is the command line to execute inside the container, the working
4093 # directory for the command is root (&#x27;/&#x27;) in the container&#x27;s filesystem. The
4094 # command is simply exec&#x27;d, it is not run inside a shell, so traditional
4095 # shell instructions (&#x27;|&#x27;, etc) won&#x27;t work. To use a shell, you need to
4096 # explicitly call out to that shell. Exit status of 0 is treated as
4097 # live/healthy and non-zero is unhealthy. +optional
4098 },
4099 &quot;httpGet&quot;: { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
4100 # +optional
4101 &quot;httpHeaders&quot;: [ # Custom headers to set in the request. HTTP allows repeated headers.
4102 # +optional
4103 { # HTTPHeader describes a custom header to be used in HTTP probes
4104 &quot;name&quot;: &quot;A String&quot;, # The header field name
4105 &quot;value&quot;: &quot;A String&quot;, # The header field value
4106 },
4107 ],
4108 &quot;path&quot;: &quot;A String&quot;, # Path to access on the HTTP server.
4109 # +optional
4110 &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.
4111 # Number must be in the range 1 to 65535.
4112 # Name must be an IANA_SVC_NAME.
4113 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
4114 # inner type. This allows you to have, for example, a JSON field that can
4115 # accept a name or number.
4116 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
4117 &quot;type&quot;: 42, # The type of the value.
4118 &quot;intVal&quot;: 42, # The int value.
4119 },
4120 &quot;host&quot;: &quot;A String&quot;, # Host name to connect to, defaults to the pod IP. You probably want to set
4121 # &quot;Host&quot; in httpHeaders instead.
4122 # +optional
4123 &quot;scheme&quot;: &quot;A String&quot;, # Scheme to use for connecting to the host.
4124 # Defaults to HTTP.
4125 # +optional
4126 },
4127 },
4128 &quot;postStart&quot;: { # Handler defines a specific action that should be taken # PostStart is called immediately after a container is created. If the
4129 # handler fails, the container is terminated and restarted according to its
4130 # restart policy. Other management of the container blocks until the hook
4131 # completes. More info:
4132 # https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
4133 # +optional
4134 &quot;tcpSocket&quot;: { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
4135 # TCP hooks not yet supported
4136 &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.
4137 # Number must be in the range 1 to 65535.
4138 # Name must be an IANA_SVC_NAME.
4139 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
4140 # inner type. This allows you to have, for example, a JSON field that can
4141 # accept a name or number.
4142 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
4143 &quot;type&quot;: 42, # The type of the value.
4144 &quot;intVal&quot;: 42, # The int value.
4145 },
4146 &quot;host&quot;: &quot;A String&quot;, # Optional: Host name to connect to, defaults to the pod IP.
4147 # +optional
4148 },
4149 &quot;exec&quot;: { # ExecAction describes a &quot;run in container&quot; action. # One and only one of the following should be specified.
4150 # Exec specifies the action to take.
4151 # +optional
4152 &quot;command&quot;: &quot;A String&quot;, # Command is the command line to execute inside the container, the working
4153 # directory for the command is root (&#x27;/&#x27;) in the container&#x27;s filesystem. The
4154 # command is simply exec&#x27;d, it is not run inside a shell, so traditional
4155 # shell instructions (&#x27;|&#x27;, etc) won&#x27;t work. To use a shell, you need to
4156 # explicitly call out to that shell. Exit status of 0 is treated as
4157 # live/healthy and non-zero is unhealthy. +optional
4158 },
4159 &quot;httpGet&quot;: { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
4160 # +optional
4161 &quot;httpHeaders&quot;: [ # Custom headers to set in the request. HTTP allows repeated headers.
4162 # +optional
4163 { # HTTPHeader describes a custom header to be used in HTTP probes
4164 &quot;name&quot;: &quot;A String&quot;, # The header field name
4165 &quot;value&quot;: &quot;A String&quot;, # The header field value
4166 },
4167 ],
4168 &quot;path&quot;: &quot;A String&quot;, # Path to access on the HTTP server.
4169 # +optional
4170 &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.
4171 # Number must be in the range 1 to 65535.
4172 # Name must be an IANA_SVC_NAME.
4173 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
4174 # inner type. This allows you to have, for example, a JSON field that can
4175 # accept a name or number.
4176 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
4177 &quot;type&quot;: 42, # The type of the value.
4178 &quot;intVal&quot;: 42, # The int value.
4179 },
4180 &quot;host&quot;: &quot;A String&quot;, # Host name to connect to, defaults to the pod IP. You probably want to set
4181 # &quot;Host&quot; in httpHeaders instead.
4182 # +optional
4183 &quot;scheme&quot;: &quot;A String&quot;, # Scheme to use for connecting to the host.
4184 # Defaults to HTTP.
4185 # +optional
4186 },
4187 },
4188 },
4189 &quot;terminationMessagePath&quot;: &quot;A String&quot;, # Optional: Path at which the file to which the container&#x27;s termination
4190 # message will be written is mounted into the container&#x27;s filesystem. Message
4191 # written is intended to be brief final status, such as an assertion failure
4192 # message. Will be truncated by the node if greater than 4096 bytes. The
4193 # total message length across all containers will be limited to 12kb.
4194 # Defaults to /dev/termination-log.
4195 # Cannot be updated.
4196 # +optional
4197 &quot;stdin&quot;: True or False, # Whether this container should allocate a buffer for stdin in the container
4198 # runtime. If this is not set, reads from stdin in the container will always
4199 # result in EOF. Default is false. +optional
4200 &quot;volumeMounts&quot;: [ # Pod volumes to mount into the container&#x27;s filesystem.
4201 # Cannot be updated.
4202 # +optional
4203 { # VolumeMount describes a mounting of a Volume within a container.
4204 &quot;name&quot;: &quot;A String&quot;, # This must match the Name of a Volume.
4205 &quot;readOnly&quot;: True or False, # Mounted read-only if true, read-write otherwise (false or unspecified).
4206 # Defaults to false.
4207 # +optional
4208 &quot;mountPropagation&quot;: &quot;A String&quot;, # mountPropagation determines how mounts are propagated from the host
4209 # to container and the other way around.
4210 # When not set, MountPropagationHostToContainer is used.
4211 # This field is beta in 1.10.
4212 # +optional
4213 &quot;mountPath&quot;: &quot;A String&quot;, # Path within the container at which the volume should be mounted. Must
4214 # not contain &#x27;:&#x27;.
4215 &quot;subPath&quot;: &quot;A String&quot;, # Path within the volume from which the container&#x27;s volume should be mounted.
4216 # Defaults to &quot;&quot; (volume&#x27;s root).
4217 # +optional
4218 },
4219 ],
4220 &quot;tty&quot;: True or False, # Whether this container should allocate a TTY for itself, also requires
4221 # &#x27;stdin&#x27; to be true. Default is false. +optional
4222 &quot;volumeDevices&quot;: [ # volumeDevices is the list of block devices to be used by the container.
4223 # This is an alpha feature and may change in the future.
4224 # +optional
4225 { # volumeDevice describes a mapping of a raw block device within a container.
4226 &quot;name&quot;: &quot;A String&quot;, # name must match the name of a persistentVolumeClaim in the pod
4227 &quot;devicePath&quot;: &quot;A String&quot;, # devicePath is the path inside of the container that the device will be
4228 # mapped to.
4229 },
4230 ],
4231 &quot;stdinOnce&quot;: True or False, # Whether the container runtime should close the stdin channel after it has
4232 # been opened by a single attach. When stdin is true the stdin stream will
4233 # remain open across multiple attach sessions. If stdinOnce is set to true,
4234 # stdin is opened on container start, is empty until the first client
4235 # attaches to stdin, and then remains open and accepts data until the client
4236 # disconnects, at which time stdin is closed and remains closed until the
4237 # container is restarted. If this flag is false, a container processes that
4238 # reads from stdin will never receive an EOF. Default is false +optional
4239 &quot;args&quot;: [ # Arguments to the entrypoint.
4240 # The docker image&#x27;s CMD is used if this is not provided.
4241 # Variable references $(VAR_NAME) are expanded using the container&#x27;s
4242 # environment. If a variable cannot be resolved, the reference in the input
4243 # string will be unchanged. The $(VAR_NAME) syntax can be escaped with a
4244 # double $$, ie: $$(VAR_NAME). Escaped references will never be expanded,
4245 # regardless of whether the variable exists or not.
4246 # Cannot be updated.
4247 # More info:
4248 # https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
4249 # +optional
4250 &quot;A String&quot;,
4251 ],
4252 &quot;workingDir&quot;: &quot;A String&quot;, # Container&#x27;s working directory.
4253 # If not specified, the container runtime&#x27;s default will be used, which
4254 # might be configured in the container image.
4255 # Cannot be updated.
4256 # +optional
4257 &quot;ports&quot;: [ # List of ports to expose from the container. Exposing a port here gives
4258 # the system additional information about the network connections a
4259 # container uses, but is primarily informational. Not specifying a port here
4260 # DOES NOT prevent that port from being exposed. Any port which is
4261 # listening on the default &quot;0.0.0.0&quot; address inside a container will be
4262 # accessible from the network.
4263 # Cannot be updated.
4264 # +optional
4265 { # ContainerPort represents a network port in a single container.
4266 &quot;hostIP&quot;: &quot;A String&quot;, # What host IP to bind the external port to.
4267 # +optional
4268 &quot;name&quot;: &quot;A String&quot;, # If specified, this must be an IANA_SVC_NAME and unique within the pod. Each
4269 # named port in a pod must have a unique name. Name for the port that can be
4270 # referred to by services.
4271 # +optional
4272 &quot;hostPort&quot;: 42, # Number of port to expose on the host.
4273 # If specified, this must be a valid port number, 0 &lt; x &lt; 65536.
4274 # If HostNetwork is specified, this must match ContainerPort.
4275 # Most containers do not need this.
4276 # +optional
4277 &quot;containerPort&quot;: 42, # Number of port to expose on the pod&#x27;s IP address.
4278 # This must be a valid port number, 0 &lt; x &lt; 65536.
4279 &quot;protocol&quot;: &quot;A String&quot;, # Protocol for port. Must be UDP or TCP.
4280 # Defaults to &quot;TCP&quot;.
4281 # +optional
4282 },
4283 ],
4284 &quot;image&quot;: &quot;A String&quot;, # Docker image name.
4285 # More info: https://kubernetes.io/docs/concepts/containers/images
4286 &quot;envFrom&quot;: [ # List of sources to populate environment variables in the container.
4287 # The keys defined within a source must be a C_IDENTIFIER. All invalid keys
4288 # will be reported as an event when the container is starting. When a key
4289 # exists in multiple sources, the value associated with the last source will
4290 # take precedence. Values defined by an Env with a duplicate key will take
4291 # precedence. Cannot be updated. +optional
4292 { # EnvFromSource represents the source of a set of ConfigMaps
4293 &quot;prefix&quot;: &quot;A String&quot;, # An optional identifier to prepend to each key in the ConfigMap. Must be a
4294 # C_IDENTIFIER. +optional
4295 &quot;configMapRef&quot;: { # ConfigMapEnvSource selects a ConfigMap to populate the environment # The ConfigMap to select from
4296 # +optional
4297 # variables with.
4298 #
4299 # The contents of the target ConfigMap&#x27;s Data field will represent the
4300 # key-value pairs as environment variables.
4301 &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
4302 # directly into the message. Use the &quot;name&quot; field instead.
4303 # referenced object inside the same namespace.
4304 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
4305 # More info:
4306 # https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
4307 },
4308 &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported
4309 #
4310 # Cloud Run for Anthos: supported
4311 #
4312 # Specify whether the ConfigMap must be defined
4313 # +optional
4314 &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
4315 #
4316 # Cloud Run for Anthos: supported
4317 #
4318 # The ConfigMap to select from.
4319 },
4320 &quot;secretRef&quot;: { # SecretEnvSource selects a Secret to populate the environment # The Secret to select from
4321 # +optional
4322 # variables with.
4323 #
4324 # The contents of the target Secret&#x27;s Data field will represent the
4325 # key-value pairs as environment variables.
4326 &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
4327 #
4328 # Cloud Run for Anthos: supported
4329 #
4330 # The Secret to select from.
4331 &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
4332 # directly into the message. Use the &quot;name&quot; field instead.
4333 # referenced object inside the same namespace.
4334 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
4335 # More info:
4336 # https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
4337 },
4338 &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported
4339 #
4340 # Cloud Run for Anthos: supported
4341 #
4342 # Specify whether the Secret must be defined
4343 # +optional
4344 },
4345 },
4346 ],
4347 &quot;name&quot;: &quot;A String&quot;, # Name of the container specified as a DNS_LABEL.
4348 # Each container must have a unique name (DNS_LABEL).
4349 # Cannot be updated.
4350 &quot;command&quot;: [ # Entrypoint array. Not executed within a shell.
4351 # The docker image&#x27;s ENTRYPOINT is used if this is not provided.
4352 # Variable references $(VAR_NAME) are expanded using the container&#x27;s
4353 # environment. If a variable cannot be resolved, the reference in the input
4354 # string will be unchanged. The $(VAR_NAME) syntax can be escaped with a
4355 # double $$, ie: $$(VAR_NAME). Escaped references will never be expanded,
4356 # regardless of whether the variable exists or not.
4357 # Cannot be updated.
4358 # More info:
4359 # https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
4360 # +optional
4361 &quot;A String&quot;,
4362 ],
Bu Sun Kim65020912020-05-20 12:08:20 -07004363 },
4364 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07004365 &quot;serviceAccountName&quot;: &quot;A String&quot;, # Email address of the IAM service account associated with the revision
4366 # of the service. The service account represents the identity of the
4367 # running revision, and determines what permissions the revision has. If
4368 # not provided, the revision will use the project&#x27;s default service account.
Bu Sun Kim65020912020-05-20 12:08:20 -07004369 &quot;generation&quot;: 42, # Deprecated and not currently populated by Cloud Run. See
4370 # metadata.generation instead, which is the sequence number containing the
4371 # latest generation of the desired state.
4372 #
4373 # Read-only.
4374 &quot;servingState&quot;: &quot;A String&quot;, # ServingState holds a value describing the state the resources
4375 # are in for this Revision.
4376 # Users must not specify this when creating a revision. It is expected
4377 # that the system will manipulate this based on routability and load.
4378 #
4379 # Populated by the system.
4380 # Read-only.
4381 &quot;concurrencyModel&quot;: &quot;A String&quot;, # ConcurrencyModel specifies the desired concurrency model
4382 # (Single or Multi) for the Revision. Defaults to Multi.
4383 # Deprecated in favor of ContainerConcurrency.
4384 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07004385 &quot;timeoutSeconds&quot;: 42, # TimeoutSeconds holds the max duration the instance is allowed for
4386 # responding to a request.
4387 # Not currently used by Cloud Run.
Bu Sun Kim65020912020-05-20 12:08:20 -07004388 &quot;container&quot;: { # A single application container. # Container defines the unit of execution for this Revision.
4389 # In the context of a Revision, we disallow a number of the fields of
4390 # this Container, including: name, ports, and volumeMounts.
4391 # The runtime contract is documented here:
4392 # https://github.com/knative/serving/blob/master/docs/runtime-contract.md
4393 # This specifies both the container to run, the command to run in the container
4394 # and the arguments to supply to it.
4395 # Note that additional arguments may be supplied by the system to the container
4396 # at runtime.
Bu Sun Kim65020912020-05-20 12:08:20 -07004397 &quot;terminationMessagePolicy&quot;: &quot;A String&quot;, # Indicate how the termination message should be populated. File will use the
4398 # contents of terminationMessagePath to populate the container status message
4399 # on both success and failure. FallbackToLogsOnError will use the last chunk
4400 # of container log output if the termination message file is empty and the
4401 # container exited with an error. The log output is limited to 2048 bytes or
4402 # 80 lines, whichever is smaller. Defaults to File. Cannot be updated.
4403 # +optional
4404 &quot;securityContext&quot;: { # SecurityContext holds security configuration that will be applied to a # Security options the pod should run with.
4405 # More info: https://kubernetes.io/docs/concepts/policy/security-context/
4406 # More info:
4407 # https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
4408 # +optional
4409 # container. Some fields are present in both SecurityContext and
4410 # PodSecurityContext. When both are set, the values in SecurityContext take
4411 # precedence.
4412 &quot;capabilities&quot;: { # Adds and removes POSIX capabilities from running containers. # The capabilities to add/drop when running containers.
4413 # Defaults to the default set of capabilities granted by the container
4414 # runtime. +optional
4415 &quot;add&quot;: [ # Added capabilities
4416 # +optional
4417 &quot;A String&quot;,
4418 ],
4419 &quot;drop&quot;: [ # Removed capabilities
4420 # +optional
4421 &quot;A String&quot;,
4422 ],
4423 },
4424 &quot;runAsNonRoot&quot;: True or False, # Indicates that the container must run as a non-root user.
4425 # If true, the Kubelet will validate the image at runtime to ensure that it
4426 # does not run as UID 0 (root) and fail to start the container if it does.
4427 # If unset or false, no such validation will be performed.
4428 # May also be set in PodSecurityContext. If set in both SecurityContext and
4429 # PodSecurityContext, the value specified in SecurityContext takes
4430 # precedence. +optional
4431 &quot;runAsGroup&quot;: 42, # The GID to run the entrypoint of the container process.
4432 # Uses runtime default if unset.
4433 # May also be set in PodSecurityContext. If set in both SecurityContext and
4434 # PodSecurityContext, the value specified in SecurityContext takes
4435 # precedence. +optional
4436 &quot;privileged&quot;: True or False, # Run container in privileged mode.
4437 # Processes in privileged containers are essentially equivalent to root on
4438 # the host. Defaults to false. +optional
4439 &quot;allowPrivilegeEscalation&quot;: True or False, # AllowPrivilegeEscalation controls whether a process can gain more
4440 # privileges than its parent process. This bool directly controls if
4441 # the no_new_privs flag will be set on the container process.
4442 # AllowPrivilegeEscalation is true always when the container is:
4443 # 1) run as Privileged
4444 # 2) has CAP_SYS_ADMIN
4445 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07004446 &quot;readOnlyRootFilesystem&quot;: True or False, # Whether this container has a read-only root filesystem.
4447 # Default is false.
4448 # +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07004449 &quot;seLinuxOptions&quot;: { # SELinuxOptions are the labels to be applied to the container # The SELinux context to be applied to the container.
4450 # If unspecified, the container runtime will allocate a random SELinux
4451 # context for each container. May also be set in PodSecurityContext. If set
4452 # in both SecurityContext and PodSecurityContext, the value specified in
4453 # SecurityContext takes precedence. +optional
4454 &quot;role&quot;: &quot;A String&quot;, # Role is a SELinux role label that applies to the container.
4455 # +optional
4456 &quot;level&quot;: &quot;A String&quot;, # Level is SELinux level label that applies to the container.
4457 # +optional
4458 &quot;user&quot;: &quot;A String&quot;, # User is a SELinux user label that applies to the container.
4459 # +optional
4460 &quot;type&quot;: &quot;A String&quot;, # Type is a SELinux type label that applies to the container.
4461 # +optional
4462 },
Bu Sun Kim65020912020-05-20 12:08:20 -07004463 &quot;runAsUser&quot;: 42, # The UID to run the entrypoint of the container process.
4464 # Defaults to user specified in image metadata if unspecified.
4465 # May also be set in PodSecurityContext. If set in both SecurityContext and
4466 # PodSecurityContext, the value specified in SecurityContext takes
4467 # precedence. +optional
4468 },
4469 &quot;livenessProbe&quot;: { # Probe describes a health check to be performed against a container to # Periodic probe of container liveness.
4470 # Container will be restarted if the probe fails.
4471 # Cannot be updated.
4472 # More info:
4473 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
4474 # +optional
4475 # determine whether it is alive or ready to receive traffic.
Bu Sun Kim65020912020-05-20 12:08:20 -07004476 &quot;initialDelaySeconds&quot;: 42, # Number of seconds after the container has started before liveness probes
4477 # are initiated. More info:
4478 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
4479 # +optional
4480 &quot;timeoutSeconds&quot;: 42, # Number of seconds after which the probe times out.
4481 # Defaults to 1 second. Minimum value is 1.
4482 # More info:
4483 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
4484 # +optional
4485 &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 -07004486 &quot;tcpSocket&quot;: { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
4487 # TCP hooks not yet supported
4488 &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.
4489 # Number must be in the range 1 to 65535.
4490 # Name must be an IANA_SVC_NAME.
4491 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
4492 # inner type. This allows you to have, for example, a JSON field that can
4493 # accept a name or number.
4494 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
4495 &quot;type&quot;: 42, # The type of the value.
4496 &quot;intVal&quot;: 42, # The int value.
4497 },
4498 &quot;host&quot;: &quot;A String&quot;, # Optional: Host name to connect to, defaults to the pod IP.
4499 # +optional
4500 },
Bu Sun Kim65020912020-05-20 12:08:20 -07004501 &quot;exec&quot;: { # ExecAction describes a &quot;run in container&quot; action. # One and only one of the following should be specified.
4502 # Exec specifies the action to take.
4503 # +optional
4504 &quot;command&quot;: &quot;A String&quot;, # Command is the command line to execute inside the container, the working
4505 # directory for the command is root (&#x27;/&#x27;) in the container&#x27;s filesystem. The
4506 # command is simply exec&#x27;d, it is not run inside a shell, so traditional
4507 # shell instructions (&#x27;|&#x27;, etc) won&#x27;t work. To use a shell, you need to
4508 # explicitly call out to that shell. Exit status of 0 is treated as
4509 # live/healthy and non-zero is unhealthy. +optional
4510 },
4511 &quot;httpGet&quot;: { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
4512 # +optional
4513 &quot;httpHeaders&quot;: [ # Custom headers to set in the request. HTTP allows repeated headers.
4514 # +optional
4515 { # HTTPHeader describes a custom header to be used in HTTP probes
Bu Sun Kim65020912020-05-20 12:08:20 -07004516 &quot;name&quot;: &quot;A String&quot;, # The header field name
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07004517 &quot;value&quot;: &quot;A String&quot;, # The header field value
Bu Sun Kim65020912020-05-20 12:08:20 -07004518 },
4519 ],
4520 &quot;path&quot;: &quot;A String&quot;, # Path to access on the HTTP server.
4521 # +optional
4522 &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.
4523 # Number must be in the range 1 to 65535.
4524 # Name must be an IANA_SVC_NAME.
4525 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
4526 # inner type. This allows you to have, for example, a JSON field that can
4527 # accept a name or number.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07004528 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
Bu Sun Kim65020912020-05-20 12:08:20 -07004529 &quot;type&quot;: 42, # The type of the value.
4530 &quot;intVal&quot;: 42, # The int value.
Bu Sun Kim65020912020-05-20 12:08:20 -07004531 },
4532 &quot;host&quot;: &quot;A String&quot;, # Host name to connect to, defaults to the pod IP. You probably want to set
4533 # &quot;Host&quot; in httpHeaders instead.
4534 # +optional
4535 &quot;scheme&quot;: &quot;A String&quot;, # Scheme to use for connecting to the host.
4536 # Defaults to HTTP.
4537 # +optional
4538 },
Bu Sun Kim65020912020-05-20 12:08:20 -07004539 },
4540 &quot;successThreshold&quot;: 42, # Minimum consecutive successes for the probe to be considered successful
4541 # after having failed. Defaults to 1. Must be 1 for liveness. Minimum value
4542 # is 1. +optional
4543 &quot;periodSeconds&quot;: 42, # How often (in seconds) to perform the probe.
4544 # Default to 10 seconds. Minimum value is 1.
4545 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07004546 &quot;failureThreshold&quot;: 42, # Minimum consecutive failures for the probe to be considered failed after
4547 # having succeeded. Defaults to 3. Minimum value is 1. +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07004548 },
4549 &quot;env&quot;: [ # List of environment variables to set in the container.
4550 # Cannot be updated.
4551 # +optional
4552 { # EnvVar represents an environment variable present in a Container.
Bu Sun Kim65020912020-05-20 12:08:20 -07004553 &quot;name&quot;: &quot;A String&quot;, # Name of the environment variable. Must be a C_IDENTIFIER.
4554 &quot;valueFrom&quot;: { # Cloud Run fully managed: not supported # Cloud Run fully managed: not supported
4555 #
4556 # Cloud Run on GKE: supported
4557 #
4558 # Source for the environment variable&#x27;s value. Cannot be used if value is not
4559 # empty. +optional
4560 #
4561 # Cloud Run on GKE: supported
4562 #
4563 # EnvVarSource represents a source for the value of an EnvVar.
4564 &quot;configMapKeyRef&quot;: { # Cloud Run fully managed: not supported # Cloud Run fully managed: not supported
4565 #
4566 # Cloud Run on GKE: supported
4567 #
4568 # Selects a key of a ConfigMap.
4569 # +optional
4570 #
4571 # Cloud Run on GKE: supported
4572 #
4573 # Selects a key from a ConfigMap.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07004574 &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
4575 # directly into the message. Use the &quot;name&quot; field instead.
4576 # referenced object inside the same namespace.
4577 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
4578 # More info:
4579 # https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
4580 },
Bu Sun Kim65020912020-05-20 12:08:20 -07004581 &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported
4582 #
4583 # Cloud Run on GKE: supported
4584 #
4585 # Specify whether the ConfigMap or its key must be defined
4586 # +optional
4587 &quot;key&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
4588 #
4589 # Cloud Run on GKE: supported
4590 #
4591 # The key to select.
4592 &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
4593 #
4594 # Cloud Run on GKE: supported
4595 #
4596 # The ConfigMap to select from.
Bu Sun Kim65020912020-05-20 12:08:20 -07004597 },
4598 &quot;secretKeyRef&quot;: { # Cloud Run fully managed: not supported # Cloud Run fully managed: not supported
4599 #
4600 # Cloud Run on GKE: supported
4601 #
4602 # Selects a key of a secret in the pod&#x27;s namespace
4603 # +optional
4604 #
4605 # Cloud Run on GKE: supported
4606 #
4607 # SecretKeySelector selects a key of a Secret.
Bu Sun Kim65020912020-05-20 12:08:20 -07004608 &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported
4609 #
4610 # Cloud Run on GKE: supported
4611 #
4612 # Specify whether the Secret or its key must be defined
4613 # +optional
4614 &quot;key&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
4615 #
4616 # Cloud Run on GKE: supported
4617 #
4618 # The key of the secret to select from. Must be a valid secret key.
4619 &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
4620 #
4621 # Cloud Run on GKE: supported
4622 #
4623 # The name of the secret in the pod&#x27;s namespace to select from.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07004624 &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
4625 # directly into the message. Use the &quot;name&quot; field instead.
4626 # referenced object inside the same namespace.
4627 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
4628 # More info:
4629 # https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
4630 },
Bu Sun Kim65020912020-05-20 12:08:20 -07004631 },
4632 },
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07004633 &quot;value&quot;: &quot;A String&quot;, # Variable references $(VAR_NAME) are expanded
4634 # using the previous defined environment variables in the container and
4635 # any route environment variables. If a variable cannot be resolved,
4636 # the reference in the input string will be unchanged. The $(VAR_NAME)
4637 # syntax can be escaped with a double $$, ie: $$(VAR_NAME). Escaped
4638 # references will never be expanded, regardless of whether the variable
4639 # exists or not.
4640 # Defaults to &quot;&quot;.
4641 # +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07004642 },
4643 ],
4644 &quot;resources&quot;: { # ResourceRequirements describes the compute resource requirements. # Compute Resources required by this container.
4645 # Cannot be updated.
4646 # More info:
4647 # https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
4648 # +optional
4649 &quot;requestsInMap&quot;: { # Requests describes the minimum amount of compute resources required.
4650 # If Requests is omitted for a container, it defaults to Limits if that is
4651 # explicitly specified, otherwise to an implementation-defined value.
4652 # This is a temporary field created to migrate away from the
4653 # map&lt;string, Quantity&gt; requests field. This is done to become compliant
4654 # with k8s style API.
4655 # This field is deprecated in favor of requests field.
4656 &quot;a_key&quot;: { # The view model of a single quantity, e.g. &quot;800 MiB&quot;. Corresponds to
4657 # https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/generated.proto
4658 &quot;string&quot;: &quot;A String&quot;, # Stringified version of the quantity, e.g., &quot;800 MiB&quot;.
4659 },
4660 },
4661 &quot;requests&quot;: { # Requests describes the minimum amount of compute resources required.
4662 # If Requests is omitted for a container, it defaults to Limits if that is
4663 # explicitly specified, otherwise to an implementation-defined value.
4664 # The values of the map is string form of the &#x27;quantity&#x27; k8s type:
4665 # https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go
4666 &quot;a_key&quot;: &quot;A String&quot;,
4667 },
4668 &quot;limits&quot;: { # Limits describes the maximum amount of compute resources allowed.
4669 # The values of the map is string form of the &#x27;quantity&#x27; k8s type:
4670 # https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go
4671 &quot;a_key&quot;: &quot;A String&quot;,
4672 },
4673 &quot;limitsInMap&quot;: { # Limits describes the maximum amount of compute resources allowed.
4674 # This is a temporary field created to migrate away from the
4675 # map&lt;string, Quantity&gt; limits field. This is done to become compliant
4676 # with k8s style API.
4677 # This field is deprecated in favor of limits field.
4678 &quot;a_key&quot;: { # The view model of a single quantity, e.g. &quot;800 MiB&quot;. Corresponds to
4679 # https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/generated.proto
4680 &quot;string&quot;: &quot;A String&quot;, # Stringified version of the quantity, e.g., &quot;800 MiB&quot;.
4681 },
4682 },
4683 },
4684 &quot;readinessProbe&quot;: { # Probe describes a health check to be performed against a container to # Periodic probe of container service readiness.
4685 # Container will be removed from service endpoints if the probe fails.
4686 # Cannot be updated.
4687 # More info:
4688 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
4689 # +optional
4690 # determine whether it is alive or ready to receive traffic.
Bu Sun Kim65020912020-05-20 12:08:20 -07004691 &quot;initialDelaySeconds&quot;: 42, # Number of seconds after the container has started before liveness probes
4692 # are initiated. More info:
4693 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
4694 # +optional
4695 &quot;timeoutSeconds&quot;: 42, # Number of seconds after which the probe times out.
4696 # Defaults to 1 second. Minimum value is 1.
4697 # More info:
4698 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
4699 # +optional
4700 &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 -07004701 &quot;tcpSocket&quot;: { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
4702 # TCP hooks not yet supported
4703 &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.
4704 # Number must be in the range 1 to 65535.
4705 # Name must be an IANA_SVC_NAME.
4706 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
4707 # inner type. This allows you to have, for example, a JSON field that can
4708 # accept a name or number.
4709 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
4710 &quot;type&quot;: 42, # The type of the value.
4711 &quot;intVal&quot;: 42, # The int value.
4712 },
4713 &quot;host&quot;: &quot;A String&quot;, # Optional: Host name to connect to, defaults to the pod IP.
4714 # +optional
4715 },
Bu Sun Kim65020912020-05-20 12:08:20 -07004716 &quot;exec&quot;: { # ExecAction describes a &quot;run in container&quot; action. # One and only one of the following should be specified.
4717 # Exec specifies the action to take.
4718 # +optional
4719 &quot;command&quot;: &quot;A String&quot;, # Command is the command line to execute inside the container, the working
4720 # directory for the command is root (&#x27;/&#x27;) in the container&#x27;s filesystem. The
4721 # command is simply exec&#x27;d, it is not run inside a shell, so traditional
4722 # shell instructions (&#x27;|&#x27;, etc) won&#x27;t work. To use a shell, you need to
4723 # explicitly call out to that shell. Exit status of 0 is treated as
4724 # live/healthy and non-zero is unhealthy. +optional
4725 },
4726 &quot;httpGet&quot;: { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
4727 # +optional
4728 &quot;httpHeaders&quot;: [ # Custom headers to set in the request. HTTP allows repeated headers.
4729 # +optional
4730 { # HTTPHeader describes a custom header to be used in HTTP probes
Bu Sun Kim65020912020-05-20 12:08:20 -07004731 &quot;name&quot;: &quot;A String&quot;, # The header field name
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07004732 &quot;value&quot;: &quot;A String&quot;, # The header field value
Bu Sun Kim65020912020-05-20 12:08:20 -07004733 },
4734 ],
4735 &quot;path&quot;: &quot;A String&quot;, # Path to access on the HTTP server.
4736 # +optional
4737 &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.
4738 # Number must be in the range 1 to 65535.
4739 # Name must be an IANA_SVC_NAME.
4740 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
4741 # inner type. This allows you to have, for example, a JSON field that can
4742 # accept a name or number.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07004743 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
Bu Sun Kim65020912020-05-20 12:08:20 -07004744 &quot;type&quot;: 42, # The type of the value.
4745 &quot;intVal&quot;: 42, # The int value.
Bu Sun Kim65020912020-05-20 12:08:20 -07004746 },
4747 &quot;host&quot;: &quot;A String&quot;, # Host name to connect to, defaults to the pod IP. You probably want to set
4748 # &quot;Host&quot; in httpHeaders instead.
4749 # +optional
4750 &quot;scheme&quot;: &quot;A String&quot;, # Scheme to use for connecting to the host.
4751 # Defaults to HTTP.
4752 # +optional
4753 },
Bu Sun Kim65020912020-05-20 12:08:20 -07004754 },
4755 &quot;successThreshold&quot;: 42, # Minimum consecutive successes for the probe to be considered successful
4756 # after having failed. Defaults to 1. Must be 1 for liveness. Minimum value
4757 # is 1. +optional
4758 &quot;periodSeconds&quot;: 42, # How often (in seconds) to perform the probe.
4759 # Default to 10 seconds. Minimum value is 1.
4760 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07004761 &quot;failureThreshold&quot;: 42, # Minimum consecutive failures for the probe to be considered failed after
4762 # having succeeded. Defaults to 3. Minimum value is 1. +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07004763 },
4764 &quot;imagePullPolicy&quot;: &quot;A String&quot;, # Image pull policy.
4765 # One of Always, Never, IfNotPresent.
4766 # Defaults to Always if :latest tag is specified, or IfNotPresent otherwise.
4767 # Cannot be updated.
4768 # More info:
4769 # https://kubernetes.io/docs/concepts/containers/images#updating-images
4770 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07004771 &quot;lifecycle&quot;: { # Lifecycle describes actions that the management system should take in # Actions that the management system should take in response to container
4772 # lifecycle events. Cannot be updated. +optional
4773 # response to container lifecycle events. For the PostStart and PreStop
4774 # lifecycle handlers, management of the container blocks until the action is
4775 # complete, unless the container process fails, in which case the handler is
4776 # aborted.
4777 &quot;preStop&quot;: { # Handler defines a specific action that should be taken # PreStop is called immediately before a container is terminated.
4778 # The container is terminated after the handler completes.
4779 # The reason for termination is passed to the handler.
4780 # Regardless of the outcome of the handler, the container is eventually
4781 # terminated. Other management of the container blocks until the hook
4782 # completes. More info:
4783 # https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
4784 # +optional
4785 &quot;tcpSocket&quot;: { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
4786 # TCP hooks not yet supported
4787 &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.
4788 # Number must be in the range 1 to 65535.
4789 # Name must be an IANA_SVC_NAME.
4790 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
4791 # inner type. This allows you to have, for example, a JSON field that can
4792 # accept a name or number.
4793 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
4794 &quot;type&quot;: 42, # The type of the value.
4795 &quot;intVal&quot;: 42, # The int value.
4796 },
4797 &quot;host&quot;: &quot;A String&quot;, # Optional: Host name to connect to, defaults to the pod IP.
4798 # +optional
4799 },
4800 &quot;exec&quot;: { # ExecAction describes a &quot;run in container&quot; action. # One and only one of the following should be specified.
4801 # Exec specifies the action to take.
4802 # +optional
4803 &quot;command&quot;: &quot;A String&quot;, # Command is the command line to execute inside the container, the working
4804 # directory for the command is root (&#x27;/&#x27;) in the container&#x27;s filesystem. The
4805 # command is simply exec&#x27;d, it is not run inside a shell, so traditional
4806 # shell instructions (&#x27;|&#x27;, etc) won&#x27;t work. To use a shell, you need to
4807 # explicitly call out to that shell. Exit status of 0 is treated as
4808 # live/healthy and non-zero is unhealthy. +optional
4809 },
4810 &quot;httpGet&quot;: { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
4811 # +optional
4812 &quot;httpHeaders&quot;: [ # Custom headers to set in the request. HTTP allows repeated headers.
4813 # +optional
4814 { # HTTPHeader describes a custom header to be used in HTTP probes
4815 &quot;name&quot;: &quot;A String&quot;, # The header field name
4816 &quot;value&quot;: &quot;A String&quot;, # The header field value
4817 },
4818 ],
4819 &quot;path&quot;: &quot;A String&quot;, # Path to access on the HTTP server.
4820 # +optional
4821 &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.
4822 # Number must be in the range 1 to 65535.
4823 # Name must be an IANA_SVC_NAME.
4824 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
4825 # inner type. This allows you to have, for example, a JSON field that can
4826 # accept a name or number.
4827 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
4828 &quot;type&quot;: 42, # The type of the value.
4829 &quot;intVal&quot;: 42, # The int value.
4830 },
4831 &quot;host&quot;: &quot;A String&quot;, # Host name to connect to, defaults to the pod IP. You probably want to set
4832 # &quot;Host&quot; in httpHeaders instead.
4833 # +optional
4834 &quot;scheme&quot;: &quot;A String&quot;, # Scheme to use for connecting to the host.
4835 # Defaults to HTTP.
4836 # +optional
4837 },
4838 },
4839 &quot;postStart&quot;: { # Handler defines a specific action that should be taken # PostStart is called immediately after a container is created. If the
4840 # handler fails, the container is terminated and restarted according to its
4841 # restart policy. Other management of the container blocks until the hook
4842 # completes. More info:
4843 # https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
4844 # +optional
4845 &quot;tcpSocket&quot;: { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
4846 # TCP hooks not yet supported
4847 &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.
4848 # Number must be in the range 1 to 65535.
4849 # Name must be an IANA_SVC_NAME.
4850 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
4851 # inner type. This allows you to have, for example, a JSON field that can
4852 # accept a name or number.
4853 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
4854 &quot;type&quot;: 42, # The type of the value.
4855 &quot;intVal&quot;: 42, # The int value.
4856 },
4857 &quot;host&quot;: &quot;A String&quot;, # Optional: Host name to connect to, defaults to the pod IP.
4858 # +optional
4859 },
4860 &quot;exec&quot;: { # ExecAction describes a &quot;run in container&quot; action. # One and only one of the following should be specified.
4861 # Exec specifies the action to take.
4862 # +optional
4863 &quot;command&quot;: &quot;A String&quot;, # Command is the command line to execute inside the container, the working
4864 # directory for the command is root (&#x27;/&#x27;) in the container&#x27;s filesystem. The
4865 # command is simply exec&#x27;d, it is not run inside a shell, so traditional
4866 # shell instructions (&#x27;|&#x27;, etc) won&#x27;t work. To use a shell, you need to
4867 # explicitly call out to that shell. Exit status of 0 is treated as
4868 # live/healthy and non-zero is unhealthy. +optional
4869 },
4870 &quot;httpGet&quot;: { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
4871 # +optional
4872 &quot;httpHeaders&quot;: [ # Custom headers to set in the request. HTTP allows repeated headers.
4873 # +optional
4874 { # HTTPHeader describes a custom header to be used in HTTP probes
4875 &quot;name&quot;: &quot;A String&quot;, # The header field name
4876 &quot;value&quot;: &quot;A String&quot;, # The header field value
4877 },
4878 ],
4879 &quot;path&quot;: &quot;A String&quot;, # Path to access on the HTTP server.
4880 # +optional
4881 &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.
4882 # Number must be in the range 1 to 65535.
4883 # Name must be an IANA_SVC_NAME.
4884 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
4885 # inner type. This allows you to have, for example, a JSON field that can
4886 # accept a name or number.
4887 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
4888 &quot;type&quot;: 42, # The type of the value.
4889 &quot;intVal&quot;: 42, # The int value.
4890 },
4891 &quot;host&quot;: &quot;A String&quot;, # Host name to connect to, defaults to the pod IP. You probably want to set
4892 # &quot;Host&quot; in httpHeaders instead.
4893 # +optional
4894 &quot;scheme&quot;: &quot;A String&quot;, # Scheme to use for connecting to the host.
4895 # Defaults to HTTP.
4896 # +optional
4897 },
4898 },
4899 },
4900 &quot;terminationMessagePath&quot;: &quot;A String&quot;, # Optional: Path at which the file to which the container&#x27;s termination
4901 # message will be written is mounted into the container&#x27;s filesystem. Message
4902 # written is intended to be brief final status, such as an assertion failure
4903 # message. Will be truncated by the node if greater than 4096 bytes. The
4904 # total message length across all containers will be limited to 12kb.
4905 # Defaults to /dev/termination-log.
4906 # Cannot be updated.
4907 # +optional
4908 &quot;stdin&quot;: True or False, # Whether this container should allocate a buffer for stdin in the container
4909 # runtime. If this is not set, reads from stdin in the container will always
4910 # result in EOF. Default is false. +optional
4911 &quot;volumeMounts&quot;: [ # Pod volumes to mount into the container&#x27;s filesystem.
4912 # Cannot be updated.
4913 # +optional
4914 { # VolumeMount describes a mounting of a Volume within a container.
4915 &quot;name&quot;: &quot;A String&quot;, # This must match the Name of a Volume.
4916 &quot;readOnly&quot;: True or False, # Mounted read-only if true, read-write otherwise (false or unspecified).
4917 # Defaults to false.
4918 # +optional
4919 &quot;mountPropagation&quot;: &quot;A String&quot;, # mountPropagation determines how mounts are propagated from the host
4920 # to container and the other way around.
4921 # When not set, MountPropagationHostToContainer is used.
4922 # This field is beta in 1.10.
4923 # +optional
4924 &quot;mountPath&quot;: &quot;A String&quot;, # Path within the container at which the volume should be mounted. Must
4925 # not contain &#x27;:&#x27;.
4926 &quot;subPath&quot;: &quot;A String&quot;, # Path within the volume from which the container&#x27;s volume should be mounted.
4927 # Defaults to &quot;&quot; (volume&#x27;s root).
4928 # +optional
4929 },
4930 ],
4931 &quot;tty&quot;: True or False, # Whether this container should allocate a TTY for itself, also requires
4932 # &#x27;stdin&#x27; to be true. Default is false. +optional
4933 &quot;volumeDevices&quot;: [ # volumeDevices is the list of block devices to be used by the container.
4934 # This is an alpha feature and may change in the future.
4935 # +optional
4936 { # volumeDevice describes a mapping of a raw block device within a container.
4937 &quot;name&quot;: &quot;A String&quot;, # name must match the name of a persistentVolumeClaim in the pod
4938 &quot;devicePath&quot;: &quot;A String&quot;, # devicePath is the path inside of the container that the device will be
4939 # mapped to.
4940 },
4941 ],
4942 &quot;stdinOnce&quot;: True or False, # Whether the container runtime should close the stdin channel after it has
4943 # been opened by a single attach. When stdin is true the stdin stream will
4944 # remain open across multiple attach sessions. If stdinOnce is set to true,
4945 # stdin is opened on container start, is empty until the first client
4946 # attaches to stdin, and then remains open and accepts data until the client
4947 # disconnects, at which time stdin is closed and remains closed until the
4948 # container is restarted. If this flag is false, a container processes that
4949 # reads from stdin will never receive an EOF. Default is false +optional
4950 &quot;args&quot;: [ # Arguments to the entrypoint.
4951 # The docker image&#x27;s CMD is used if this is not provided.
4952 # Variable references $(VAR_NAME) are expanded using the container&#x27;s
4953 # environment. If a variable cannot be resolved, the reference in the input
4954 # string will be unchanged. The $(VAR_NAME) syntax can be escaped with a
4955 # double $$, ie: $$(VAR_NAME). Escaped references will never be expanded,
4956 # regardless of whether the variable exists or not.
4957 # Cannot be updated.
4958 # More info:
4959 # https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
4960 # +optional
4961 &quot;A String&quot;,
4962 ],
4963 &quot;workingDir&quot;: &quot;A String&quot;, # Container&#x27;s working directory.
4964 # If not specified, the container runtime&#x27;s default will be used, which
4965 # might be configured in the container image.
4966 # Cannot be updated.
4967 # +optional
4968 &quot;ports&quot;: [ # List of ports to expose from the container. Exposing a port here gives
4969 # the system additional information about the network connections a
4970 # container uses, but is primarily informational. Not specifying a port here
4971 # DOES NOT prevent that port from being exposed. Any port which is
4972 # listening on the default &quot;0.0.0.0&quot; address inside a container will be
4973 # accessible from the network.
4974 # Cannot be updated.
4975 # +optional
4976 { # ContainerPort represents a network port in a single container.
4977 &quot;hostIP&quot;: &quot;A String&quot;, # What host IP to bind the external port to.
4978 # +optional
4979 &quot;name&quot;: &quot;A String&quot;, # If specified, this must be an IANA_SVC_NAME and unique within the pod. Each
4980 # named port in a pod must have a unique name. Name for the port that can be
4981 # referred to by services.
4982 # +optional
4983 &quot;hostPort&quot;: 42, # Number of port to expose on the host.
4984 # If specified, this must be a valid port number, 0 &lt; x &lt; 65536.
4985 # If HostNetwork is specified, this must match ContainerPort.
4986 # Most containers do not need this.
4987 # +optional
4988 &quot;containerPort&quot;: 42, # Number of port to expose on the pod&#x27;s IP address.
4989 # This must be a valid port number, 0 &lt; x &lt; 65536.
4990 &quot;protocol&quot;: &quot;A String&quot;, # Protocol for port. Must be UDP or TCP.
4991 # Defaults to &quot;TCP&quot;.
4992 # +optional
4993 },
4994 ],
4995 &quot;image&quot;: &quot;A String&quot;, # Docker image name.
4996 # More info: https://kubernetes.io/docs/concepts/containers/images
4997 &quot;envFrom&quot;: [ # List of sources to populate environment variables in the container.
4998 # The keys defined within a source must be a C_IDENTIFIER. All invalid keys
4999 # will be reported as an event when the container is starting. When a key
5000 # exists in multiple sources, the value associated with the last source will
5001 # take precedence. Values defined by an Env with a duplicate key will take
5002 # precedence. Cannot be updated. +optional
5003 { # EnvFromSource represents the source of a set of ConfigMaps
5004 &quot;prefix&quot;: &quot;A String&quot;, # An optional identifier to prepend to each key in the ConfigMap. Must be a
5005 # C_IDENTIFIER. +optional
5006 &quot;configMapRef&quot;: { # ConfigMapEnvSource selects a ConfigMap to populate the environment # The ConfigMap to select from
5007 # +optional
5008 # variables with.
5009 #
5010 # The contents of the target ConfigMap&#x27;s Data field will represent the
5011 # key-value pairs as environment variables.
5012 &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
5013 # directly into the message. Use the &quot;name&quot; field instead.
5014 # referenced object inside the same namespace.
5015 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
5016 # More info:
5017 # https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
5018 },
5019 &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported
5020 #
5021 # Cloud Run for Anthos: supported
5022 #
5023 # Specify whether the ConfigMap must be defined
5024 # +optional
5025 &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
5026 #
5027 # Cloud Run for Anthos: supported
5028 #
5029 # The ConfigMap to select from.
5030 },
5031 &quot;secretRef&quot;: { # SecretEnvSource selects a Secret to populate the environment # The Secret to select from
5032 # +optional
5033 # variables with.
5034 #
5035 # The contents of the target Secret&#x27;s Data field will represent the
5036 # key-value pairs as environment variables.
5037 &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
5038 #
5039 # Cloud Run for Anthos: supported
5040 #
5041 # The Secret to select from.
5042 &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
5043 # directly into the message. Use the &quot;name&quot; field instead.
5044 # referenced object inside the same namespace.
5045 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
5046 # More info:
5047 # https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
5048 },
5049 &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported
5050 #
5051 # Cloud Run for Anthos: supported
5052 #
5053 # Specify whether the Secret must be defined
5054 # +optional
5055 },
5056 },
5057 ],
5058 &quot;name&quot;: &quot;A String&quot;, # Name of the container specified as a DNS_LABEL.
5059 # Each container must have a unique name (DNS_LABEL).
5060 # Cannot be updated.
5061 &quot;command&quot;: [ # Entrypoint array. Not executed within a shell.
5062 # The docker image&#x27;s ENTRYPOINT is used if this is not provided.
5063 # Variable references $(VAR_NAME) are expanded using the container&#x27;s
5064 # environment. If a variable cannot be resolved, the reference in the input
5065 # string will be unchanged. The $(VAR_NAME) syntax can be escaped with a
5066 # double $$, ie: $$(VAR_NAME). Escaped references will never be expanded,
5067 # regardless of whether the variable exists or not.
5068 # Cannot be updated.
5069 # More info:
5070 # https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
5071 # +optional
5072 &quot;A String&quot;,
5073 ],
Bu Sun Kim65020912020-05-20 12:08:20 -07005074 },
Bu Sun Kim65020912020-05-20 12:08:20 -07005075 &quot;volumes&quot;: [
5076 { # Volume represents a named volume in a container.
5077 &quot;configMap&quot;: { # Adapts a ConfigMap into a volume.
5078 # The contents of the target ConfigMap&#x27;s Data field will be presented in a
5079 # volume as files using the keys in the Data field as the file names, unless
5080 # the items element is populated with specific mappings of keys to paths.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07005081 &quot;optional&quot;: True or False, # Specify whether the Secret or its keys must be defined.
Bu Sun Kim65020912020-05-20 12:08:20 -07005082 &quot;name&quot;: &quot;A String&quot;, # Name of the config.
5083 &quot;defaultMode&quot;: 42, # Mode bits to use on created files by default. Must be a value between 0 and
5084 # 0777. Defaults to 0644. Directories within the path are not affected by
5085 # this setting. This might be in conflict with other options that affect the
5086 # file mode, like fsGroup, and the result can be other mode bits set.
5087 &quot;items&quot;: [ # If unspecified, each key-value pair in the Data field of the referenced
5088 # Secret will be projected into the volume as a file whose name is the
5089 # key and content is the value. If specified, the listed keys will be
5090 # projected into the specified paths, and unlisted keys will not be
5091 # present. If a key is specified which is not present in the Secret,
5092 # the volume setup will error unless it is marked optional.
5093 { # Maps a string key to a path within a volume.
Bu Sun Kim65020912020-05-20 12:08:20 -07005094 &quot;path&quot;: &quot;A String&quot;, # The relative path of the file to map the key to.
5095 # May not be an absolute path.
5096 # May not contain the path element &#x27;..&#x27;.
5097 # May not start with the string &#x27;..&#x27;.
5098 &quot;mode&quot;: 42, # Mode bits to use on this file, must be a value between 0 and 0777. If not
5099 # specified, the volume defaultMode will be used. This might be in conflict
5100 # with other options that affect the file mode, like fsGroup, and the result
5101 # can be other mode bits set. +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07005102 &quot;key&quot;: &quot;A String&quot;, # The key to project.
Bu Sun Kim65020912020-05-20 12:08:20 -07005103 },
5104 ],
Bu Sun Kim65020912020-05-20 12:08:20 -07005105 },
5106 &quot;name&quot;: &quot;A String&quot;, # Volume&#x27;s name.
5107 &quot;secret&quot;: { # The contents of the target Secret&#x27;s Data field will be presented in a volume
5108 # as files using the keys in the Data field as the file names.
Bu Sun Kim65020912020-05-20 12:08:20 -07005109 &quot;defaultMode&quot;: 42, # Mode bits to use on created files by default. Must be a value between 0 and
5110 # 0777. Defaults to 0644. Directories within the path are not affected by
5111 # this setting. This might be in conflict with other options that affect the
5112 # file mode, like fsGroup, and the result can be other mode bits set.
5113 &quot;secretName&quot;: &quot;A String&quot;, # Name of the secret in the container&#x27;s namespace to use.
5114 &quot;items&quot;: [ # If unspecified, each key-value pair in the Data field of the referenced
5115 # Secret will be projected into the volume as a file whose name is the
5116 # key and content is the value. If specified, the listed keys will be
5117 # projected into the specified paths, and unlisted keys will not be
5118 # present. If a key is specified which is not present in the Secret,
5119 # the volume setup will error unless it is marked optional.
5120 { # Maps a string key to a path within a volume.
Bu Sun Kim65020912020-05-20 12:08:20 -07005121 &quot;path&quot;: &quot;A String&quot;, # The relative path of the file to map the key to.
5122 # May not be an absolute path.
5123 # May not contain the path element &#x27;..&#x27;.
5124 # May not start with the string &#x27;..&#x27;.
5125 &quot;mode&quot;: 42, # Mode bits to use on this file, must be a value between 0 and 0777. If not
5126 # specified, the volume defaultMode will be used. This might be in conflict
5127 # with other options that affect the file mode, like fsGroup, and the result
5128 # can be other mode bits set. +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07005129 &quot;key&quot;: &quot;A String&quot;, # The key to project.
Bu Sun Kim65020912020-05-20 12:08:20 -07005130 },
5131 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07005132 &quot;optional&quot;: True or False, # Specify whether the Secret or its keys must be defined.
Bu Sun Kim65020912020-05-20 12:08:20 -07005133 },
5134 },
5135 ],
5136 },
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07005137 &quot;metadata&quot;: { # ObjectMeta is metadata that all persisted resources must have, which includes # Optional metadata for this Revision, including labels and annotations. Name
5138 # will be generated by the Configuration.
5139 # To set minimum instances for this revision, use the
5140 # &quot;autoscaling.knative.dev/minScale&quot; annotation key. (Cloud Run on GKE only).
5141 # To set maximum instances for this revision, use the
5142 # &quot;autoscaling.knative.dev/maxScale&quot; annotation key.
5143 # To set Cloud SQL connections for the revision, use the
5144 # &quot;run.googleapis.com/cloudsql-instances&quot; annotation key. Values should be
5145 # comma separated.
5146 # all objects users must create.
5147 &quot;generateName&quot;: &quot;A String&quot;, # Not currently supported by Cloud Run.
5148 #
5149 # GenerateName is an optional prefix, used by the server, to generate a
5150 # unique name ONLY IF the Name field has not been provided. If this field is
5151 # used, the name returned to the client will be different than the name
5152 # passed. This value will also be combined with a unique suffix. The provided
5153 # value has the same validation rules as the Name field, and may be truncated
5154 # by the length of the suffix required to make the value unique on the
5155 # server.
5156 #
5157 # If this field is specified and the generated name exists, the server will
5158 # NOT return a 409 - instead, it will either return 201 Created or 500 with
5159 # Reason ServerTimeout indicating a unique name could not be found in the
5160 # time allotted, and the client should retry (optionally after the time
5161 # indicated in the Retry-After header).
5162 #
5163 # Applied only if Name is not specified.
5164 # More info:
5165 # https://git.k8s.io/community/contributors/devel/api-conventions.md#idempotency
5166 # +optional
5167 # string generateName = 2;
5168 &quot;name&quot;: &quot;A String&quot;, # Name must be unique within a namespace, within a Cloud Run region.
5169 # Is required when creating
5170 # resources, although some resources may allow a client to request the
5171 # generation of an appropriate name automatically. Name is primarily intended
5172 # for creation idempotence and configuration definition. Cannot be updated.
5173 # More info: http://kubernetes.io/docs/user-guide/identifiers#names
5174 # +optional
5175 &quot;deletionGracePeriodSeconds&quot;: 42, # Not currently supported by Cloud Run.
5176 #
5177 # Number of seconds allowed for this object to gracefully terminate before
5178 # it will be removed from the system. Only set when deletionTimestamp is also
5179 # set. May only be shortened. Read-only. +optional
5180 &quot;clusterName&quot;: &quot;A String&quot;, # Not currently supported by Cloud Run.
5181 #
5182 # The name of the cluster which the object belongs to.
5183 # This is used to distinguish resources with same name and namespace in
5184 # different clusters. This field is not set anywhere right now and apiserver
5185 # is going to ignore it if set in create or update request. +optional
5186 &quot;finalizers&quot;: [ # Not currently supported by Cloud Run.
5187 #
5188 # Must be empty before the object is deleted from the registry. Each entry
5189 # is an identifier for the responsible component that will remove the entry
5190 # from the list. If the deletionTimestamp of the object is non-nil, entries
5191 # in this list can only be removed.
5192 # +optional
5193 # +patchStrategy=merge
5194 &quot;A String&quot;,
5195 ],
5196 &quot;deletionTimestamp&quot;: &quot;A String&quot;, # DeletionTimestamp is RFC 3339 date and time at which this resource will be
5197 # deleted. This field is set by the server when a graceful deletion is
5198 # requested by the user, and is not directly settable by a client. The
5199 # resource is expected to be deleted (no longer visible from resource lists,
5200 # and not reachable by name) after the time in this field, once the
5201 # finalizers list is empty. As long as the finalizers list contains items,
5202 # deletion is blocked. Once the deletionTimestamp is set, this value may not
5203 # be unset or be set further into the future, although it may be shortened or
5204 # the resource may be deleted prior to this time. For example, a user may
5205 # request that a pod is deleted in 30 seconds. The Kubelet will react by
5206 # sending a graceful termination signal to the containers in the pod. After
5207 # that 30 seconds, the Kubelet will send a hard termination signal (SIGKILL)
5208 # to the container and after cleanup, remove the pod from the API. In the
5209 # presence of network partitions, this object may still exist after this
5210 # timestamp, until an administrator or automated process can determine the
5211 # resource is fully terminated.
5212 # If not set, graceful deletion of the object has not been requested.
5213 #
5214 # Populated by the system when a graceful deletion is requested.
5215 # Read-only.
5216 # More info:
5217 # https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
5218 # +optional
5219 &quot;ownerReferences&quot;: [ # List of objects that own this object. If ALL objects in the list have
5220 # been deleted, this object will be garbage collected.
5221 # +optional
5222 { # OwnerReference contains enough information to let you identify an owning
5223 # object. Currently, an owning object must be in the same namespace, so there
5224 # is no namespace field.
5225 &quot;controller&quot;: True or False, # If true, this reference points to the managing controller.
5226 # +optional
5227 &quot;kind&quot;: &quot;A String&quot;, # Kind of the referent.
5228 # More info:
5229 # https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds
5230 &quot;blockOwnerDeletion&quot;: True or False, # If true, AND if the owner has the &quot;foregroundDeletion&quot; finalizer, then
5231 # the owner cannot be deleted from the key-value store until this
5232 # reference is removed.
5233 # Defaults to false.
5234 # To set this field, a user needs &quot;delete&quot; permission of the owner,
5235 # otherwise 422 (Unprocessable Entity) will be returned.
5236 # +optional
5237 &quot;apiVersion&quot;: &quot;A String&quot;, # API version of the referent.
5238 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
5239 # More info: http://kubernetes.io/docs/user-guide/identifiers#names
5240 &quot;uid&quot;: &quot;A String&quot;, # UID of the referent.
5241 # More info: http://kubernetes.io/docs/user-guide/identifiers#uids
5242 },
5243 ],
5244 &quot;creationTimestamp&quot;: &quot;A String&quot;, # CreationTimestamp is a timestamp representing the server time when this
5245 # object was created. It is not guaranteed to be set in happens-before order
5246 # across separate operations. Clients may not set this value. It is
5247 # represented in RFC3339 form and is in UTC.
5248 #
5249 # Populated by the system.
5250 # Read-only.
5251 # Null for lists.
5252 # More info:
5253 # https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
5254 # +optional
5255 &quot;labels&quot;: { # Map of string keys and values that can be used to organize and categorize
5256 # (scope and select) objects. May match selectors of replication controllers
5257 # and routes.
5258 # More info: http://kubernetes.io/docs/user-guide/labels
5259 # +optional
5260 &quot;a_key&quot;: &quot;A String&quot;,
5261 },
5262 &quot;generation&quot;: 42, # A sequence number representing a specific generation of the desired state.
5263 # Populated by the system. Read-only.
5264 # +optional
5265 &quot;resourceVersion&quot;: &quot;A String&quot;, # An opaque value that represents the internal version of this object that
5266 # can be used by clients to determine when objects have changed. May be used
5267 # for optimistic concurrency, change detection, and the watch operation on a
5268 # resource or set of resources. Clients must treat these values as opaque and
5269 # passed unmodified back to the server. They may only be valid for a
5270 # particular resource or set of resources.
5271 #
5272 # Populated by the system.
5273 # Read-only.
5274 # Value must be treated as opaque by clients and .
5275 # More info:
5276 # https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency
5277 # +optional
5278 &quot;selfLink&quot;: &quot;A String&quot;, # SelfLink is a URL representing this object.
5279 # Populated by the system.
5280 # Read-only.
5281 # +optional
5282 # string selfLink = 4;
5283 &quot;uid&quot;: &quot;A String&quot;, # UID is the unique in time and space value for this object. It is typically
5284 # generated by the server on successful creation of a resource and is not
5285 # allowed to change on PUT operations.
5286 #
5287 # Populated by the system.
5288 # Read-only.
5289 # More info: http://kubernetes.io/docs/user-guide/identifiers#uids
5290 # +optional
5291 &quot;namespace&quot;: &quot;A String&quot;, # Namespace defines the space within each name must be unique, within a
5292 # Cloud Run region. In Cloud Run the namespace must be equal to either the
5293 # project ID or project number.
5294 &quot;annotations&quot;: { # Annotations is an unstructured key value map stored with a resource that
5295 # may be set by external tools to store and retrieve arbitrary metadata. They
5296 # are not queryable and should be preserved when modifying objects. More
5297 # info: http://kubernetes.io/docs/user-guide/annotations +optional
5298 &quot;a_key&quot;: &quot;A String&quot;,
5299 },
5300 },
Bu Sun Kim65020912020-05-20 12:08:20 -07005301 },
5302 &quot;revisionTemplate&quot;: { # RevisionTemplateSpec describes the data a revision should have when created # RevisionTemplate holds the latest specification for the Revision to
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07005303 # be stamped out. The template references the container image, and may also
5304 # include labels and annotations that should be attached to the Revision.
5305 # To correlate a Revision, and/or to force a Revision to be created when the
Bu Sun Kim65020912020-05-20 12:08:20 -07005306 # spec doesn&#x27;t otherwise change, a nonce label may be provided in the
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07005307 # template metadata. For more details, see:
5308 # https://github.com/knative/serving/blob/master/docs/client-conventions.md#associate-modifications-with-revisions
5309 #
5310 # Cloud Run does not currently support referencing a build that is
5311 # responsible for materializing the container image from source.
5312 # from a template. Based on:
5313 # https://github.com/kubernetes/api/blob/e771f807/core/v1/types.go#L3179-L3190
Bu Sun Kim65020912020-05-20 12:08:20 -07005314 &quot;spec&quot;: { # RevisionSpec holds the desired state of the Revision (from the client). # RevisionSpec holds the desired state of the Revision (from the client).
5315 &quot;containerConcurrency&quot;: 42, # (Optional)
Dan O'Mearadd494642020-05-01 07:42:23 -07005316 #
5317 # ContainerConcurrency specifies the maximum allowed in-flight (concurrent)
5318 # requests per container instance of the Revision.
5319 #
5320 # Cloud Run fully managed: supported, defaults to 80
5321 #
5322 # Cloud Run on GKE: supported, defaults to 0, which means concurrency
5323 # to the application is not limited, and the system decides the
5324 # target concurrency for the autoscaler.
Bu Sun Kim65020912020-05-20 12:08:20 -07005325 &quot;containers&quot;: [ # Containers holds the single container that defines the unit of execution
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07005326 # for this Revision. In the context of a Revision, we disallow a number of
5327 # fields on this Container, including: name and lifecycle.
Dan O'Mearadd494642020-05-01 07:42:23 -07005328 # In Cloud Run, only a single container may be provided.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07005329 { # A single application container.
5330 # This specifies both the container to run, the command to run in the container
5331 # and the arguments to supply to it.
5332 # Note that additional arguments may be supplied by the system to the container
5333 # at runtime.
Bu Sun Kim65020912020-05-20 12:08:20 -07005334 &quot;terminationMessagePolicy&quot;: &quot;A String&quot;, # Indicate how the termination message should be populated. File will use the
5335 # contents of terminationMessagePath to populate the container status message
5336 # on both success and failure. FallbackToLogsOnError will use the last chunk
5337 # of container log output if the termination message file is empty and the
5338 # container exited with an error. The log output is limited to 2048 bytes or
5339 # 80 lines, whichever is smaller. Defaults to File. Cannot be updated.
5340 # +optional
5341 &quot;securityContext&quot;: { # SecurityContext holds security configuration that will be applied to a # Security options the pod should run with.
5342 # More info: https://kubernetes.io/docs/concepts/policy/security-context/
5343 # More info:
5344 # https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
5345 # +optional
5346 # container. Some fields are present in both SecurityContext and
5347 # PodSecurityContext. When both are set, the values in SecurityContext take
5348 # precedence.
5349 &quot;capabilities&quot;: { # Adds and removes POSIX capabilities from running containers. # The capabilities to add/drop when running containers.
5350 # Defaults to the default set of capabilities granted by the container
5351 # runtime. +optional
5352 &quot;add&quot;: [ # Added capabilities
5353 # +optional
5354 &quot;A String&quot;,
5355 ],
5356 &quot;drop&quot;: [ # Removed capabilities
5357 # +optional
5358 &quot;A String&quot;,
5359 ],
5360 },
5361 &quot;runAsNonRoot&quot;: True or False, # Indicates that the container must run as a non-root user.
5362 # If true, the Kubelet will validate the image at runtime to ensure that it
5363 # does not run as UID 0 (root) and fail to start the container if it does.
5364 # If unset or false, no such validation will be performed.
5365 # May also be set in PodSecurityContext. If set in both SecurityContext and
5366 # PodSecurityContext, the value specified in SecurityContext takes
5367 # precedence. +optional
5368 &quot;runAsGroup&quot;: 42, # The GID to run the entrypoint of the container process.
5369 # Uses runtime default if unset.
5370 # May also be set in PodSecurityContext. If set in both SecurityContext and
5371 # PodSecurityContext, the value specified in SecurityContext takes
5372 # precedence. +optional
5373 &quot;privileged&quot;: True or False, # Run container in privileged mode.
5374 # Processes in privileged containers are essentially equivalent to root on
5375 # the host. Defaults to false. +optional
5376 &quot;allowPrivilegeEscalation&quot;: True or False, # AllowPrivilegeEscalation controls whether a process can gain more
5377 # privileges than its parent process. This bool directly controls if
5378 # the no_new_privs flag will be set on the container process.
5379 # AllowPrivilegeEscalation is true always when the container is:
5380 # 1) run as Privileged
5381 # 2) has CAP_SYS_ADMIN
5382 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07005383 &quot;readOnlyRootFilesystem&quot;: True or False, # Whether this container has a read-only root filesystem.
5384 # Default is false.
5385 # +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07005386 &quot;seLinuxOptions&quot;: { # SELinuxOptions are the labels to be applied to the container # The SELinux context to be applied to the container.
5387 # If unspecified, the container runtime will allocate a random SELinux
5388 # context for each container. May also be set in PodSecurityContext. If set
5389 # in both SecurityContext and PodSecurityContext, the value specified in
5390 # SecurityContext takes precedence. +optional
5391 &quot;role&quot;: &quot;A String&quot;, # Role is a SELinux role label that applies to the container.
5392 # +optional
5393 &quot;level&quot;: &quot;A String&quot;, # Level is SELinux level label that applies to the container.
5394 # +optional
5395 &quot;user&quot;: &quot;A String&quot;, # User is a SELinux user label that applies to the container.
5396 # +optional
5397 &quot;type&quot;: &quot;A String&quot;, # Type is a SELinux type label that applies to the container.
5398 # +optional
5399 },
Bu Sun Kim65020912020-05-20 12:08:20 -07005400 &quot;runAsUser&quot;: 42, # The UID to run the entrypoint of the container process.
5401 # Defaults to user specified in image metadata if unspecified.
5402 # May also be set in PodSecurityContext. If set in both SecurityContext and
5403 # PodSecurityContext, the value specified in SecurityContext takes
5404 # precedence. +optional
5405 },
5406 &quot;livenessProbe&quot;: { # Probe describes a health check to be performed against a container to # Periodic probe of container liveness.
5407 # Container will be restarted if the probe fails.
5408 # Cannot be updated.
5409 # More info:
5410 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
5411 # +optional
5412 # determine whether it is alive or ready to receive traffic.
Bu Sun Kim65020912020-05-20 12:08:20 -07005413 &quot;initialDelaySeconds&quot;: 42, # Number of seconds after the container has started before liveness probes
5414 # are initiated. More info:
5415 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
5416 # +optional
5417 &quot;timeoutSeconds&quot;: 42, # Number of seconds after which the probe times out.
5418 # Defaults to 1 second. Minimum value is 1.
5419 # More info:
5420 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
5421 # +optional
5422 &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 -07005423 &quot;tcpSocket&quot;: { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
5424 # TCP hooks not yet supported
5425 &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.
5426 # Number must be in the range 1 to 65535.
5427 # Name must be an IANA_SVC_NAME.
5428 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
5429 # inner type. This allows you to have, for example, a JSON field that can
5430 # accept a name or number.
5431 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
5432 &quot;type&quot;: 42, # The type of the value.
5433 &quot;intVal&quot;: 42, # The int value.
5434 },
5435 &quot;host&quot;: &quot;A String&quot;, # Optional: Host name to connect to, defaults to the pod IP.
5436 # +optional
5437 },
Bu Sun Kim65020912020-05-20 12:08:20 -07005438 &quot;exec&quot;: { # ExecAction describes a &quot;run in container&quot; action. # One and only one of the following should be specified.
5439 # Exec specifies the action to take.
5440 # +optional
5441 &quot;command&quot;: &quot;A String&quot;, # Command is the command line to execute inside the container, the working
5442 # directory for the command is root (&#x27;/&#x27;) in the container&#x27;s filesystem. The
5443 # command is simply exec&#x27;d, it is not run inside a shell, so traditional
5444 # shell instructions (&#x27;|&#x27;, etc) won&#x27;t work. To use a shell, you need to
5445 # explicitly call out to that shell. Exit status of 0 is treated as
5446 # live/healthy and non-zero is unhealthy. +optional
5447 },
5448 &quot;httpGet&quot;: { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
5449 # +optional
5450 &quot;httpHeaders&quot;: [ # Custom headers to set in the request. HTTP allows repeated headers.
5451 # +optional
5452 { # HTTPHeader describes a custom header to be used in HTTP probes
Bu Sun Kim65020912020-05-20 12:08:20 -07005453 &quot;name&quot;: &quot;A String&quot;, # The header field name
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07005454 &quot;value&quot;: &quot;A String&quot;, # The header field value
Bu Sun Kim65020912020-05-20 12:08:20 -07005455 },
5456 ],
5457 &quot;path&quot;: &quot;A String&quot;, # Path to access on the HTTP server.
5458 # +optional
5459 &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.
5460 # Number must be in the range 1 to 65535.
5461 # Name must be an IANA_SVC_NAME.
5462 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
5463 # inner type. This allows you to have, for example, a JSON field that can
5464 # accept a name or number.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07005465 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
Bu Sun Kim65020912020-05-20 12:08:20 -07005466 &quot;type&quot;: 42, # The type of the value.
5467 &quot;intVal&quot;: 42, # The int value.
Bu Sun Kim65020912020-05-20 12:08:20 -07005468 },
5469 &quot;host&quot;: &quot;A String&quot;, # Host name to connect to, defaults to the pod IP. You probably want to set
5470 # &quot;Host&quot; in httpHeaders instead.
5471 # +optional
5472 &quot;scheme&quot;: &quot;A String&quot;, # Scheme to use for connecting to the host.
5473 # Defaults to HTTP.
5474 # +optional
5475 },
Bu Sun Kim65020912020-05-20 12:08:20 -07005476 },
5477 &quot;successThreshold&quot;: 42, # Minimum consecutive successes for the probe to be considered successful
5478 # after having failed. Defaults to 1. Must be 1 for liveness. Minimum value
5479 # is 1. +optional
5480 &quot;periodSeconds&quot;: 42, # How often (in seconds) to perform the probe.
5481 # Default to 10 seconds. Minimum value is 1.
5482 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07005483 &quot;failureThreshold&quot;: 42, # Minimum consecutive failures for the probe to be considered failed after
5484 # having succeeded. Defaults to 3. Minimum value is 1. +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07005485 },
5486 &quot;env&quot;: [ # List of environment variables to set in the container.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07005487 # Cannot be updated.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07005488 # +optional
Dan O'Mearadd494642020-05-01 07:42:23 -07005489 { # EnvVar represents an environment variable present in a Container.
Bu Sun Kim65020912020-05-20 12:08:20 -07005490 &quot;name&quot;: &quot;A String&quot;, # Name of the environment variable. Must be a C_IDENTIFIER.
5491 &quot;valueFrom&quot;: { # Cloud Run fully managed: not supported # Cloud Run fully managed: not supported
Dan O'Mearadd494642020-05-01 07:42:23 -07005492 #
5493 # Cloud Run on GKE: supported
5494 #
Bu Sun Kim65020912020-05-20 12:08:20 -07005495 # Source for the environment variable&#x27;s value. Cannot be used if value is not
Dan O'Mearadd494642020-05-01 07:42:23 -07005496 # empty. +optional
5497 #
5498 # Cloud Run on GKE: supported
5499 #
5500 # EnvVarSource represents a source for the value of an EnvVar.
Bu Sun Kim65020912020-05-20 12:08:20 -07005501 &quot;configMapKeyRef&quot;: { # Cloud Run fully managed: not supported # Cloud Run fully managed: not supported
Dan O'Mearadd494642020-05-01 07:42:23 -07005502 #
5503 # Cloud Run on GKE: supported
5504 #
5505 # Selects a key of a ConfigMap.
5506 # +optional
5507 #
5508 # Cloud Run on GKE: supported
5509 #
5510 # Selects a key from a ConfigMap.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07005511 &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
5512 # directly into the message. Use the &quot;name&quot; field instead.
5513 # referenced object inside the same namespace.
5514 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
5515 # More info:
5516 # https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
5517 },
Bu Sun Kim65020912020-05-20 12:08:20 -07005518 &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported
Dan O'Mearadd494642020-05-01 07:42:23 -07005519 #
5520 # Cloud Run on GKE: supported
5521 #
5522 # Specify whether the ConfigMap or its key must be defined
5523 # +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07005524 &quot;key&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
Dan O'Mearadd494642020-05-01 07:42:23 -07005525 #
5526 # Cloud Run on GKE: supported
5527 #
5528 # The key to select.
Bu Sun Kim65020912020-05-20 12:08:20 -07005529 &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
5530 #
5531 # Cloud Run on GKE: supported
5532 #
5533 # The ConfigMap to select from.
Bu Sun Kim65020912020-05-20 12:08:20 -07005534 },
5535 &quot;secretKeyRef&quot;: { # Cloud Run fully managed: not supported # Cloud Run fully managed: not supported
5536 #
5537 # Cloud Run on GKE: supported
5538 #
5539 # Selects a key of a secret in the pod&#x27;s namespace
5540 # +optional
5541 #
5542 # Cloud Run on GKE: supported
5543 #
5544 # SecretKeySelector selects a key of a Secret.
Bu Sun Kim65020912020-05-20 12:08:20 -07005545 &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported
5546 #
5547 # Cloud Run on GKE: supported
5548 #
5549 # Specify whether the Secret or its key must be defined
5550 # +optional
5551 &quot;key&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
5552 #
5553 # Cloud Run on GKE: supported
5554 #
5555 # The key of the secret to select from. Must be a valid secret key.
5556 &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
5557 #
5558 # Cloud Run on GKE: supported
5559 #
5560 # The name of the secret in the pod&#x27;s namespace to select from.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07005561 &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
5562 # directly into the message. Use the &quot;name&quot; field instead.
5563 # referenced object inside the same namespace.
5564 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
5565 # More info:
5566 # https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
5567 },
Dan O'Mearadd494642020-05-01 07:42:23 -07005568 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07005569 },
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07005570 &quot;value&quot;: &quot;A String&quot;, # Variable references $(VAR_NAME) are expanded
5571 # using the previous defined environment variables in the container and
5572 # any route environment variables. If a variable cannot be resolved,
5573 # the reference in the input string will be unchanged. The $(VAR_NAME)
5574 # syntax can be escaped with a double $$, ie: $$(VAR_NAME). Escaped
5575 # references will never be expanded, regardless of whether the variable
5576 # exists or not.
5577 # Defaults to &quot;&quot;.
5578 # +optional
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07005579 },
Dan O'Mearadd494642020-05-01 07:42:23 -07005580 ],
Bu Sun Kim65020912020-05-20 12:08:20 -07005581 &quot;resources&quot;: { # ResourceRequirements describes the compute resource requirements. # Compute Resources required by this container.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07005582 # Cannot be updated.
5583 # More info:
5584 # https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
5585 # +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07005586 &quot;requestsInMap&quot;: { # Requests describes the minimum amount of compute resources required.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07005587 # If Requests is omitted for a container, it defaults to Limits if that is
5588 # explicitly specified, otherwise to an implementation-defined value.
5589 # This is a temporary field created to migrate away from the
Dan O'Mearadd494642020-05-01 07:42:23 -07005590 # map&lt;string, Quantity&gt; requests field. This is done to become compliant
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07005591 # with k8s style API.
5592 # This field is deprecated in favor of requests field.
Bu Sun Kim65020912020-05-20 12:08:20 -07005593 &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 -07005594 # 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 -07005595 &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 -07005596 },
5597 },
Bu Sun Kim65020912020-05-20 12:08:20 -07005598 &quot;requests&quot;: { # Requests describes the minimum amount of compute resources required.
Dan O'Mearadd494642020-05-01 07:42:23 -07005599 # If Requests is omitted for a container, it defaults to Limits if that is
5600 # explicitly specified, otherwise to an implementation-defined value.
Bu Sun Kim65020912020-05-20 12:08:20 -07005601 # The values of the map is string form of the &#x27;quantity&#x27; k8s type:
Dan O'Mearadd494642020-05-01 07:42:23 -07005602 # 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 -07005603 &quot;a_key&quot;: &quot;A String&quot;,
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07005604 },
Bu Sun Kim65020912020-05-20 12:08:20 -07005605 &quot;limits&quot;: { # Limits describes the maximum amount of compute resources allowed.
5606 # The values of the map is string form of the &#x27;quantity&#x27; k8s type:
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07005607 # 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 -07005608 &quot;a_key&quot;: &quot;A String&quot;,
5609 },
5610 &quot;limitsInMap&quot;: { # Limits describes the maximum amount of compute resources allowed.
5611 # This is a temporary field created to migrate away from the
5612 # map&lt;string, Quantity&gt; limits field. This is done to become compliant
5613 # with k8s style API.
5614 # This field is deprecated in favor of limits field.
5615 &quot;a_key&quot;: { # The view model of a single quantity, e.g. &quot;800 MiB&quot;. Corresponds to
5616 # https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/generated.proto
5617 &quot;string&quot;: &quot;A String&quot;, # Stringified version of the quantity, e.g., &quot;800 MiB&quot;.
5618 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07005619 },
5620 },
Bu Sun Kim65020912020-05-20 12:08:20 -07005621 &quot;readinessProbe&quot;: { # Probe describes a health check to be performed against a container to # Periodic probe of container service readiness.
5622 # Container will be removed from service endpoints if the probe fails.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07005623 # Cannot be updated.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07005624 # More info:
Bu Sun Kim65020912020-05-20 12:08:20 -07005625 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07005626 # +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07005627 # determine whether it is alive or ready to receive traffic.
Bu Sun Kim65020912020-05-20 12:08:20 -07005628 &quot;initialDelaySeconds&quot;: 42, # Number of seconds after the container has started before liveness probes
5629 # are initiated. More info:
5630 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
5631 # +optional
5632 &quot;timeoutSeconds&quot;: 42, # Number of seconds after which the probe times out.
5633 # Defaults to 1 second. Minimum value is 1.
5634 # More info:
5635 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
5636 # +optional
5637 &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 -07005638 &quot;tcpSocket&quot;: { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
5639 # TCP hooks not yet supported
5640 &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.
5641 # Number must be in the range 1 to 65535.
5642 # Name must be an IANA_SVC_NAME.
5643 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
5644 # inner type. This allows you to have, for example, a JSON field that can
5645 # accept a name or number.
5646 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
5647 &quot;type&quot;: 42, # The type of the value.
5648 &quot;intVal&quot;: 42, # The int value.
5649 },
5650 &quot;host&quot;: &quot;A String&quot;, # Optional: Host name to connect to, defaults to the pod IP.
5651 # +optional
5652 },
Bu Sun Kim65020912020-05-20 12:08:20 -07005653 &quot;exec&quot;: { # ExecAction describes a &quot;run in container&quot; action. # One and only one of the following should be specified.
5654 # Exec specifies the action to take.
5655 # +optional
5656 &quot;command&quot;: &quot;A String&quot;, # Command is the command line to execute inside the container, the working
5657 # directory for the command is root (&#x27;/&#x27;) in the container&#x27;s filesystem. The
5658 # command is simply exec&#x27;d, it is not run inside a shell, so traditional
5659 # shell instructions (&#x27;|&#x27;, etc) won&#x27;t work. To use a shell, you need to
5660 # explicitly call out to that shell. Exit status of 0 is treated as
5661 # live/healthy and non-zero is unhealthy. +optional
5662 },
5663 &quot;httpGet&quot;: { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
5664 # +optional
5665 &quot;httpHeaders&quot;: [ # Custom headers to set in the request. HTTP allows repeated headers.
5666 # +optional
5667 { # HTTPHeader describes a custom header to be used in HTTP probes
Bu Sun Kim65020912020-05-20 12:08:20 -07005668 &quot;name&quot;: &quot;A String&quot;, # The header field name
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07005669 &quot;value&quot;: &quot;A String&quot;, # The header field value
Bu Sun Kim65020912020-05-20 12:08:20 -07005670 },
5671 ],
5672 &quot;path&quot;: &quot;A String&quot;, # Path to access on the HTTP server.
5673 # +optional
5674 &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.
5675 # Number must be in the range 1 to 65535.
5676 # Name must be an IANA_SVC_NAME.
5677 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
5678 # inner type. This allows you to have, for example, a JSON field that can
5679 # accept a name or number.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07005680 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
Bu Sun Kim65020912020-05-20 12:08:20 -07005681 &quot;type&quot;: 42, # The type of the value.
5682 &quot;intVal&quot;: 42, # The int value.
Bu Sun Kim65020912020-05-20 12:08:20 -07005683 },
5684 &quot;host&quot;: &quot;A String&quot;, # Host name to connect to, defaults to the pod IP. You probably want to set
5685 # &quot;Host&quot; in httpHeaders instead.
5686 # +optional
5687 &quot;scheme&quot;: &quot;A String&quot;, # Scheme to use for connecting to the host.
5688 # Defaults to HTTP.
5689 # +optional
5690 },
Bu Sun Kim65020912020-05-20 12:08:20 -07005691 },
5692 &quot;successThreshold&quot;: 42, # Minimum consecutive successes for the probe to be considered successful
5693 # after having failed. Defaults to 1. Must be 1 for liveness. Minimum value
5694 # is 1. +optional
5695 &quot;periodSeconds&quot;: 42, # How often (in seconds) to perform the probe.
5696 # Default to 10 seconds. Minimum value is 1.
5697 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07005698 &quot;failureThreshold&quot;: 42, # Minimum consecutive failures for the probe to be considered failed after
5699 # having succeeded. Defaults to 3. Minimum value is 1. +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07005700 },
5701 &quot;imagePullPolicy&quot;: &quot;A String&quot;, # Image pull policy.
5702 # One of Always, Never, IfNotPresent.
5703 # Defaults to Always if :latest tag is specified, or IfNotPresent otherwise.
5704 # Cannot be updated.
5705 # More info:
5706 # https://kubernetes.io/docs/concepts/containers/images#updating-images
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07005707 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07005708 &quot;lifecycle&quot;: { # Lifecycle describes actions that the management system should take in # Actions that the management system should take in response to container
5709 # lifecycle events. Cannot be updated. +optional
5710 # response to container lifecycle events. For the PostStart and PreStop
5711 # lifecycle handlers, management of the container blocks until the action is
5712 # complete, unless the container process fails, in which case the handler is
5713 # aborted.
5714 &quot;preStop&quot;: { # Handler defines a specific action that should be taken # PreStop is called immediately before a container is terminated.
5715 # The container is terminated after the handler completes.
5716 # The reason for termination is passed to the handler.
5717 # Regardless of the outcome of the handler, the container is eventually
5718 # terminated. Other management of the container blocks until the hook
5719 # completes. More info:
5720 # https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
5721 # +optional
5722 &quot;tcpSocket&quot;: { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
5723 # TCP hooks not yet supported
5724 &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.
5725 # Number must be in the range 1 to 65535.
5726 # Name must be an IANA_SVC_NAME.
5727 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
5728 # inner type. This allows you to have, for example, a JSON field that can
5729 # accept a name or number.
5730 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
5731 &quot;type&quot;: 42, # The type of the value.
5732 &quot;intVal&quot;: 42, # The int value.
5733 },
5734 &quot;host&quot;: &quot;A String&quot;, # Optional: Host name to connect to, defaults to the pod IP.
5735 # +optional
5736 },
5737 &quot;exec&quot;: { # ExecAction describes a &quot;run in container&quot; action. # One and only one of the following should be specified.
5738 # Exec specifies the action to take.
5739 # +optional
5740 &quot;command&quot;: &quot;A String&quot;, # Command is the command line to execute inside the container, the working
5741 # directory for the command is root (&#x27;/&#x27;) in the container&#x27;s filesystem. The
5742 # command is simply exec&#x27;d, it is not run inside a shell, so traditional
5743 # shell instructions (&#x27;|&#x27;, etc) won&#x27;t work. To use a shell, you need to
5744 # explicitly call out to that shell. Exit status of 0 is treated as
5745 # live/healthy and non-zero is unhealthy. +optional
5746 },
5747 &quot;httpGet&quot;: { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
5748 # +optional
5749 &quot;httpHeaders&quot;: [ # Custom headers to set in the request. HTTP allows repeated headers.
5750 # +optional
5751 { # HTTPHeader describes a custom header to be used in HTTP probes
5752 &quot;name&quot;: &quot;A String&quot;, # The header field name
5753 &quot;value&quot;: &quot;A String&quot;, # The header field value
5754 },
5755 ],
5756 &quot;path&quot;: &quot;A String&quot;, # Path to access on the HTTP server.
5757 # +optional
5758 &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.
5759 # Number must be in the range 1 to 65535.
5760 # Name must be an IANA_SVC_NAME.
5761 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
5762 # inner type. This allows you to have, for example, a JSON field that can
5763 # accept a name or number.
5764 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
5765 &quot;type&quot;: 42, # The type of the value.
5766 &quot;intVal&quot;: 42, # The int value.
5767 },
5768 &quot;host&quot;: &quot;A String&quot;, # Host name to connect to, defaults to the pod IP. You probably want to set
5769 # &quot;Host&quot; in httpHeaders instead.
5770 # +optional
5771 &quot;scheme&quot;: &quot;A String&quot;, # Scheme to use for connecting to the host.
5772 # Defaults to HTTP.
5773 # +optional
5774 },
5775 },
5776 &quot;postStart&quot;: { # Handler defines a specific action that should be taken # PostStart is called immediately after a container is created. If the
5777 # handler fails, the container is terminated and restarted according to its
5778 # restart policy. Other management of the container blocks until the hook
5779 # completes. More info:
5780 # https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
5781 # +optional
5782 &quot;tcpSocket&quot;: { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
5783 # TCP hooks not yet supported
5784 &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.
5785 # Number must be in the range 1 to 65535.
5786 # Name must be an IANA_SVC_NAME.
5787 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
5788 # inner type. This allows you to have, for example, a JSON field that can
5789 # accept a name or number.
5790 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
5791 &quot;type&quot;: 42, # The type of the value.
5792 &quot;intVal&quot;: 42, # The int value.
5793 },
5794 &quot;host&quot;: &quot;A String&quot;, # Optional: Host name to connect to, defaults to the pod IP.
5795 # +optional
5796 },
5797 &quot;exec&quot;: { # ExecAction describes a &quot;run in container&quot; action. # One and only one of the following should be specified.
5798 # Exec specifies the action to take.
5799 # +optional
5800 &quot;command&quot;: &quot;A String&quot;, # Command is the command line to execute inside the container, the working
5801 # directory for the command is root (&#x27;/&#x27;) in the container&#x27;s filesystem. The
5802 # command is simply exec&#x27;d, it is not run inside a shell, so traditional
5803 # shell instructions (&#x27;|&#x27;, etc) won&#x27;t work. To use a shell, you need to
5804 # explicitly call out to that shell. Exit status of 0 is treated as
5805 # live/healthy and non-zero is unhealthy. +optional
5806 },
5807 &quot;httpGet&quot;: { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
5808 # +optional
5809 &quot;httpHeaders&quot;: [ # Custom headers to set in the request. HTTP allows repeated headers.
5810 # +optional
5811 { # HTTPHeader describes a custom header to be used in HTTP probes
5812 &quot;name&quot;: &quot;A String&quot;, # The header field name
5813 &quot;value&quot;: &quot;A String&quot;, # The header field value
5814 },
5815 ],
5816 &quot;path&quot;: &quot;A String&quot;, # Path to access on the HTTP server.
5817 # +optional
5818 &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.
5819 # Number must be in the range 1 to 65535.
5820 # Name must be an IANA_SVC_NAME.
5821 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
5822 # inner type. This allows you to have, for example, a JSON field that can
5823 # accept a name or number.
5824 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
5825 &quot;type&quot;: 42, # The type of the value.
5826 &quot;intVal&quot;: 42, # The int value.
5827 },
5828 &quot;host&quot;: &quot;A String&quot;, # Host name to connect to, defaults to the pod IP. You probably want to set
5829 # &quot;Host&quot; in httpHeaders instead.
5830 # +optional
5831 &quot;scheme&quot;: &quot;A String&quot;, # Scheme to use for connecting to the host.
5832 # Defaults to HTTP.
5833 # +optional
5834 },
5835 },
5836 },
5837 &quot;terminationMessagePath&quot;: &quot;A String&quot;, # Optional: Path at which the file to which the container&#x27;s termination
5838 # message will be written is mounted into the container&#x27;s filesystem. Message
5839 # written is intended to be brief final status, such as an assertion failure
5840 # message. Will be truncated by the node if greater than 4096 bytes. The
5841 # total message length across all containers will be limited to 12kb.
5842 # Defaults to /dev/termination-log.
5843 # Cannot be updated.
5844 # +optional
5845 &quot;stdin&quot;: True or False, # Whether this container should allocate a buffer for stdin in the container
5846 # runtime. If this is not set, reads from stdin in the container will always
5847 # result in EOF. Default is false. +optional
5848 &quot;volumeMounts&quot;: [ # Pod volumes to mount into the container&#x27;s filesystem.
5849 # Cannot be updated.
5850 # +optional
5851 { # VolumeMount describes a mounting of a Volume within a container.
5852 &quot;name&quot;: &quot;A String&quot;, # This must match the Name of a Volume.
5853 &quot;readOnly&quot;: True or False, # Mounted read-only if true, read-write otherwise (false or unspecified).
5854 # Defaults to false.
5855 # +optional
5856 &quot;mountPropagation&quot;: &quot;A String&quot;, # mountPropagation determines how mounts are propagated from the host
5857 # to container and the other way around.
5858 # When not set, MountPropagationHostToContainer is used.
5859 # This field is beta in 1.10.
5860 # +optional
5861 &quot;mountPath&quot;: &quot;A String&quot;, # Path within the container at which the volume should be mounted. Must
5862 # not contain &#x27;:&#x27;.
5863 &quot;subPath&quot;: &quot;A String&quot;, # Path within the volume from which the container&#x27;s volume should be mounted.
5864 # Defaults to &quot;&quot; (volume&#x27;s root).
5865 # +optional
5866 },
5867 ],
5868 &quot;tty&quot;: True or False, # Whether this container should allocate a TTY for itself, also requires
5869 # &#x27;stdin&#x27; to be true. Default is false. +optional
5870 &quot;volumeDevices&quot;: [ # volumeDevices is the list of block devices to be used by the container.
5871 # This is an alpha feature and may change in the future.
5872 # +optional
5873 { # volumeDevice describes a mapping of a raw block device within a container.
5874 &quot;name&quot;: &quot;A String&quot;, # name must match the name of a persistentVolumeClaim in the pod
5875 &quot;devicePath&quot;: &quot;A String&quot;, # devicePath is the path inside of the container that the device will be
5876 # mapped to.
5877 },
5878 ],
5879 &quot;stdinOnce&quot;: True or False, # Whether the container runtime should close the stdin channel after it has
5880 # been opened by a single attach. When stdin is true the stdin stream will
5881 # remain open across multiple attach sessions. If stdinOnce is set to true,
5882 # stdin is opened on container start, is empty until the first client
5883 # attaches to stdin, and then remains open and accepts data until the client
5884 # disconnects, at which time stdin is closed and remains closed until the
5885 # container is restarted. If this flag is false, a container processes that
5886 # reads from stdin will never receive an EOF. Default is false +optional
5887 &quot;args&quot;: [ # Arguments to the entrypoint.
5888 # The docker image&#x27;s CMD is used if this is not provided.
5889 # Variable references $(VAR_NAME) are expanded using the container&#x27;s
5890 # environment. If a variable cannot be resolved, the reference in the input
5891 # string will be unchanged. The $(VAR_NAME) syntax can be escaped with a
5892 # double $$, ie: $$(VAR_NAME). Escaped references will never be expanded,
5893 # regardless of whether the variable exists or not.
5894 # Cannot be updated.
5895 # More info:
5896 # https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
5897 # +optional
5898 &quot;A String&quot;,
5899 ],
5900 &quot;workingDir&quot;: &quot;A String&quot;, # Container&#x27;s working directory.
5901 # If not specified, the container runtime&#x27;s default will be used, which
5902 # might be configured in the container image.
5903 # Cannot be updated.
5904 # +optional
5905 &quot;ports&quot;: [ # List of ports to expose from the container. Exposing a port here gives
5906 # the system additional information about the network connections a
5907 # container uses, but is primarily informational. Not specifying a port here
5908 # DOES NOT prevent that port from being exposed. Any port which is
5909 # listening on the default &quot;0.0.0.0&quot; address inside a container will be
5910 # accessible from the network.
5911 # Cannot be updated.
5912 # +optional
5913 { # ContainerPort represents a network port in a single container.
5914 &quot;hostIP&quot;: &quot;A String&quot;, # What host IP to bind the external port to.
5915 # +optional
5916 &quot;name&quot;: &quot;A String&quot;, # If specified, this must be an IANA_SVC_NAME and unique within the pod. Each
5917 # named port in a pod must have a unique name. Name for the port that can be
5918 # referred to by services.
5919 # +optional
5920 &quot;hostPort&quot;: 42, # Number of port to expose on the host.
5921 # If specified, this must be a valid port number, 0 &lt; x &lt; 65536.
5922 # If HostNetwork is specified, this must match ContainerPort.
5923 # Most containers do not need this.
5924 # +optional
5925 &quot;containerPort&quot;: 42, # Number of port to expose on the pod&#x27;s IP address.
5926 # This must be a valid port number, 0 &lt; x &lt; 65536.
5927 &quot;protocol&quot;: &quot;A String&quot;, # Protocol for port. Must be UDP or TCP.
5928 # Defaults to &quot;TCP&quot;.
5929 # +optional
5930 },
5931 ],
5932 &quot;image&quot;: &quot;A String&quot;, # Docker image name.
5933 # More info: https://kubernetes.io/docs/concepts/containers/images
5934 &quot;envFrom&quot;: [ # List of sources to populate environment variables in the container.
5935 # The keys defined within a source must be a C_IDENTIFIER. All invalid keys
5936 # will be reported as an event when the container is starting. When a key
5937 # exists in multiple sources, the value associated with the last source will
5938 # take precedence. Values defined by an Env with a duplicate key will take
5939 # precedence. Cannot be updated. +optional
5940 { # EnvFromSource represents the source of a set of ConfigMaps
5941 &quot;prefix&quot;: &quot;A String&quot;, # An optional identifier to prepend to each key in the ConfigMap. Must be a
5942 # C_IDENTIFIER. +optional
5943 &quot;configMapRef&quot;: { # ConfigMapEnvSource selects a ConfigMap to populate the environment # The ConfigMap to select from
5944 # +optional
5945 # variables with.
5946 #
5947 # The contents of the target ConfigMap&#x27;s Data field will represent the
5948 # key-value pairs as environment variables.
5949 &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
5950 # directly into the message. Use the &quot;name&quot; field instead.
5951 # referenced object inside the same namespace.
5952 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
5953 # More info:
5954 # https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
5955 },
5956 &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported
5957 #
5958 # Cloud Run for Anthos: supported
5959 #
5960 # Specify whether the ConfigMap must be defined
5961 # +optional
5962 &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
5963 #
5964 # Cloud Run for Anthos: supported
5965 #
5966 # The ConfigMap to select from.
5967 },
5968 &quot;secretRef&quot;: { # SecretEnvSource selects a Secret to populate the environment # The Secret to select from
5969 # +optional
5970 # variables with.
5971 #
5972 # The contents of the target Secret&#x27;s Data field will represent the
5973 # key-value pairs as environment variables.
5974 &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
5975 #
5976 # Cloud Run for Anthos: supported
5977 #
5978 # The Secret to select from.
5979 &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
5980 # directly into the message. Use the &quot;name&quot; field instead.
5981 # referenced object inside the same namespace.
5982 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
5983 # More info:
5984 # https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
5985 },
5986 &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported
5987 #
5988 # Cloud Run for Anthos: supported
5989 #
5990 # Specify whether the Secret must be defined
5991 # +optional
5992 },
5993 },
5994 ],
5995 &quot;name&quot;: &quot;A String&quot;, # Name of the container specified as a DNS_LABEL.
5996 # Each container must have a unique name (DNS_LABEL).
5997 # Cannot be updated.
5998 &quot;command&quot;: [ # Entrypoint array. Not executed within a shell.
5999 # The docker image&#x27;s ENTRYPOINT is used if this is not provided.
6000 # Variable references $(VAR_NAME) are expanded using the container&#x27;s
6001 # environment. If a variable cannot be resolved, the reference in the input
6002 # string will be unchanged. The $(VAR_NAME) syntax can be escaped with a
6003 # double $$, ie: $$(VAR_NAME). Escaped references will never be expanded,
6004 # regardless of whether the variable exists or not.
6005 # Cannot be updated.
6006 # More info:
6007 # https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
6008 # +optional
6009 &quot;A String&quot;,
6010 ],
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07006011 },
6012 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07006013 &quot;serviceAccountName&quot;: &quot;A String&quot;, # Email address of the IAM service account associated with the revision
6014 # of the service. The service account represents the identity of the
6015 # running revision, and determines what permissions the revision has. If
6016 # not provided, the revision will use the project&#x27;s default service account.
Bu Sun Kim65020912020-05-20 12:08:20 -07006017 &quot;generation&quot;: 42, # Deprecated and not currently populated by Cloud Run. See
6018 # metadata.generation instead, which is the sequence number containing the
6019 # latest generation of the desired state.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07006020 #
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07006021 # Read-only.
Bu Sun Kim65020912020-05-20 12:08:20 -07006022 &quot;servingState&quot;: &quot;A String&quot;, # ServingState holds a value describing the state the resources
6023 # are in for this Revision.
6024 # Users must not specify this when creating a revision. It is expected
6025 # that the system will manipulate this based on routability and load.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07006026 #
Bu Sun Kim65020912020-05-20 12:08:20 -07006027 # Populated by the system.
6028 # Read-only.
6029 &quot;concurrencyModel&quot;: &quot;A String&quot;, # ConcurrencyModel specifies the desired concurrency model
6030 # (Single or Multi) for the Revision. Defaults to Multi.
6031 # Deprecated in favor of ContainerConcurrency.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07006032 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07006033 &quot;timeoutSeconds&quot;: 42, # TimeoutSeconds holds the max duration the instance is allowed for
6034 # responding to a request.
6035 # Not currently used by Cloud Run.
Bu Sun Kim65020912020-05-20 12:08:20 -07006036 &quot;container&quot;: { # A single application container. # Container defines the unit of execution for this Revision.
6037 # In the context of a Revision, we disallow a number of the fields of
6038 # this Container, including: name, ports, and volumeMounts.
6039 # The runtime contract is documented here:
6040 # https://github.com/knative/serving/blob/master/docs/runtime-contract.md
6041 # This specifies both the container to run, the command to run in the container
6042 # and the arguments to supply to it.
6043 # Note that additional arguments may be supplied by the system to the container
6044 # at runtime.
Bu Sun Kim65020912020-05-20 12:08:20 -07006045 &quot;terminationMessagePolicy&quot;: &quot;A String&quot;, # Indicate how the termination message should be populated. File will use the
6046 # contents of terminationMessagePath to populate the container status message
6047 # on both success and failure. FallbackToLogsOnError will use the last chunk
6048 # of container log output if the termination message file is empty and the
6049 # container exited with an error. The log output is limited to 2048 bytes or
6050 # 80 lines, whichever is smaller. Defaults to File. Cannot be updated.
6051 # +optional
6052 &quot;securityContext&quot;: { # SecurityContext holds security configuration that will be applied to a # Security options the pod should run with.
6053 # More info: https://kubernetes.io/docs/concepts/policy/security-context/
6054 # More info:
6055 # https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
6056 # +optional
6057 # container. Some fields are present in both SecurityContext and
6058 # PodSecurityContext. When both are set, the values in SecurityContext take
6059 # precedence.
6060 &quot;capabilities&quot;: { # Adds and removes POSIX capabilities from running containers. # The capabilities to add/drop when running containers.
6061 # Defaults to the default set of capabilities granted by the container
6062 # runtime. +optional
6063 &quot;add&quot;: [ # Added capabilities
6064 # +optional
6065 &quot;A String&quot;,
6066 ],
6067 &quot;drop&quot;: [ # Removed capabilities
6068 # +optional
6069 &quot;A String&quot;,
6070 ],
6071 },
6072 &quot;runAsNonRoot&quot;: True or False, # Indicates that the container must run as a non-root user.
6073 # If true, the Kubelet will validate the image at runtime to ensure that it
6074 # does not run as UID 0 (root) and fail to start the container if it does.
6075 # If unset or false, no such validation will be performed.
6076 # May also be set in PodSecurityContext. If set in both SecurityContext and
6077 # PodSecurityContext, the value specified in SecurityContext takes
6078 # precedence. +optional
6079 &quot;runAsGroup&quot;: 42, # The GID to run the entrypoint of the container process.
6080 # Uses runtime default if unset.
6081 # May also be set in PodSecurityContext. If set in both SecurityContext and
6082 # PodSecurityContext, the value specified in SecurityContext takes
6083 # precedence. +optional
6084 &quot;privileged&quot;: True or False, # Run container in privileged mode.
6085 # Processes in privileged containers are essentially equivalent to root on
6086 # the host. Defaults to false. +optional
6087 &quot;allowPrivilegeEscalation&quot;: True or False, # AllowPrivilegeEscalation controls whether a process can gain more
6088 # privileges than its parent process. This bool directly controls if
6089 # the no_new_privs flag will be set on the container process.
6090 # AllowPrivilegeEscalation is true always when the container is:
6091 # 1) run as Privileged
6092 # 2) has CAP_SYS_ADMIN
6093 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07006094 &quot;readOnlyRootFilesystem&quot;: True or False, # Whether this container has a read-only root filesystem.
6095 # Default is false.
6096 # +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07006097 &quot;seLinuxOptions&quot;: { # SELinuxOptions are the labels to be applied to the container # The SELinux context to be applied to the container.
6098 # If unspecified, the container runtime will allocate a random SELinux
6099 # context for each container. May also be set in PodSecurityContext. If set
6100 # in both SecurityContext and PodSecurityContext, the value specified in
6101 # SecurityContext takes precedence. +optional
6102 &quot;role&quot;: &quot;A String&quot;, # Role is a SELinux role label that applies to the container.
6103 # +optional
6104 &quot;level&quot;: &quot;A String&quot;, # Level is SELinux level label that applies to the container.
6105 # +optional
6106 &quot;user&quot;: &quot;A String&quot;, # User is a SELinux user label that applies to the container.
6107 # +optional
6108 &quot;type&quot;: &quot;A String&quot;, # Type is a SELinux type label that applies to the container.
6109 # +optional
6110 },
Bu Sun Kim65020912020-05-20 12:08:20 -07006111 &quot;runAsUser&quot;: 42, # The UID to run the entrypoint of the container process.
6112 # Defaults to user specified in image metadata if unspecified.
6113 # May also be set in PodSecurityContext. If set in both SecurityContext and
6114 # PodSecurityContext, the value specified in SecurityContext takes
6115 # precedence. +optional
6116 },
6117 &quot;livenessProbe&quot;: { # Probe describes a health check to be performed against a container to # Periodic probe of container liveness.
6118 # Container will be restarted if the probe fails.
6119 # Cannot be updated.
6120 # More info:
6121 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
6122 # +optional
6123 # determine whether it is alive or ready to receive traffic.
Bu Sun Kim65020912020-05-20 12:08:20 -07006124 &quot;initialDelaySeconds&quot;: 42, # Number of seconds after the container has started before liveness probes
6125 # are initiated. More info:
6126 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
6127 # +optional
6128 &quot;timeoutSeconds&quot;: 42, # Number of seconds after which the probe times out.
6129 # Defaults to 1 second. Minimum value is 1.
6130 # More info:
6131 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
6132 # +optional
6133 &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 -07006134 &quot;tcpSocket&quot;: { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
6135 # TCP hooks not yet supported
6136 &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.
6137 # Number must be in the range 1 to 65535.
6138 # Name must be an IANA_SVC_NAME.
6139 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
6140 # inner type. This allows you to have, for example, a JSON field that can
6141 # accept a name or number.
6142 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
6143 &quot;type&quot;: 42, # The type of the value.
6144 &quot;intVal&quot;: 42, # The int value.
6145 },
6146 &quot;host&quot;: &quot;A String&quot;, # Optional: Host name to connect to, defaults to the pod IP.
6147 # +optional
6148 },
Bu Sun Kim65020912020-05-20 12:08:20 -07006149 &quot;exec&quot;: { # ExecAction describes a &quot;run in container&quot; action. # One and only one of the following should be specified.
6150 # Exec specifies the action to take.
6151 # +optional
6152 &quot;command&quot;: &quot;A String&quot;, # Command is the command line to execute inside the container, the working
6153 # directory for the command is root (&#x27;/&#x27;) in the container&#x27;s filesystem. The
6154 # command is simply exec&#x27;d, it is not run inside a shell, so traditional
6155 # shell instructions (&#x27;|&#x27;, etc) won&#x27;t work. To use a shell, you need to
6156 # explicitly call out to that shell. Exit status of 0 is treated as
6157 # live/healthy and non-zero is unhealthy. +optional
6158 },
6159 &quot;httpGet&quot;: { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
6160 # +optional
6161 &quot;httpHeaders&quot;: [ # Custom headers to set in the request. HTTP allows repeated headers.
6162 # +optional
6163 { # HTTPHeader describes a custom header to be used in HTTP probes
Bu Sun Kim65020912020-05-20 12:08:20 -07006164 &quot;name&quot;: &quot;A String&quot;, # The header field name
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07006165 &quot;value&quot;: &quot;A String&quot;, # The header field value
Bu Sun Kim65020912020-05-20 12:08:20 -07006166 },
6167 ],
6168 &quot;path&quot;: &quot;A String&quot;, # Path to access on the HTTP server.
6169 # +optional
6170 &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.
6171 # Number must be in the range 1 to 65535.
6172 # Name must be an IANA_SVC_NAME.
6173 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
6174 # inner type. This allows you to have, for example, a JSON field that can
6175 # accept a name or number.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07006176 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
Bu Sun Kim65020912020-05-20 12:08:20 -07006177 &quot;type&quot;: 42, # The type of the value.
6178 &quot;intVal&quot;: 42, # The int value.
Bu Sun Kim65020912020-05-20 12:08:20 -07006179 },
6180 &quot;host&quot;: &quot;A String&quot;, # Host name to connect to, defaults to the pod IP. You probably want to set
6181 # &quot;Host&quot; in httpHeaders instead.
6182 # +optional
6183 &quot;scheme&quot;: &quot;A String&quot;, # Scheme to use for connecting to the host.
6184 # Defaults to HTTP.
6185 # +optional
6186 },
Bu Sun Kim65020912020-05-20 12:08:20 -07006187 },
6188 &quot;successThreshold&quot;: 42, # Minimum consecutive successes for the probe to be considered successful
6189 # after having failed. Defaults to 1. Must be 1 for liveness. Minimum value
6190 # is 1. +optional
6191 &quot;periodSeconds&quot;: 42, # How often (in seconds) to perform the probe.
6192 # Default to 10 seconds. Minimum value is 1.
6193 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07006194 &quot;failureThreshold&quot;: 42, # Minimum consecutive failures for the probe to be considered failed after
6195 # having succeeded. Defaults to 3. Minimum value is 1. +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07006196 },
6197 &quot;env&quot;: [ # List of environment variables to set in the container.
6198 # Cannot be updated.
6199 # +optional
6200 { # EnvVar represents an environment variable present in a Container.
Bu Sun Kim65020912020-05-20 12:08:20 -07006201 &quot;name&quot;: &quot;A String&quot;, # Name of the environment variable. Must be a C_IDENTIFIER.
6202 &quot;valueFrom&quot;: { # Cloud Run fully managed: not supported # Cloud Run fully managed: not supported
6203 #
6204 # Cloud Run on GKE: supported
6205 #
6206 # Source for the environment variable&#x27;s value. Cannot be used if value is not
6207 # empty. +optional
6208 #
6209 # Cloud Run on GKE: supported
6210 #
6211 # EnvVarSource represents a source for the value of an EnvVar.
6212 &quot;configMapKeyRef&quot;: { # Cloud Run fully managed: not supported # Cloud Run fully managed: not supported
6213 #
6214 # Cloud Run on GKE: supported
6215 #
6216 # Selects a key of a ConfigMap.
6217 # +optional
6218 #
6219 # Cloud Run on GKE: supported
6220 #
6221 # Selects a key from a ConfigMap.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07006222 &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
6223 # directly into the message. Use the &quot;name&quot; field instead.
6224 # referenced object inside the same namespace.
6225 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
6226 # More info:
6227 # https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
6228 },
Bu Sun Kim65020912020-05-20 12:08:20 -07006229 &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported
6230 #
6231 # Cloud Run on GKE: supported
6232 #
6233 # Specify whether the ConfigMap or its key must be defined
6234 # +optional
6235 &quot;key&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
6236 #
6237 # Cloud Run on GKE: supported
6238 #
6239 # The key to select.
6240 &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
6241 #
6242 # Cloud Run on GKE: supported
6243 #
6244 # The ConfigMap to select from.
Bu Sun Kim65020912020-05-20 12:08:20 -07006245 },
6246 &quot;secretKeyRef&quot;: { # Cloud Run fully managed: not supported # Cloud Run fully managed: not supported
6247 #
6248 # Cloud Run on GKE: supported
6249 #
6250 # Selects a key of a secret in the pod&#x27;s namespace
6251 # +optional
6252 #
6253 # Cloud Run on GKE: supported
6254 #
6255 # SecretKeySelector selects a key of a Secret.
Bu Sun Kim65020912020-05-20 12:08:20 -07006256 &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported
6257 #
6258 # Cloud Run on GKE: supported
6259 #
6260 # Specify whether the Secret or its key must be defined
6261 # +optional
6262 &quot;key&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
6263 #
6264 # Cloud Run on GKE: supported
6265 #
6266 # The key of the secret to select from. Must be a valid secret key.
6267 &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
6268 #
6269 # Cloud Run on GKE: supported
6270 #
6271 # The name of the secret in the pod&#x27;s namespace to select from.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07006272 &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
6273 # directly into the message. Use the &quot;name&quot; field instead.
6274 # referenced object inside the same namespace.
6275 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
6276 # More info:
6277 # https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
6278 },
Bu Sun Kim65020912020-05-20 12:08:20 -07006279 },
6280 },
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07006281 &quot;value&quot;: &quot;A String&quot;, # Variable references $(VAR_NAME) are expanded
6282 # using the previous defined environment variables in the container and
6283 # any route environment variables. If a variable cannot be resolved,
6284 # the reference in the input string will be unchanged. The $(VAR_NAME)
6285 # syntax can be escaped with a double $$, ie: $$(VAR_NAME). Escaped
6286 # references will never be expanded, regardless of whether the variable
6287 # exists or not.
6288 # Defaults to &quot;&quot;.
6289 # +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07006290 },
6291 ],
6292 &quot;resources&quot;: { # ResourceRequirements describes the compute resource requirements. # Compute Resources required by this container.
6293 # Cannot be updated.
6294 # More info:
6295 # https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
6296 # +optional
6297 &quot;requestsInMap&quot;: { # Requests describes the minimum amount of compute resources required.
6298 # If Requests is omitted for a container, it defaults to Limits if that is
6299 # explicitly specified, otherwise to an implementation-defined value.
6300 # This is a temporary field created to migrate away from the
6301 # map&lt;string, Quantity&gt; requests field. This is done to become compliant
6302 # with k8s style API.
6303 # This field is deprecated in favor of requests field.
6304 &quot;a_key&quot;: { # The view model of a single quantity, e.g. &quot;800 MiB&quot;. Corresponds to
6305 # https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/generated.proto
6306 &quot;string&quot;: &quot;A String&quot;, # Stringified version of the quantity, e.g., &quot;800 MiB&quot;.
6307 },
6308 },
6309 &quot;requests&quot;: { # Requests describes the minimum amount of compute resources required.
6310 # If Requests is omitted for a container, it defaults to Limits if that is
6311 # explicitly specified, otherwise to an implementation-defined value.
6312 # The values of the map is string form of the &#x27;quantity&#x27; k8s type:
6313 # https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go
6314 &quot;a_key&quot;: &quot;A String&quot;,
6315 },
6316 &quot;limits&quot;: { # Limits describes the maximum amount of compute resources allowed.
6317 # The values of the map is string form of the &#x27;quantity&#x27; k8s type:
6318 # https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go
6319 &quot;a_key&quot;: &quot;A String&quot;,
6320 },
6321 &quot;limitsInMap&quot;: { # Limits describes the maximum amount of compute resources allowed.
6322 # This is a temporary field created to migrate away from the
6323 # map&lt;string, Quantity&gt; limits field. This is done to become compliant
6324 # with k8s style API.
6325 # This field is deprecated in favor of limits field.
6326 &quot;a_key&quot;: { # The view model of a single quantity, e.g. &quot;800 MiB&quot;. Corresponds to
6327 # https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/generated.proto
6328 &quot;string&quot;: &quot;A String&quot;, # Stringified version of the quantity, e.g., &quot;800 MiB&quot;.
6329 },
6330 },
6331 },
6332 &quot;readinessProbe&quot;: { # Probe describes a health check to be performed against a container to # Periodic probe of container service readiness.
6333 # Container will be removed from service endpoints if the probe fails.
6334 # Cannot be updated.
6335 # More info:
6336 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
6337 # +optional
6338 # determine whether it is alive or ready to receive traffic.
Bu Sun Kim65020912020-05-20 12:08:20 -07006339 &quot;initialDelaySeconds&quot;: 42, # Number of seconds after the container has started before liveness probes
6340 # are initiated. More info:
6341 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
6342 # +optional
6343 &quot;timeoutSeconds&quot;: 42, # Number of seconds after which the probe times out.
6344 # Defaults to 1 second. Minimum value is 1.
6345 # More info:
6346 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
6347 # +optional
6348 &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 -07006349 &quot;tcpSocket&quot;: { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
6350 # TCP hooks not yet supported
6351 &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.
6352 # Number must be in the range 1 to 65535.
6353 # Name must be an IANA_SVC_NAME.
6354 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
6355 # inner type. This allows you to have, for example, a JSON field that can
6356 # accept a name or number.
6357 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
6358 &quot;type&quot;: 42, # The type of the value.
6359 &quot;intVal&quot;: 42, # The int value.
6360 },
6361 &quot;host&quot;: &quot;A String&quot;, # Optional: Host name to connect to, defaults to the pod IP.
6362 # +optional
6363 },
Bu Sun Kim65020912020-05-20 12:08:20 -07006364 &quot;exec&quot;: { # ExecAction describes a &quot;run in container&quot; action. # One and only one of the following should be specified.
6365 # Exec specifies the action to take.
6366 # +optional
6367 &quot;command&quot;: &quot;A String&quot;, # Command is the command line to execute inside the container, the working
6368 # directory for the command is root (&#x27;/&#x27;) in the container&#x27;s filesystem. The
6369 # command is simply exec&#x27;d, it is not run inside a shell, so traditional
6370 # shell instructions (&#x27;|&#x27;, etc) won&#x27;t work. To use a shell, you need to
6371 # explicitly call out to that shell. Exit status of 0 is treated as
6372 # live/healthy and non-zero is unhealthy. +optional
6373 },
6374 &quot;httpGet&quot;: { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
6375 # +optional
6376 &quot;httpHeaders&quot;: [ # Custom headers to set in the request. HTTP allows repeated headers.
6377 # +optional
6378 { # HTTPHeader describes a custom header to be used in HTTP probes
Bu Sun Kim65020912020-05-20 12:08:20 -07006379 &quot;name&quot;: &quot;A String&quot;, # The header field name
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07006380 &quot;value&quot;: &quot;A String&quot;, # The header field value
Bu Sun Kim65020912020-05-20 12:08:20 -07006381 },
6382 ],
6383 &quot;path&quot;: &quot;A String&quot;, # Path to access on the HTTP server.
6384 # +optional
6385 &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.
6386 # Number must be in the range 1 to 65535.
6387 # Name must be an IANA_SVC_NAME.
6388 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
6389 # inner type. This allows you to have, for example, a JSON field that can
6390 # accept a name or number.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07006391 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
Bu Sun Kim65020912020-05-20 12:08:20 -07006392 &quot;type&quot;: 42, # The type of the value.
6393 &quot;intVal&quot;: 42, # The int value.
Bu Sun Kim65020912020-05-20 12:08:20 -07006394 },
6395 &quot;host&quot;: &quot;A String&quot;, # Host name to connect to, defaults to the pod IP. You probably want to set
6396 # &quot;Host&quot; in httpHeaders instead.
6397 # +optional
6398 &quot;scheme&quot;: &quot;A String&quot;, # Scheme to use for connecting to the host.
6399 # Defaults to HTTP.
6400 # +optional
6401 },
Bu Sun Kim65020912020-05-20 12:08:20 -07006402 },
6403 &quot;successThreshold&quot;: 42, # Minimum consecutive successes for the probe to be considered successful
6404 # after having failed. Defaults to 1. Must be 1 for liveness. Minimum value
6405 # is 1. +optional
6406 &quot;periodSeconds&quot;: 42, # How often (in seconds) to perform the probe.
6407 # Default to 10 seconds. Minimum value is 1.
6408 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07006409 &quot;failureThreshold&quot;: 42, # Minimum consecutive failures for the probe to be considered failed after
6410 # having succeeded. Defaults to 3. Minimum value is 1. +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07006411 },
6412 &quot;imagePullPolicy&quot;: &quot;A String&quot;, # Image pull policy.
6413 # One of Always, Never, IfNotPresent.
6414 # Defaults to Always if :latest tag is specified, or IfNotPresent otherwise.
6415 # Cannot be updated.
6416 # More info:
6417 # https://kubernetes.io/docs/concepts/containers/images#updating-images
6418 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07006419 &quot;lifecycle&quot;: { # Lifecycle describes actions that the management system should take in # Actions that the management system should take in response to container
6420 # lifecycle events. Cannot be updated. +optional
6421 # response to container lifecycle events. For the PostStart and PreStop
6422 # lifecycle handlers, management of the container blocks until the action is
6423 # complete, unless the container process fails, in which case the handler is
6424 # aborted.
6425 &quot;preStop&quot;: { # Handler defines a specific action that should be taken # PreStop is called immediately before a container is terminated.
6426 # The container is terminated after the handler completes.
6427 # The reason for termination is passed to the handler.
6428 # Regardless of the outcome of the handler, the container is eventually
6429 # terminated. Other management of the container blocks until the hook
6430 # completes. More info:
6431 # https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
6432 # +optional
6433 &quot;tcpSocket&quot;: { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
6434 # TCP hooks not yet supported
6435 &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.
6436 # Number must be in the range 1 to 65535.
6437 # Name must be an IANA_SVC_NAME.
6438 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
6439 # inner type. This allows you to have, for example, a JSON field that can
6440 # accept a name or number.
6441 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
6442 &quot;type&quot;: 42, # The type of the value.
6443 &quot;intVal&quot;: 42, # The int value.
6444 },
6445 &quot;host&quot;: &quot;A String&quot;, # Optional: Host name to connect to, defaults to the pod IP.
6446 # +optional
6447 },
6448 &quot;exec&quot;: { # ExecAction describes a &quot;run in container&quot; action. # One and only one of the following should be specified.
6449 # Exec specifies the action to take.
6450 # +optional
6451 &quot;command&quot;: &quot;A String&quot;, # Command is the command line to execute inside the container, the working
6452 # directory for the command is root (&#x27;/&#x27;) in the container&#x27;s filesystem. The
6453 # command is simply exec&#x27;d, it is not run inside a shell, so traditional
6454 # shell instructions (&#x27;|&#x27;, etc) won&#x27;t work. To use a shell, you need to
6455 # explicitly call out to that shell. Exit status of 0 is treated as
6456 # live/healthy and non-zero is unhealthy. +optional
6457 },
6458 &quot;httpGet&quot;: { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
6459 # +optional
6460 &quot;httpHeaders&quot;: [ # Custom headers to set in the request. HTTP allows repeated headers.
6461 # +optional
6462 { # HTTPHeader describes a custom header to be used in HTTP probes
6463 &quot;name&quot;: &quot;A String&quot;, # The header field name
6464 &quot;value&quot;: &quot;A String&quot;, # The header field value
6465 },
6466 ],
6467 &quot;path&quot;: &quot;A String&quot;, # Path to access on the HTTP server.
6468 # +optional
6469 &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.
6470 # Number must be in the range 1 to 65535.
6471 # Name must be an IANA_SVC_NAME.
6472 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
6473 # inner type. This allows you to have, for example, a JSON field that can
6474 # accept a name or number.
6475 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
6476 &quot;type&quot;: 42, # The type of the value.
6477 &quot;intVal&quot;: 42, # The int value.
6478 },
6479 &quot;host&quot;: &quot;A String&quot;, # Host name to connect to, defaults to the pod IP. You probably want to set
6480 # &quot;Host&quot; in httpHeaders instead.
6481 # +optional
6482 &quot;scheme&quot;: &quot;A String&quot;, # Scheme to use for connecting to the host.
6483 # Defaults to HTTP.
6484 # +optional
6485 },
6486 },
6487 &quot;postStart&quot;: { # Handler defines a specific action that should be taken # PostStart is called immediately after a container is created. If the
6488 # handler fails, the container is terminated and restarted according to its
6489 # restart policy. Other management of the container blocks until the hook
6490 # completes. More info:
6491 # https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
6492 # +optional
6493 &quot;tcpSocket&quot;: { # TCPSocketAction describes an action based on opening a socket # TCPSocket specifies an action involving a TCP port.
6494 # TCP hooks not yet supported
6495 &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.
6496 # Number must be in the range 1 to 65535.
6497 # Name must be an IANA_SVC_NAME.
6498 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
6499 # inner type. This allows you to have, for example, a JSON field that can
6500 # accept a name or number.
6501 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
6502 &quot;type&quot;: 42, # The type of the value.
6503 &quot;intVal&quot;: 42, # The int value.
6504 },
6505 &quot;host&quot;: &quot;A String&quot;, # Optional: Host name to connect to, defaults to the pod IP.
6506 # +optional
6507 },
6508 &quot;exec&quot;: { # ExecAction describes a &quot;run in container&quot; action. # One and only one of the following should be specified.
6509 # Exec specifies the action to take.
6510 # +optional
6511 &quot;command&quot;: &quot;A String&quot;, # Command is the command line to execute inside the container, the working
6512 # directory for the command is root (&#x27;/&#x27;) in the container&#x27;s filesystem. The
6513 # command is simply exec&#x27;d, it is not run inside a shell, so traditional
6514 # shell instructions (&#x27;|&#x27;, etc) won&#x27;t work. To use a shell, you need to
6515 # explicitly call out to that shell. Exit status of 0 is treated as
6516 # live/healthy and non-zero is unhealthy. +optional
6517 },
6518 &quot;httpGet&quot;: { # HTTPGetAction describes an action based on HTTP Get requests. # HTTPGet specifies the http request to perform.
6519 # +optional
6520 &quot;httpHeaders&quot;: [ # Custom headers to set in the request. HTTP allows repeated headers.
6521 # +optional
6522 { # HTTPHeader describes a custom header to be used in HTTP probes
6523 &quot;name&quot;: &quot;A String&quot;, # The header field name
6524 &quot;value&quot;: &quot;A String&quot;, # The header field value
6525 },
6526 ],
6527 &quot;path&quot;: &quot;A String&quot;, # Path to access on the HTTP server.
6528 # +optional
6529 &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.
6530 # Number must be in the range 1 to 65535.
6531 # Name must be an IANA_SVC_NAME.
6532 # JSON or YAML marshalling and unmarshalling, it produces or consumes the
6533 # inner type. This allows you to have, for example, a JSON field that can
6534 # accept a name or number.
6535 &quot;strVal&quot;: &quot;A String&quot;, # The string value.
6536 &quot;type&quot;: 42, # The type of the value.
6537 &quot;intVal&quot;: 42, # The int value.
6538 },
6539 &quot;host&quot;: &quot;A String&quot;, # Host name to connect to, defaults to the pod IP. You probably want to set
6540 # &quot;Host&quot; in httpHeaders instead.
6541 # +optional
6542 &quot;scheme&quot;: &quot;A String&quot;, # Scheme to use for connecting to the host.
6543 # Defaults to HTTP.
6544 # +optional
6545 },
6546 },
6547 },
6548 &quot;terminationMessagePath&quot;: &quot;A String&quot;, # Optional: Path at which the file to which the container&#x27;s termination
6549 # message will be written is mounted into the container&#x27;s filesystem. Message
6550 # written is intended to be brief final status, such as an assertion failure
6551 # message. Will be truncated by the node if greater than 4096 bytes. The
6552 # total message length across all containers will be limited to 12kb.
6553 # Defaults to /dev/termination-log.
6554 # Cannot be updated.
6555 # +optional
6556 &quot;stdin&quot;: True or False, # Whether this container should allocate a buffer for stdin in the container
6557 # runtime. If this is not set, reads from stdin in the container will always
6558 # result in EOF. Default is false. +optional
6559 &quot;volumeMounts&quot;: [ # Pod volumes to mount into the container&#x27;s filesystem.
6560 # Cannot be updated.
6561 # +optional
6562 { # VolumeMount describes a mounting of a Volume within a container.
6563 &quot;name&quot;: &quot;A String&quot;, # This must match the Name of a Volume.
6564 &quot;readOnly&quot;: True or False, # Mounted read-only if true, read-write otherwise (false or unspecified).
6565 # Defaults to false.
6566 # +optional
6567 &quot;mountPropagation&quot;: &quot;A String&quot;, # mountPropagation determines how mounts are propagated from the host
6568 # to container and the other way around.
6569 # When not set, MountPropagationHostToContainer is used.
6570 # This field is beta in 1.10.
6571 # +optional
6572 &quot;mountPath&quot;: &quot;A String&quot;, # Path within the container at which the volume should be mounted. Must
6573 # not contain &#x27;:&#x27;.
6574 &quot;subPath&quot;: &quot;A String&quot;, # Path within the volume from which the container&#x27;s volume should be mounted.
6575 # Defaults to &quot;&quot; (volume&#x27;s root).
6576 # +optional
6577 },
6578 ],
6579 &quot;tty&quot;: True or False, # Whether this container should allocate a TTY for itself, also requires
6580 # &#x27;stdin&#x27; to be true. Default is false. +optional
6581 &quot;volumeDevices&quot;: [ # volumeDevices is the list of block devices to be used by the container.
6582 # This is an alpha feature and may change in the future.
6583 # +optional
6584 { # volumeDevice describes a mapping of a raw block device within a container.
6585 &quot;name&quot;: &quot;A String&quot;, # name must match the name of a persistentVolumeClaim in the pod
6586 &quot;devicePath&quot;: &quot;A String&quot;, # devicePath is the path inside of the container that the device will be
6587 # mapped to.
6588 },
6589 ],
6590 &quot;stdinOnce&quot;: True or False, # Whether the container runtime should close the stdin channel after it has
6591 # been opened by a single attach. When stdin is true the stdin stream will
6592 # remain open across multiple attach sessions. If stdinOnce is set to true,
6593 # stdin is opened on container start, is empty until the first client
6594 # attaches to stdin, and then remains open and accepts data until the client
6595 # disconnects, at which time stdin is closed and remains closed until the
6596 # container is restarted. If this flag is false, a container processes that
6597 # reads from stdin will never receive an EOF. Default is false +optional
6598 &quot;args&quot;: [ # Arguments to the entrypoint.
6599 # The docker image&#x27;s CMD is used if this is not provided.
6600 # Variable references $(VAR_NAME) are expanded using the container&#x27;s
6601 # environment. If a variable cannot be resolved, the reference in the input
6602 # string will be unchanged. The $(VAR_NAME) syntax can be escaped with a
6603 # double $$, ie: $$(VAR_NAME). Escaped references will never be expanded,
6604 # regardless of whether the variable exists or not.
6605 # Cannot be updated.
6606 # More info:
6607 # https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
6608 # +optional
6609 &quot;A String&quot;,
6610 ],
6611 &quot;workingDir&quot;: &quot;A String&quot;, # Container&#x27;s working directory.
6612 # If not specified, the container runtime&#x27;s default will be used, which
6613 # might be configured in the container image.
6614 # Cannot be updated.
6615 # +optional
6616 &quot;ports&quot;: [ # List of ports to expose from the container. Exposing a port here gives
6617 # the system additional information about the network connections a
6618 # container uses, but is primarily informational. Not specifying a port here
6619 # DOES NOT prevent that port from being exposed. Any port which is
6620 # listening on the default &quot;0.0.0.0&quot; address inside a container will be
6621 # accessible from the network.
6622 # Cannot be updated.
6623 # +optional
6624 { # ContainerPort represents a network port in a single container.
6625 &quot;hostIP&quot;: &quot;A String&quot;, # What host IP to bind the external port to.
6626 # +optional
6627 &quot;name&quot;: &quot;A String&quot;, # If specified, this must be an IANA_SVC_NAME and unique within the pod. Each
6628 # named port in a pod must have a unique name. Name for the port that can be
6629 # referred to by services.
6630 # +optional
6631 &quot;hostPort&quot;: 42, # Number of port to expose on the host.
6632 # If specified, this must be a valid port number, 0 &lt; x &lt; 65536.
6633 # If HostNetwork is specified, this must match ContainerPort.
6634 # Most containers do not need this.
6635 # +optional
6636 &quot;containerPort&quot;: 42, # Number of port to expose on the pod&#x27;s IP address.
6637 # This must be a valid port number, 0 &lt; x &lt; 65536.
6638 &quot;protocol&quot;: &quot;A String&quot;, # Protocol for port. Must be UDP or TCP.
6639 # Defaults to &quot;TCP&quot;.
6640 # +optional
6641 },
6642 ],
6643 &quot;image&quot;: &quot;A String&quot;, # Docker image name.
6644 # More info: https://kubernetes.io/docs/concepts/containers/images
6645 &quot;envFrom&quot;: [ # List of sources to populate environment variables in the container.
6646 # The keys defined within a source must be a C_IDENTIFIER. All invalid keys
6647 # will be reported as an event when the container is starting. When a key
6648 # exists in multiple sources, the value associated with the last source will
6649 # take precedence. Values defined by an Env with a duplicate key will take
6650 # precedence. Cannot be updated. +optional
6651 { # EnvFromSource represents the source of a set of ConfigMaps
6652 &quot;prefix&quot;: &quot;A String&quot;, # An optional identifier to prepend to each key in the ConfigMap. Must be a
6653 # C_IDENTIFIER. +optional
6654 &quot;configMapRef&quot;: { # ConfigMapEnvSource selects a ConfigMap to populate the environment # The ConfigMap to select from
6655 # +optional
6656 # variables with.
6657 #
6658 # The contents of the target ConfigMap&#x27;s Data field will represent the
6659 # key-value pairs as environment variables.
6660 &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
6661 # directly into the message. Use the &quot;name&quot; field instead.
6662 # referenced object inside the same namespace.
6663 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
6664 # More info:
6665 # https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
6666 },
6667 &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported
6668 #
6669 # Cloud Run for Anthos: supported
6670 #
6671 # Specify whether the ConfigMap must be defined
6672 # +optional
6673 &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
6674 #
6675 # Cloud Run for Anthos: supported
6676 #
6677 # The ConfigMap to select from.
6678 },
6679 &quot;secretRef&quot;: { # SecretEnvSource selects a Secret to populate the environment # The Secret to select from
6680 # +optional
6681 # variables with.
6682 #
6683 # The contents of the target Secret&#x27;s Data field will represent the
6684 # key-value pairs as environment variables.
6685 &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported
6686 #
6687 # Cloud Run for Anthos: supported
6688 #
6689 # The Secret to select from.
6690 &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
6691 # directly into the message. Use the &quot;name&quot; field instead.
6692 # referenced object inside the same namespace.
6693 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
6694 # More info:
6695 # https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
6696 },
6697 &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported
6698 #
6699 # Cloud Run for Anthos: supported
6700 #
6701 # Specify whether the Secret must be defined
6702 # +optional
6703 },
6704 },
6705 ],
6706 &quot;name&quot;: &quot;A String&quot;, # Name of the container specified as a DNS_LABEL.
6707 # Each container must have a unique name (DNS_LABEL).
6708 # Cannot be updated.
6709 &quot;command&quot;: [ # Entrypoint array. Not executed within a shell.
6710 # The docker image&#x27;s ENTRYPOINT is used if this is not provided.
6711 # Variable references $(VAR_NAME) are expanded using the container&#x27;s
6712 # environment. If a variable cannot be resolved, the reference in the input
6713 # string will be unchanged. The $(VAR_NAME) syntax can be escaped with a
6714 # double $$, ie: $$(VAR_NAME). Escaped references will never be expanded,
6715 # regardless of whether the variable exists or not.
6716 # Cannot be updated.
6717 # More info:
6718 # https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
6719 # +optional
6720 &quot;A String&quot;,
6721 ],
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07006722 },
Bu Sun Kim65020912020-05-20 12:08:20 -07006723 &quot;volumes&quot;: [
6724 { # Volume represents a named volume in a container.
6725 &quot;configMap&quot;: { # Adapts a ConfigMap into a volume.
6726 # The contents of the target ConfigMap&#x27;s Data field will be presented in a
6727 # volume as files using the keys in the Data field as the file names, unless
6728 # the items element is populated with specific mappings of keys to paths.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07006729 &quot;optional&quot;: True or False, # Specify whether the Secret or its keys must be defined.
Bu Sun Kim65020912020-05-20 12:08:20 -07006730 &quot;name&quot;: &quot;A String&quot;, # Name of the config.
6731 &quot;defaultMode&quot;: 42, # Mode bits to use on created files by default. Must be a value between 0 and
6732 # 0777. Defaults to 0644. Directories within the path are not affected by
6733 # this setting. This might be in conflict with other options that affect the
6734 # file mode, like fsGroup, and the result can be other mode bits set.
6735 &quot;items&quot;: [ # If unspecified, each key-value pair in the Data field of the referenced
6736 # Secret will be projected into the volume as a file whose name is the
6737 # key and content is the value. If specified, the listed keys will be
6738 # projected into the specified paths, and unlisted keys will not be
6739 # present. If a key is specified which is not present in the Secret,
6740 # the volume setup will error unless it is marked optional.
6741 { # Maps a string key to a path within a volume.
Bu Sun Kim65020912020-05-20 12:08:20 -07006742 &quot;path&quot;: &quot;A String&quot;, # The relative path of the file to map the key to.
6743 # May not be an absolute path.
6744 # May not contain the path element &#x27;..&#x27;.
6745 # May not start with the string &#x27;..&#x27;.
6746 &quot;mode&quot;: 42, # Mode bits to use on this file, must be a value between 0 and 0777. If not
6747 # specified, the volume defaultMode will be used. This might be in conflict
6748 # with other options that affect the file mode, like fsGroup, and the result
6749 # can be other mode bits set. +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07006750 &quot;key&quot;: &quot;A String&quot;, # The key to project.
Bu Sun Kim65020912020-05-20 12:08:20 -07006751 },
6752 ],
Bu Sun Kim65020912020-05-20 12:08:20 -07006753 },
6754 &quot;name&quot;: &quot;A String&quot;, # Volume&#x27;s name.
6755 &quot;secret&quot;: { # The contents of the target Secret&#x27;s Data field will be presented in a volume
6756 # as files using the keys in the Data field as the file names.
Bu Sun Kim65020912020-05-20 12:08:20 -07006757 &quot;defaultMode&quot;: 42, # Mode bits to use on created files by default. Must be a value between 0 and
6758 # 0777. Defaults to 0644. Directories within the path are not affected by
6759 # this setting. This might be in conflict with other options that affect the
6760 # file mode, like fsGroup, and the result can be other mode bits set.
6761 &quot;secretName&quot;: &quot;A String&quot;, # Name of the secret in the container&#x27;s namespace to use.
6762 &quot;items&quot;: [ # If unspecified, each key-value pair in the Data field of the referenced
6763 # Secret will be projected into the volume as a file whose name is the
6764 # key and content is the value. If specified, the listed keys will be
6765 # projected into the specified paths, and unlisted keys will not be
6766 # present. If a key is specified which is not present in the Secret,
6767 # the volume setup will error unless it is marked optional.
6768 { # Maps a string key to a path within a volume.
Bu Sun Kim65020912020-05-20 12:08:20 -07006769 &quot;path&quot;: &quot;A String&quot;, # The relative path of the file to map the key to.
6770 # May not be an absolute path.
6771 # May not contain the path element &#x27;..&#x27;.
6772 # May not start with the string &#x27;..&#x27;.
6773 &quot;mode&quot;: 42, # Mode bits to use on this file, must be a value between 0 and 0777. If not
6774 # specified, the volume defaultMode will be used. This might be in conflict
6775 # with other options that affect the file mode, like fsGroup, and the result
6776 # can be other mode bits set. +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07006777 &quot;key&quot;: &quot;A String&quot;, # The key to project.
Bu Sun Kim65020912020-05-20 12:08:20 -07006778 },
6779 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07006780 &quot;optional&quot;: True or False, # Specify whether the Secret or its keys must be defined.
Bu Sun Kim65020912020-05-20 12:08:20 -07006781 },
6782 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07006783 ],
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07006784 },
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07006785 &quot;metadata&quot;: { # ObjectMeta is metadata that all persisted resources must have, which includes # Optional metadata for this Revision, including labels and annotations. Name
6786 # will be generated by the Configuration.
6787 # To set minimum instances for this revision, use the
6788 # &quot;autoscaling.knative.dev/minScale&quot; annotation key. (Cloud Run on GKE only).
6789 # To set maximum instances for this revision, use the
6790 # &quot;autoscaling.knative.dev/maxScale&quot; annotation key.
6791 # To set Cloud SQL connections for the revision, use the
6792 # &quot;run.googleapis.com/cloudsql-instances&quot; annotation key. Values should be
6793 # comma separated.
6794 # all objects users must create.
6795 &quot;generateName&quot;: &quot;A String&quot;, # Not currently supported by Cloud Run.
6796 #
6797 # GenerateName is an optional prefix, used by the server, to generate a
6798 # unique name ONLY IF the Name field has not been provided. If this field is
6799 # used, the name returned to the client will be different than the name
6800 # passed. This value will also be combined with a unique suffix. The provided
6801 # value has the same validation rules as the Name field, and may be truncated
6802 # by the length of the suffix required to make the value unique on the
6803 # server.
6804 #
6805 # If this field is specified and the generated name exists, the server will
6806 # NOT return a 409 - instead, it will either return 201 Created or 500 with
6807 # Reason ServerTimeout indicating a unique name could not be found in the
6808 # time allotted, and the client should retry (optionally after the time
6809 # indicated in the Retry-After header).
6810 #
6811 # Applied only if Name is not specified.
6812 # More info:
6813 # https://git.k8s.io/community/contributors/devel/api-conventions.md#idempotency
6814 # +optional
6815 # string generateName = 2;
6816 &quot;name&quot;: &quot;A String&quot;, # Name must be unique within a namespace, within a Cloud Run region.
6817 # Is required when creating
6818 # resources, although some resources may allow a client to request the
6819 # generation of an appropriate name automatically. Name is primarily intended
6820 # for creation idempotence and configuration definition. Cannot be updated.
6821 # More info: http://kubernetes.io/docs/user-guide/identifiers#names
6822 # +optional
6823 &quot;deletionGracePeriodSeconds&quot;: 42, # Not currently supported by Cloud Run.
6824 #
6825 # Number of seconds allowed for this object to gracefully terminate before
6826 # it will be removed from the system. Only set when deletionTimestamp is also
6827 # set. May only be shortened. Read-only. +optional
6828 &quot;clusterName&quot;: &quot;A String&quot;, # Not currently supported by Cloud Run.
6829 #
6830 # The name of the cluster which the object belongs to.
6831 # This is used to distinguish resources with same name and namespace in
6832 # different clusters. This field is not set anywhere right now and apiserver
6833 # is going to ignore it if set in create or update request. +optional
6834 &quot;finalizers&quot;: [ # Not currently supported by Cloud Run.
6835 #
6836 # Must be empty before the object is deleted from the registry. Each entry
6837 # is an identifier for the responsible component that will remove the entry
6838 # from the list. If the deletionTimestamp of the object is non-nil, entries
6839 # in this list can only be removed.
6840 # +optional
6841 # +patchStrategy=merge
6842 &quot;A String&quot;,
6843 ],
6844 &quot;deletionTimestamp&quot;: &quot;A String&quot;, # DeletionTimestamp is RFC 3339 date and time at which this resource will be
6845 # deleted. This field is set by the server when a graceful deletion is
6846 # requested by the user, and is not directly settable by a client. The
6847 # resource is expected to be deleted (no longer visible from resource lists,
6848 # and not reachable by name) after the time in this field, once the
6849 # finalizers list is empty. As long as the finalizers list contains items,
6850 # deletion is blocked. Once the deletionTimestamp is set, this value may not
6851 # be unset or be set further into the future, although it may be shortened or
6852 # the resource may be deleted prior to this time. For example, a user may
6853 # request that a pod is deleted in 30 seconds. The Kubelet will react by
6854 # sending a graceful termination signal to the containers in the pod. After
6855 # that 30 seconds, the Kubelet will send a hard termination signal (SIGKILL)
6856 # to the container and after cleanup, remove the pod from the API. In the
6857 # presence of network partitions, this object may still exist after this
6858 # timestamp, until an administrator or automated process can determine the
6859 # resource is fully terminated.
6860 # If not set, graceful deletion of the object has not been requested.
6861 #
6862 # Populated by the system when a graceful deletion is requested.
6863 # Read-only.
6864 # More info:
6865 # https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
6866 # +optional
6867 &quot;ownerReferences&quot;: [ # List of objects that own this object. If ALL objects in the list have
6868 # been deleted, this object will be garbage collected.
6869 # +optional
6870 { # OwnerReference contains enough information to let you identify an owning
6871 # object. Currently, an owning object must be in the same namespace, so there
6872 # is no namespace field.
6873 &quot;controller&quot;: True or False, # If true, this reference points to the managing controller.
6874 # +optional
6875 &quot;kind&quot;: &quot;A String&quot;, # Kind of the referent.
6876 # More info:
6877 # https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds
6878 &quot;blockOwnerDeletion&quot;: True or False, # If true, AND if the owner has the &quot;foregroundDeletion&quot; finalizer, then
6879 # the owner cannot be deleted from the key-value store until this
6880 # reference is removed.
6881 # Defaults to false.
6882 # To set this field, a user needs &quot;delete&quot; permission of the owner,
6883 # otherwise 422 (Unprocessable Entity) will be returned.
6884 # +optional
6885 &quot;apiVersion&quot;: &quot;A String&quot;, # API version of the referent.
6886 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
6887 # More info: http://kubernetes.io/docs/user-guide/identifiers#names
6888 &quot;uid&quot;: &quot;A String&quot;, # UID of the referent.
6889 # More info: http://kubernetes.io/docs/user-guide/identifiers#uids
6890 },
6891 ],
6892 &quot;creationTimestamp&quot;: &quot;A String&quot;, # CreationTimestamp is a timestamp representing the server time when this
6893 # object was created. It is not guaranteed to be set in happens-before order
6894 # across separate operations. Clients may not set this value. It is
6895 # represented in RFC3339 form and is in UTC.
6896 #
6897 # Populated by the system.
6898 # Read-only.
6899 # Null for lists.
6900 # More info:
6901 # https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
6902 # +optional
6903 &quot;labels&quot;: { # Map of string keys and values that can be used to organize and categorize
6904 # (scope and select) objects. May match selectors of replication controllers
6905 # and routes.
6906 # More info: http://kubernetes.io/docs/user-guide/labels
6907 # +optional
6908 &quot;a_key&quot;: &quot;A String&quot;,
6909 },
6910 &quot;generation&quot;: 42, # A sequence number representing a specific generation of the desired state.
6911 # Populated by the system. Read-only.
6912 # +optional
6913 &quot;resourceVersion&quot;: &quot;A String&quot;, # An opaque value that represents the internal version of this object that
6914 # can be used by clients to determine when objects have changed. May be used
6915 # for optimistic concurrency, change detection, and the watch operation on a
6916 # resource or set of resources. Clients must treat these values as opaque and
6917 # passed unmodified back to the server. They may only be valid for a
6918 # particular resource or set of resources.
6919 #
6920 # Populated by the system.
6921 # Read-only.
6922 # Value must be treated as opaque by clients and .
6923 # More info:
6924 # https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency
6925 # +optional
6926 &quot;selfLink&quot;: &quot;A String&quot;, # SelfLink is a URL representing this object.
6927 # Populated by the system.
6928 # Read-only.
6929 # +optional
6930 # string selfLink = 4;
6931 &quot;uid&quot;: &quot;A String&quot;, # UID is the unique in time and space value for this object. It is typically
6932 # generated by the server on successful creation of a resource and is not
6933 # allowed to change on PUT operations.
6934 #
6935 # Populated by the system.
6936 # Read-only.
6937 # More info: http://kubernetes.io/docs/user-guide/identifiers#uids
6938 # +optional
6939 &quot;namespace&quot;: &quot;A String&quot;, # Namespace defines the space within each name must be unique, within a
6940 # Cloud Run region. In Cloud Run the namespace must be equal to either the
6941 # project ID or project number.
6942 &quot;annotations&quot;: { # Annotations is an unstructured key value map stored with a resource that
6943 # may be set by external tools to store and retrieve arbitrary metadata. They
6944 # are not queryable and should be preserved when modifying objects. More
6945 # info: http://kubernetes.io/docs/user-guide/annotations +optional
6946 &quot;a_key&quot;: &quot;A String&quot;,
6947 },
6948 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07006949 },
Bu Sun Kim65020912020-05-20 12:08:20 -07006950 &quot;generation&quot;: 42, # Deprecated and not currently populated by Cloud Run. See
6951 # metadata.generation instead, which is the sequence number containing the
6952 # latest generation of the desired state.
6953 #
6954 # Read-only.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07006955 },
Bu Sun Kim65020912020-05-20 12:08:20 -07006956 &quot;kind&quot;: &quot;A String&quot;, # The kind of resource, in this case always &quot;Configuration&quot;.
6957 &quot;metadata&quot;: { # ObjectMeta is metadata that all persisted resources must have, which includes # Metadata associated with this Configuration, including name, namespace,
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07006958 # labels, and annotations.
6959 # all objects users must create.
Bu Sun Kim65020912020-05-20 12:08:20 -07006960 &quot;generateName&quot;: &quot;A String&quot;, # Not currently supported by Cloud Run.
6961 #
6962 # GenerateName is an optional prefix, used by the server, to generate a
6963 # unique name ONLY IF the Name field has not been provided. If this field is
6964 # used, the name returned to the client will be different than the name
6965 # passed. This value will also be combined with a unique suffix. The provided
6966 # value has the same validation rules as the Name field, and may be truncated
6967 # by the length of the suffix required to make the value unique on the
6968 # server.
6969 #
6970 # If this field is specified and the generated name exists, the server will
6971 # NOT return a 409 - instead, it will either return 201 Created or 500 with
6972 # Reason ServerTimeout indicating a unique name could not be found in the
6973 # time allotted, and the client should retry (optionally after the time
6974 # indicated in the Retry-After header).
6975 #
6976 # Applied only if Name is not specified.
6977 # More info:
6978 # https://git.k8s.io/community/contributors/devel/api-conventions.md#idempotency
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07006979 # +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07006980 # string generateName = 2;
6981 &quot;name&quot;: &quot;A String&quot;, # Name must be unique within a namespace, within a Cloud Run region.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07006982 # Is required when creating
6983 # resources, although some resources may allow a client to request the
6984 # generation of an appropriate name automatically. Name is primarily intended
6985 # for creation idempotence and configuration definition. Cannot be updated.
6986 # More info: http://kubernetes.io/docs/user-guide/identifiers#names
6987 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07006988 &quot;deletionGracePeriodSeconds&quot;: 42, # Not currently supported by Cloud Run.
6989 #
6990 # Number of seconds allowed for this object to gracefully terminate before
6991 # it will be removed from the system. Only set when deletionTimestamp is also
6992 # set. May only be shortened. Read-only. +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07006993 &quot;clusterName&quot;: &quot;A String&quot;, # Not currently supported by Cloud Run.
6994 #
6995 # The name of the cluster which the object belongs to.
6996 # This is used to distinguish resources with same name and namespace in
6997 # different clusters. This field is not set anywhere right now and apiserver
6998 # is going to ignore it if set in create or update request. +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07006999 &quot;finalizers&quot;: [ # Not currently supported by Cloud Run.
7000 #
7001 # Must be empty before the object is deleted from the registry. Each entry
7002 # is an identifier for the responsible component that will remove the entry
7003 # from the list. If the deletionTimestamp of the object is non-nil, entries
7004 # in this list can only be removed.
7005 # +optional
7006 # +patchStrategy=merge
7007 &quot;A String&quot;,
7008 ],
7009 &quot;deletionTimestamp&quot;: &quot;A String&quot;, # DeletionTimestamp is RFC 3339 date and time at which this resource will be
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07007010 # deleted. This field is set by the server when a graceful deletion is
7011 # requested by the user, and is not directly settable by a client. The
7012 # resource is expected to be deleted (no longer visible from resource lists,
7013 # and not reachable by name) after the time in this field, once the
7014 # finalizers list is empty. As long as the finalizers list contains items,
7015 # deletion is blocked. Once the deletionTimestamp is set, this value may not
7016 # be unset or be set further into the future, although it may be shortened or
7017 # the resource may be deleted prior to this time. For example, a user may
7018 # request that a pod is deleted in 30 seconds. The Kubelet will react by
7019 # sending a graceful termination signal to the containers in the pod. After
7020 # that 30 seconds, the Kubelet will send a hard termination signal (SIGKILL)
7021 # to the container and after cleanup, remove the pod from the API. In the
7022 # presence of network partitions, this object may still exist after this
7023 # timestamp, until an administrator or automated process can determine the
7024 # resource is fully terminated.
7025 # If not set, graceful deletion of the object has not been requested.
7026 #
7027 # Populated by the system when a graceful deletion is requested.
7028 # Read-only.
7029 # More info:
7030 # https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
7031 # +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07007032 &quot;ownerReferences&quot;: [ # List of objects that own this object. If ALL objects in the list have
7033 # been deleted, this object will be garbage collected.
7034 # +optional
7035 { # OwnerReference contains enough information to let you identify an owning
7036 # object. Currently, an owning object must be in the same namespace, so there
7037 # is no namespace field.
Bu Sun Kim65020912020-05-20 12:08:20 -07007038 &quot;controller&quot;: True or False, # If true, this reference points to the managing controller.
7039 # +optional
7040 &quot;kind&quot;: &quot;A String&quot;, # Kind of the referent.
7041 # More info:
7042 # https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds
7043 &quot;blockOwnerDeletion&quot;: True or False, # If true, AND if the owner has the &quot;foregroundDeletion&quot; finalizer, then
7044 # the owner cannot be deleted from the key-value store until this
7045 # reference is removed.
7046 # Defaults to false.
7047 # To set this field, a user needs &quot;delete&quot; permission of the owner,
7048 # otherwise 422 (Unprocessable Entity) will be returned.
7049 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07007050 &quot;apiVersion&quot;: &quot;A String&quot;, # API version of the referent.
7051 &quot;name&quot;: &quot;A String&quot;, # Name of the referent.
7052 # More info: http://kubernetes.io/docs/user-guide/identifiers#names
7053 &quot;uid&quot;: &quot;A String&quot;, # UID of the referent.
7054 # More info: http://kubernetes.io/docs/user-guide/identifiers#uids
Bu Sun Kim65020912020-05-20 12:08:20 -07007055 },
7056 ],
7057 &quot;creationTimestamp&quot;: &quot;A String&quot;, # CreationTimestamp is a timestamp representing the server time when this
7058 # object was created. It is not guaranteed to be set in happens-before order
7059 # across separate operations. Clients may not set this value. It is
7060 # represented in RFC3339 form and is in UTC.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07007061 #
Bu Sun Kim65020912020-05-20 12:08:20 -07007062 # Populated by the system.
7063 # Read-only.
7064 # Null for lists.
7065 # More info:
7066 # https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
7067 # +optional
7068 &quot;labels&quot;: { # Map of string keys and values that can be used to organize and categorize
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07007069 # (scope and select) objects. May match selectors of replication controllers
7070 # and routes.
7071 # More info: http://kubernetes.io/docs/user-guide/labels
7072 # +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07007073 &quot;a_key&quot;: &quot;A String&quot;,
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07007074 },
Bu Sun Kim65020912020-05-20 12:08:20 -07007075 &quot;generation&quot;: 42, # A sequence number representing a specific generation of the desired state.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07007076 # Populated by the system. Read-only.
7077 # +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07007078 &quot;resourceVersion&quot;: &quot;A String&quot;, # An opaque value that represents the internal version of this object that
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07007079 # can be used by clients to determine when objects have changed. May be used
7080 # for optimistic concurrency, change detection, and the watch operation on a
7081 # resource or set of resources. Clients must treat these values as opaque and
7082 # passed unmodified back to the server. They may only be valid for a
7083 # particular resource or set of resources.
7084 #
7085 # Populated by the system.
7086 # Read-only.
7087 # Value must be treated as opaque by clients and .
7088 # More info:
7089 # https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency
7090 # +optional
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07007091 &quot;selfLink&quot;: &quot;A String&quot;, # SelfLink is a URL representing this object.
7092 # Populated by the system.
7093 # Read-only.
7094 # +optional
7095 # string selfLink = 4;
Bu Sun Kim65020912020-05-20 12:08:20 -07007096 &quot;uid&quot;: &quot;A String&quot;, # UID is the unique in time and space value for this object. It is typically
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07007097 # generated by the server on successful creation of a resource and is not
7098 # allowed to change on PUT operations.
7099 #
7100 # Populated by the system.
7101 # Read-only.
7102 # More info: http://kubernetes.io/docs/user-guide/identifiers#uids
7103 # +optional
Bu Sun Kim65020912020-05-20 12:08:20 -07007104 &quot;namespace&quot;: &quot;A String&quot;, # Namespace defines the space within each name must be unique, within a
7105 # Cloud Run region. In Cloud Run the namespace must be equal to either the
7106 # project ID or project number.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07007107 &quot;annotations&quot;: { # Annotations is an unstructured key value map stored with a resource that
7108 # may be set by external tools to store and retrieve arbitrary metadata. They
7109 # are not queryable and should be preserved when modifying objects. More
7110 # info: http://kubernetes.io/docs/user-guide/annotations +optional
7111 &quot;a_key&quot;: &quot;A String&quot;,
7112 },
Bu Sun Kim65020912020-05-20 12:08:20 -07007113 },
7114 &quot;status&quot;: { # ConfigurationStatus communicates the observed state of the Configuration # Status communicates the observed state of the Configuration (from the
7115 # controller).
7116 # (from the controller).
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07007117 &quot;latestCreatedRevisionName&quot;: &quot;A String&quot;, # LatestCreatedRevisionName is the last revision that was created from this
7118 # Configuration. It might not be ready yet, for that use
7119 # LatestReadyRevisionName.
7120 &quot;latestReadyRevisionName&quot;: &quot;A String&quot;, # LatestReadyRevisionName holds the name of the latest Revision stamped out
7121 # from this Configuration that has had its &quot;Ready&quot; condition become &quot;True&quot;.
Bu Sun Kim65020912020-05-20 12:08:20 -07007122 &quot;conditions&quot;: [ # Conditions communicates information about ongoing/complete
7123 # reconciliation processes that bring the &quot;spec&quot; inline with the observed
7124 # state of the world.
7125 { # ConfigurationCondition defines a readiness condition for a Configuration.
7126 &quot;message&quot;: &quot;A String&quot;, # Human-readable message indicating details about last transition.
7127 # +optional
7128 &quot;lastTransitionTime&quot;: &quot;A String&quot;, # Last time the condition transitioned from one status to another.
7129 # +optional
7130 &quot;status&quot;: &quot;A String&quot;, # Status of the condition, one of True, False, Unknown.
7131 &quot;severity&quot;: &quot;A String&quot;, # How to interpret failures of this condition, one of Error, Warning, Info
7132 # +optional
7133 &quot;reason&quot;: &quot;A String&quot;, # One-word CamelCase reason for the condition&#x27;s last transition.
7134 # +optional
7135 &quot;type&quot;: &quot;A String&quot;, # ConfigurationConditionType is used to communicate the status of the
7136 # reconciliation process. See also:
7137 # https://github.com/knative/serving/blob/master/docs/spec/errors.md#error-conditions-and-reporting
7138 # Types include:&quot;Ready&quot;
7139 },
7140 ],
7141 &quot;observedGeneration&quot;: 42, # ObservedGeneration is the &#x27;Generation&#x27; of the Configuration that
7142 # was last processed by the controller. The observed generation is updated
7143 # even if the controller failed to process the spec and create the Revision.
7144 #
7145 # Clients polling for completed reconciliation should poll until
7146 # observedGeneration = metadata.generation, and the Ready condition&#x27;s status
7147 # is True or False.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07007148 },
7149 },
7150 ],
Bu Sun Kim65020912020-05-20 12:08:20 -07007151 &quot;apiVersion&quot;: &quot;A String&quot;, # The API version for this call such as &quot;serving.knative.dev/v1alpha1&quot;.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07007152 }</pre>
7153</div>
7154
7155</body></html>