Class: Google::Apis::RunV1alpha1::Container

Inherits:
Object
  • Object
show all
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

Instance Method Summary collapse

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

#argsArray<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

Returns:

  • (Array<String>)


195
196
197
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 195

def args
  @args
end

#commandArray<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

Returns:

  • (Array<String>)


207
208
209
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 207

def command
  @command
end

#envArray<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_fromArray<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

#imageString

Docker image name. More info: https://kubernetes.io/docs/concepts/containers/ images Corresponds to the JSON property image

Returns:

  • (String)


229
230
231
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 229

def image
  @image
end

#image_pull_policyString

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

Returns:

  • (String)


237
238
239
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 237

def image_pull_policy
  @image_pull_policy
end

#lifecycleGoogle::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_probeGoogle::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

#nameString

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

Returns:

  • (String)


257
258
259
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 257

def name
  @name
end

#portsArray<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_probeGoogle::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

#resourcesGoogle::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_contextGoogle::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

#stdinBoolean 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

Returns:

  • (Boolean)


293
294
295
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 293

def stdin
  @stdin
end

#stdin_onceBoolean 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

Returns:

  • (Boolean)


306
307
308
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 306

def stdin_once
  @stdin_once
end

#termination_message_pathString

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

Returns:

  • (String)


317
318
319
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 317

def termination_message_path
  @termination_message_path
end

#termination_message_policyString

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

Returns:

  • (String)


327
328
329
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 327

def termination_message_policy
  @termination_message_policy
end

#ttyBoolean 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

Returns:

  • (Boolean)


333
334
335
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 333

def tty
  @tty
end

#volume_devicesArray<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_mountsArray<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_dirString

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

Returns:

  • (String)


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