Class: Google::Apis::RunV1::Container

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
generated/google/apis/run_v1/classes.rb,
generated/google/apis/run_v1/representations.rb,
generated/google/apis/run_v1/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

Instance Method Summary collapse

Methods included from Core::JsonObjectSupport

#to_json

Methods included from Core::Hashable

process_value, #to_h

Constructor Details

#initialize(**args) ⇒ Container

Returns a new instance of Container.


603
604
605
# File 'generated/google/apis/run_v1/classes.rb', line 603

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#argsArray<String>

(Optional) Cloud Run fully managed: supported Cloud Run for Anthos: supported 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. More info: https://kubernetes.io/docs/ tasks/inject-data-application/define-command-argument-container/#running-a- command-in-a-shell Corresponds to the JSON property args

Returns:

  • (Array<String>)

486
487
488
# File 'generated/google/apis/run_v1/classes.rb', line 486

def args
  @args
end

#commandArray<String>

Corresponds to the JSON property command

Returns:

  • (Array<String>)

491
492
493
# File 'generated/google/apis/run_v1/classes.rb', line 491

def command
  @command
end

#envArray<Google::Apis::RunV1::EnvVar>

(Optional) Cloud Run fully managed: supported Cloud Run for Anthos: supported List of environment variables to set in the container. Corresponds to the JSON property env

Returns:


497
498
499
# File 'generated/google/apis/run_v1/classes.rb', line 497

def env
  @env
end

#env_fromArray<Google::Apis::RunV1::EnvFromSource>

(Optional) Cloud Run fully managed: not supported Cloud Run for Anthos: supported 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. Corresponds to the JSON property envFrom


508
509
510
# File 'generated/google/apis/run_v1/classes.rb', line 508

def env_from
  @env_from
end

#imageString

Cloud Run fully managed: only supports containers from Google Container Registry Cloud Run for Anthos: supported URL of the Container image. More info: https://kubernetes.io/docs/concepts/containers/images Corresponds to the JSON property image

Returns:

  • (String)

515
516
517
# File 'generated/google/apis/run_v1/classes.rb', line 515

def image
  @image
end

#image_pull_policyString

(Optional) Cloud Run fully managed: not supported Cloud Run for Anthos: supported Image pull policy. One of Always, Never, IfNotPresent. Defaults to Always if :latest tag is specified, or IfNotPresent otherwise. More info: https://kubernetes.io/docs/concepts/containers/images#updating-images Corresponds to the JSON property imagePullPolicy

Returns:

  • (String)

523
524
525
# File 'generated/google/apis/run_v1/classes.rb', line 523

def image_pull_policy
  @image_pull_policy
end

#liveness_probeGoogle::Apis::RunV1::Probe

Cloud Run fully managed: not supported Cloud Run for Anthos: supported 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


530
531
532
# File 'generated/google/apis/run_v1/classes.rb', line 530

def liveness_probe
  @liveness_probe
end

#nameString

(Optional) Name of the container specified as a DNS_LABEL. Corresponds to the JSON property name

Returns:

  • (String)

535
536
537
# File 'generated/google/apis/run_v1/classes.rb', line 535

def name
  @name
end

#portsArray<Google::Apis::RunV1::ContainerPort>

(Optional) List of ports to expose from the container. Only a single port can be specified. The specified ports must be listening on all interfaces (0.0.0.0) within the container to be accessible. If omitted, a port number will be chosen and passed to the container through the PORT environment variable for the container to listen on. Corresponds to the JSON property ports


544
545
546
# File 'generated/google/apis/run_v1/classes.rb', line 544

def ports
  @ports
end

#readiness_probeGoogle::Apis::RunV1::Probe

Cloud Run fully managed: not supported Cloud Run for Anthos: supported 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


551
552
553
# File 'generated/google/apis/run_v1/classes.rb', line 551

def readiness_probe
  @readiness_probe
end

#resourcesGoogle::Apis::RunV1::ResourceRequirements

ResourceRequirements describes the compute resource requirements. Corresponds to the JSON property resources


556
557
558
# File 'generated/google/apis/run_v1/classes.rb', line 556

def resources
  @resources
end

#security_contextGoogle::Apis::RunV1::SecurityContext

Cloud Run fully managed: not supported Cloud Run for Anthos: supported 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


565
566
567
# File 'generated/google/apis/run_v1/classes.rb', line 565

def security_context
  @security_context
end

#termination_message_pathString

(Optional) Cloud Run fully managed: not supported Cloud Run for Anthos: supported 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. Corresponds to the JSON property terminationMessagePath

Returns:

  • (String)

576
577
578
# File 'generated/google/apis/run_v1/classes.rb', line 576

def termination_message_path
  @termination_message_path
end

#termination_message_policyString

(Optional) Cloud Run fully managed: not supported Cloud Run for Anthos: supported 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. Corresponds to the JSON property terminationMessagePolicy

Returns:

  • (String)

587
588
589
# File 'generated/google/apis/run_v1/classes.rb', line 587

def termination_message_policy
  @termination_message_policy
end

#volume_mountsArray<Google::Apis::RunV1::VolumeMount>

(Optional) Cloud Run fully managed: not supported Cloud Run for Anthos: supported Pod volumes to mount into the container's filesystem. Corresponds to the JSON property volumeMounts


593
594
595
# File 'generated/google/apis/run_v1/classes.rb', line 593

def volume_mounts
  @volume_mounts
end

#working_dirString

(Optional) Cloud Run fully managed: not supported Cloud Run for Anthos: supported Container's working directory. If not specified, the container runtime's default will be used, which might be configured in the container image. Corresponds to the JSON property workingDir

Returns:

  • (String)

601
602
603
# File 'generated/google/apis/run_v1/classes.rb', line 601

def working_dir
  @working_dir
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object


608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
# File 'generated/google/apis/run_v1/classes.rb', line 608

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)
  @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)
  @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)
  @volume_mounts = args[:volume_mounts] if args.key?(:volume_mounts)
  @working_dir = args[:working_dir] if args.key?(:working_dir)
end