Class: Google::Apis::RunV1alpha1::Container
- Inherits:
-
Object
- Object
- Google::Apis::RunV1alpha1::Container
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- lib/google/apis/run_v1alpha1/classes.rb,
lib/google/apis/run_v1alpha1/representations.rb,
lib/google/apis/run_v1alpha1/representations.rb
Overview
A single application container. This specifies both the container to run, the command to run in the container and the arguments to supply to it. Note that additional arguments may be supplied by the system to the container at runtime.
Instance Attribute Summary collapse
-
#args ⇒ Array<String>
Arguments to the entrypoint.
-
#command ⇒ Array<String>
Entrypoint array.
-
#env ⇒ Array<Google::Apis::RunV1alpha1::EnvVar>
List of environment variables to set in the container.
-
#env_from ⇒ Array<Google::Apis::RunV1alpha1::EnvFromSource>
List of sources to populate environment variables in the container.
-
#image ⇒ String
Docker image name.
-
#image_pull_policy ⇒ String
Image pull policy.
-
#lifecycle ⇒ Google::Apis::RunV1alpha1::Lifecycle
Lifecycle describes actions that the management system should take in response to container lifecycle events.
-
#liveness_probe ⇒ Google::Apis::RunV1alpha1::Probe
Probe describes a health check to be performed against a container to determine whether it is alive or ready to receive traffic.
-
#name ⇒ String
Name of the container specified as a DNS_LABEL.
-
#ports ⇒ Array<Google::Apis::RunV1alpha1::ContainerPort>
List of ports to expose from the container.
-
#readiness_probe ⇒ Google::Apis::RunV1alpha1::Probe
Probe describes a health check to be performed against a container to determine whether it is alive or ready to receive traffic.
-
#resources ⇒ Google::Apis::RunV1alpha1::ResourceRequirements
ResourceRequirements describes the compute resource requirements.
-
#security_context ⇒ Google::Apis::RunV1alpha1::SecurityContext
SecurityContext holds security configuration that will be applied to a container.
-
#stdin ⇒ Boolean
(also: #stdin?)
Whether this container should allocate a buffer for stdin in the container runtime.
-
#stdin_once ⇒ Boolean
(also: #stdin_once?)
Whether the container runtime should close the stdin channel after it has been opened by a single attach.
-
#termination_message_path ⇒ String
Optional: Path at which the file to which the container's termination message will be written is mounted into the container's filesystem.
-
#termination_message_policy ⇒ String
Indicate how the termination message should be populated.
-
#tty ⇒ Boolean
(also: #tty?)
Whether this container should allocate a TTY for itself, also requires 'stdin' to be true.
-
#volume_devices ⇒ Array<Google::Apis::RunV1alpha1::VolumeDevice>
volumeDevices is the list of block devices to be used by the container.
-
#volume_mounts ⇒ Array<Google::Apis::RunV1alpha1::VolumeMount>
Pod volumes to mount into the container's filesystem.
-
#working_dir ⇒ String
Container's working directory.
Instance Method Summary collapse
-
#initialize(**args) ⇒ Container
constructor
A new instance of Container.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ Container
Returns a new instance of Container.
355 356 357 |
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 355 def initialize(**args) update!(**args) end |
Instance Attribute Details
#args ⇒ Array<String>
Arguments to the entrypoint. The docker image's CMD is used if this is not
provided. Variable references $(VAR_NAME) are expanded using the container's
environment. If a variable cannot be resolved, the reference in the input
string will be unchanged. The $(VAR_NAME) syntax can be escaped with a double $
$, ie: $$(VAR_NAME). Escaped references will never be expanded, regardless of
whether the variable exists or not. Cannot be updated. More info: https://
kubernetes.io/docs/tasks/inject-data-application/define-command-argument-
container/#running-a-command-in-a-shell +optional
Corresponds to the JSON property args
195 196 197 |
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 195 def args @args end |
#command ⇒ Array<String>
Entrypoint array. Not executed within a shell. The docker image's ENTRYPOINT
is used if this is not provided. Variable references $(VAR_NAME) are expanded
using the container's environment. If a variable cannot be resolved, the
reference in the input string will be unchanged. The $(VAR_NAME) syntax can be
escaped with a double $$, ie: $$(VAR_NAME). Escaped references will never be
expanded, regardless of whether the variable exists or not. Cannot be updated.
More info: https://kubernetes.io/docs/tasks/inject-data-application/define-
command-argument-container/#running-a-command-in-a-shell +optional
Corresponds to the JSON property command
207 208 209 |
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 207 def command @command end |
#env ⇒ Array<Google::Apis::RunV1alpha1::EnvVar>
List of environment variables to set in the container. Cannot be updated. +
optional
Corresponds to the JSON property env
213 214 215 |
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 213 def env @env end |
#env_from ⇒ Array<Google::Apis::RunV1alpha1::EnvFromSource>
List of sources to populate environment variables in the container. The keys
defined within a source must be a C_IDENTIFIER. All invalid keys will be
reported as an event when the container is starting. When a key exists in
multiple sources, the value associated with the last source will take
precedence. Values defined by an Env with a duplicate key will take precedence.
Cannot be updated. +optional
Corresponds to the JSON property envFrom
223 224 225 |
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 223 def env_from @env_from end |
#image ⇒ String
Docker image name. More info: https://kubernetes.io/docs/concepts/containers/
images
Corresponds to the JSON property image
229 230 231 |
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 229 def image @image end |
#image_pull_policy ⇒ String
Image pull policy. One of Always, Never, IfNotPresent. Defaults to Always if :
latest tag is specified, or IfNotPresent otherwise. Cannot be updated. More
info: https://kubernetes.io/docs/concepts/containers/images#updating-images +
optional
Corresponds to the JSON property imagePullPolicy
237 238 239 |
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 237 def image_pull_policy @image_pull_policy end |
#lifecycle ⇒ Google::Apis::RunV1alpha1::Lifecycle
Lifecycle describes actions that the management system should take in response
to container lifecycle events. For the PostStart and PreStop lifecycle
handlers, management of the container blocks until the action is complete,
unless the container process fails, in which case the handler is aborted.
Corresponds to the JSON property lifecycle
245 246 247 |
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 245 def lifecycle @lifecycle end |
#liveness_probe ⇒ Google::Apis::RunV1alpha1::Probe
Probe describes a health check to be performed against a container to
determine whether it is alive or ready to receive traffic.
Corresponds to the JSON property livenessProbe
251 252 253 |
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 251 def liveness_probe @liveness_probe end |
#name ⇒ String
Name of the container specified as a DNS_LABEL. Each container must have a
unique name (DNS_LABEL). Cannot be updated.
Corresponds to the JSON property name
257 258 259 |
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 257 def name @name end |
#ports ⇒ Array<Google::Apis::RunV1alpha1::ContainerPort>
List of ports to expose from the container. Exposing a port here gives the
system additional information about the network connections a container uses,
but is primarily informational. Not specifying a port here DOES NOT prevent
that port from being exposed. Any port which is listening on the default "0.0.
0.0" address inside a container will be accessible from the network. Cannot be
updated. +optional
Corresponds to the JSON property ports
267 268 269 |
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 267 def ports @ports end |
#readiness_probe ⇒ Google::Apis::RunV1alpha1::Probe
Probe describes a health check to be performed against a container to
determine whether it is alive or ready to receive traffic.
Corresponds to the JSON property readinessProbe
273 274 275 |
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 273 def readiness_probe @readiness_probe end |
#resources ⇒ Google::Apis::RunV1alpha1::ResourceRequirements
ResourceRequirements describes the compute resource requirements.
Corresponds to the JSON property resources
278 279 280 |
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 278 def resources @resources end |
#security_context ⇒ Google::Apis::RunV1alpha1::SecurityContext
SecurityContext holds security configuration that will be applied to a
container. Some fields are present in both SecurityContext and
PodSecurityContext. When both are set, the values in SecurityContext take
precedence.
Corresponds to the JSON property securityContext
286 287 288 |
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 286 def security_context @security_context end |
#stdin ⇒ Boolean Also known as: stdin?
Whether this container should allocate a buffer for stdin in the container
runtime. If this is not set, reads from stdin in the container will always
result in EOF. Default is false. +optional
Corresponds to the JSON property stdin
293 294 295 |
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 293 def stdin @stdin end |
#stdin_once ⇒ Boolean Also known as: stdin_once?
Whether the container runtime should close the stdin channel after it has been
opened by a single attach. When stdin is true the stdin stream will remain
open across multiple attach sessions. If stdinOnce is set to true, stdin is
opened on container start, is empty until the first client attaches to stdin,
and then remains open and accepts data until the client disconnects, at which
time stdin is closed and remains closed until the container is restarted. If
this flag is false, a container processes that reads from stdin will never
receive an EOF. Default is false +optional
Corresponds to the JSON property stdinOnce
306 307 308 |
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 306 def stdin_once @stdin_once end |
#termination_message_path ⇒ String
Optional: Path at which the file to which the container's termination message
will be written is mounted into the container's filesystem. Message written is
intended to be brief final status, such as an assertion failure message. Will
be truncated by the node if greater than 4096 bytes. The total message length
across all containers will be limited to 12kb. Defaults to /dev/termination-
log. Cannot be updated. +optional
Corresponds to the JSON property terminationMessagePath
317 318 319 |
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 317 def @termination_message_path end |
#termination_message_policy ⇒ String
Indicate how the termination message should be populated. File will use the
contents of terminationMessagePath to populate the container status message on
both success and failure. FallbackToLogsOnError will use the last chunk of
container log output if the termination message file is empty and the
container exited with an error. The log output is limited to 2048 bytes or 80
lines, whichever is smaller. Defaults to File. Cannot be updated. +optional
Corresponds to the JSON property terminationMessagePolicy
327 328 329 |
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 327 def @termination_message_policy end |
#tty ⇒ Boolean Also known as: tty?
Whether this container should allocate a TTY for itself, also requires 'stdin'
to be true. Default is false. +optional
Corresponds to the JSON property tty
333 334 335 |
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 333 def tty @tty end |
#volume_devices ⇒ Array<Google::Apis::RunV1alpha1::VolumeDevice>
volumeDevices is the list of block devices to be used by the container. This
is an alpha feature and may change in the future. +optional
Corresponds to the JSON property volumeDevices
340 341 342 |
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 340 def volume_devices @volume_devices end |
#volume_mounts ⇒ Array<Google::Apis::RunV1alpha1::VolumeMount>
Pod volumes to mount into the container's filesystem. Cannot be updated. +
optional
Corresponds to the JSON property volumeMounts
346 347 348 |
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 346 def volume_mounts @volume_mounts end |
#working_dir ⇒ String
Container's working directory. If not specified, the container runtime's
default will be used, which might be configured in the container image. Cannot
be updated. +optional
Corresponds to the JSON property workingDir
353 354 355 |
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 353 def working_dir @working_dir end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 |
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 360 def update!(**args) @args = args[:args] if args.key?(:args) @command = args[:command] if args.key?(:command) @env = args[:env] if args.key?(:env) @env_from = args[:env_from] if args.key?(:env_from) @image = args[:image] if args.key?(:image) @image_pull_policy = args[:image_pull_policy] if args.key?(:image_pull_policy) @lifecycle = args[:lifecycle] if args.key?(:lifecycle) @liveness_probe = args[:liveness_probe] if args.key?(:liveness_probe) @name = args[:name] if args.key?(:name) @ports = args[:ports] if args.key?(:ports) @readiness_probe = args[:readiness_probe] if args.key?(:readiness_probe) @resources = args[:resources] if args.key?(:resources) @security_context = args[:security_context] if args.key?(:security_context) @stdin = args[:stdin] if args.key?(:stdin) @stdin_once = args[:stdin_once] if args.key?(:stdin_once) @termination_message_path = args[:termination_message_path] if args.key?(:termination_message_path) @termination_message_policy = args[:termination_message_policy] if args.key?(:termination_message_policy) @tty = args[:tty] if args.key?(:tty) @volume_devices = args[:volume_devices] if args.key?(:volume_devices) @volume_mounts = args[:volume_mounts] if args.key?(:volume_mounts) @working_dir = args[:working_dir] if args.key?(:working_dir) end |