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.
736 737 738 |
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 736 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
576 577 578 |
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 576 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
588 589 590 |
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 588 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
594 595 596 |
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 594 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
604 605 606 |
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 604 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
610 611 612 |
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 610 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
618 619 620 |
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 618 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
626 627 628 |
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 626 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
632 633 634 |
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 632 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
638 639 640 |
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 638 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
648 649 650 |
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 648 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
654 655 656 |
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 654 def readiness_probe @readiness_probe end |
#resources ⇒ Google::Apis::RunV1alpha1::ResourceRequirements
ResourceRequirements describes the compute resource requirements.
Corresponds to the JSON property resources
659 660 661 |
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 659 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
667 668 669 |
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 667 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
674 675 676 |
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 674 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
687 688 689 |
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 687 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
698 699 700 |
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 698 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
708 709 710 |
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 708 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
714 715 716 |
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 714 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
721 722 723 |
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 721 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
727 728 729 |
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 727 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
734 735 736 |
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 734 def working_dir @working_dir end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 |
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 741 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 |