Google Cloud Life Sciences V2beta Client - Class Action (0.5.4)

Reference documentation and code samples for the Google Cloud Life Sciences V2beta Client class Action.

Specifies a single action that runs a Docker container.

Generated from protobuf message google.cloud.lifesciences.v2beta.Action

Namespace

Google \ Cloud \ LifeSciences \ V2beta

Methods

__construct

Constructor.

Parameters
NameDescription
data array

Optional. Data for populating the Message object.

↳ container_name string

An optional name for the container. The container hostname will be set to this name, making it useful for inter-container communication. The name must contain only upper and lowercase alphanumeric characters and hyphens and cannot start with a hyphen.

↳ image_uri string

Required. The URI to pull the container image from. Note that all images referenced by actions in the pipeline are pulled before the first action runs. If multiple actions reference the same image, it is only pulled once, ensuring that the same image is used for all actions in a single pipeline. The image URI can be either a complete host and image specification (e.g., quay.io/biocontainers/samtools), a library and image name (e.g., google/cloud-sdk) or a bare image name ('bash') to pull from the default library. No schema is required in any of these cases. If the specified image is not public, the service account specified for the Virtual Machine must have access to pull the images from GCR, or appropriate credentials must be specified in the google.cloud.lifesciences.v2beta.Action.credentials field.

↳ commands array

If specified, overrides the CMD specified in the container. If the container also has an ENTRYPOINT the values are used as entrypoint arguments. Otherwise, they are used as a command and arguments to run inside the container.

↳ entrypoint string

If specified, overrides the ENTRYPOINT specified in the container.

↳ environment array|Google\Protobuf\Internal\MapField

The environment to pass into the container. This environment is merged with values specified in the google.cloud.lifesciences.v2beta.Pipeline message, overwriting any duplicate values. In addition to the values passed here, a few other values are automatically injected into the environment. These cannot be hidden or overwritten. GOOGLE_PIPELINE_FAILED will be set to "1" if the pipeline failed because an action has exited with a non-zero status (and did not have the IGNORE_EXIT_STATUS flag set). This can be used to determine if additional debug or logging actions should execute. GOOGLE_LAST_EXIT_STATUS will be set to the exit status of the last non-background action that executed. This can be used by workflow engine authors to determine whether an individual action has succeeded or failed.

↳ encrypted_environment Google\Cloud\LifeSciences\V2beta\Secret

The encrypted environment to pass into the container. This environment is merged with values specified in the google.cloud.lifesciences.v2beta.Pipeline message, overwriting any duplicate values. The secret must decrypt to a JSON-encoded dictionary where key-value pairs serve as environment variable names and their values. The decoded environment variables can overwrite the values specified by the environment field.

↳ pid_namespace string

An optional identifier for a PID namespace to run the action inside. Multiple actions should use the same string to share a namespace. If unspecified, a separate isolated namespace is used.

↳ port_mappings array|Google\Protobuf\Internal\MapField

A map of containers to host port mappings for this container. If the container already specifies exposed ports, use the PUBLISH_EXPOSED_PORTS flag instead. The host port number must be less than 65536. If it is zero, an unused random port is assigned. To determine the resulting port number, consult the ContainerStartedEvent in the operation metadata.

↳ mounts array<Google\Cloud\LifeSciences\V2beta\Mount>

A list of mounts to make available to the action. In addition to the values specified here, every action has a special virtual disk mounted under /google that contains log files and other operational components.

  • /google/logs All logs written during the pipeline execution.
  • /google/logs/output The combined standard output and standard error of all actions run as part of the pipeline execution.
  • /google/logs/action//stdout The complete contents of each individual action's standard output.
  • /google/logs/action//stderr The complete contents of each individual action's standard error output.

↳ labels array|Google\Protobuf\Internal\MapField

Labels to associate with the action. This field is provided to assist workflow engine authors in identifying actions (for example, to indicate what sort of action they perform, such as localization or debugging). They are returned in the operation metadata, but are otherwise ignored.

↳ credentials Google\Cloud\LifeSciences\V2beta\Secret

If the specified image is hosted on a private registry other than Google Container Registry, the credentials required to pull the image must be specified here as an encrypted secret. The secret must decrypt to a JSON-encoded dictionary containing both username and password keys.

↳ timeout Google\Protobuf\Duration

The maximum amount of time to give the action to complete. If the action fails to complete before the timeout, it will be terminated and the exit status will be non-zero. The pipeline will continue or terminate based on the rules defined by the ALWAYS_RUN and IGNORE_EXIT_STATUS flags.

↳ ignore_exit_status bool

Normally, a non-zero exit status causes the pipeline to fail. This flag allows execution of other actions to continue instead.

↳ run_in_background bool

This flag allows an action to continue running in the background while executing subsequent actions. This is useful to provide services to other actions (or to provide debugging support tools like SSH servers).

↳ always_run bool

By default, after an action fails, no further actions are run. This flag indicates that this action must be run even if the pipeline has already failed. This is useful for actions that copy output files off of the VM or for debugging. Note that no actions will be run if image prefetching fails.

↳ enable_fuse bool

Enable access to the FUSE device for this action. Filesystems can then be mounted into disks shared with other actions. The other actions do not need the enable_fuse flag to access the mounted filesystem. This has the effect of causing the container to be executed with CAP_SYS_ADMIN and exposes /dev/fuse to the container, so use it only for containers you trust.

↳ publish_exposed_ports bool

Exposes all ports specified by EXPOSE statements in the container. To discover the host side port numbers, consult the ACTION_STARTED event in the operation metadata.

↳ disable_image_prefetch bool

All container images are typically downloaded before any actions are executed. This helps prevent typos in URIs or issues like lack of disk space from wasting large amounts of compute resources. If set, this flag prevents the worker from downloading the image until just before the action is executed.

↳ disable_standard_error_capture bool

A small portion of the container's standard error stream is typically captured and returned inside the ContainerStoppedEvent. Setting this flag disables this functionality.

↳ block_external_network bool

Prevents the container from accessing the external network.

getContainerName

An optional name for the container. The container hostname will be set to this name, making it useful for inter-container communication. The name must contain only upper and lowercase alphanumeric characters and hyphens and cannot start with a hyphen.

Returns
TypeDescription
string

setContainerName

An optional name for the container. The container hostname will be set to this name, making it useful for inter-container communication. The name must contain only upper and lowercase alphanumeric characters and hyphens and cannot start with a hyphen.

Parameter
NameDescription
var string
Returns
TypeDescription
$this

getImageUri

Required. The URI to pull the container image from. Note that all images referenced by actions in the pipeline are pulled before the first action runs. If multiple actions reference the same image, it is only pulled once, ensuring that the same image is used for all actions in a single pipeline.

The image URI can be either a complete host and image specification (e.g., quay.io/biocontainers/samtools), a library and image name (e.g., google/cloud-sdk) or a bare image name ('bash') to pull from the default library. No schema is required in any of these cases. If the specified image is not public, the service account specified for the Virtual Machine must have access to pull the images from GCR, or appropriate credentials must be specified in the google.cloud.lifesciences.v2beta.Action.credentials field.

Returns
TypeDescription
string

setImageUri

Required. The URI to pull the container image from. Note that all images referenced by actions in the pipeline are pulled before the first action runs. If multiple actions reference the same image, it is only pulled once, ensuring that the same image is used for all actions in a single pipeline.

The image URI can be either a complete host and image specification (e.g., quay.io/biocontainers/samtools), a library and image name (e.g., google/cloud-sdk) or a bare image name ('bash') to pull from the default library. No schema is required in any of these cases. If the specified image is not public, the service account specified for the Virtual Machine must have access to pull the images from GCR, or appropriate credentials must be specified in the google.cloud.lifesciences.v2beta.Action.credentials field.

Parameter
NameDescription
var string
Returns
TypeDescription
$this

getCommands

If specified, overrides the CMD specified in the container. If the container also has an ENTRYPOINT the values are used as entrypoint arguments. Otherwise, they are used as a command and arguments to run inside the container.

Returns
TypeDescription
Google\Protobuf\Internal\RepeatedField

setCommands

If specified, overrides the CMD specified in the container. If the container also has an ENTRYPOINT the values are used as entrypoint arguments. Otherwise, they are used as a command and arguments to run inside the container.

Parameter
NameDescription
var string[]
Returns
TypeDescription
$this

getEntrypoint

If specified, overrides the ENTRYPOINT specified in the container.

Returns
TypeDescription
string

setEntrypoint

If specified, overrides the ENTRYPOINT specified in the container.

Parameter
NameDescription
var string
Returns
TypeDescription
$this

getEnvironment

The environment to pass into the container. This environment is merged with values specified in the google.cloud.lifesciences.v2beta.Pipeline message, overwriting any duplicate values.

In addition to the values passed here, a few other values are automatically injected into the environment. These cannot be hidden or overwritten. GOOGLE_PIPELINE_FAILED will be set to "1" if the pipeline failed because an action has exited with a non-zero status (and did not have the IGNORE_EXIT_STATUS flag set). This can be used to determine if additional debug or logging actions should execute. GOOGLE_LAST_EXIT_STATUS will be set to the exit status of the last non-background action that executed. This can be used by workflow engine authors to determine whether an individual action has succeeded or failed.

Returns
TypeDescription
Google\Protobuf\Internal\MapField

setEnvironment

The environment to pass into the container. This environment is merged with values specified in the google.cloud.lifesciences.v2beta.Pipeline message, overwriting any duplicate values.

In addition to the values passed here, a few other values are automatically injected into the environment. These cannot be hidden or overwritten. GOOGLE_PIPELINE_FAILED will be set to "1" if the pipeline failed because an action has exited with a non-zero status (and did not have the IGNORE_EXIT_STATUS flag set). This can be used to determine if additional debug or logging actions should execute. GOOGLE_LAST_EXIT_STATUS will be set to the exit status of the last non-background action that executed. This can be used by workflow engine authors to determine whether an individual action has succeeded or failed.

Parameter
NameDescription
var array|Google\Protobuf\Internal\MapField
Returns
TypeDescription
$this

getEncryptedEnvironment

The encrypted environment to pass into the container. This environment is merged with values specified in the google.cloud.lifesciences.v2beta.Pipeline message, overwriting any duplicate values.

The secret must decrypt to a JSON-encoded dictionary where key-value pairs serve as environment variable names and their values. The decoded environment variables can overwrite the values specified by the environment field.

Returns
TypeDescription
Google\Cloud\LifeSciences\V2beta\Secret|null

hasEncryptedEnvironment

clearEncryptedEnvironment

setEncryptedEnvironment

The encrypted environment to pass into the container. This environment is merged with values specified in the google.cloud.lifesciences.v2beta.Pipeline message, overwriting any duplicate values.

The secret must decrypt to a JSON-encoded dictionary where key-value pairs serve as environment variable names and their values. The decoded environment variables can overwrite the values specified by the environment field.

Parameter
NameDescription
var Google\Cloud\LifeSciences\V2beta\Secret
Returns
TypeDescription
$this

getPidNamespace

An optional identifier for a PID namespace to run the action inside.

Multiple actions should use the same string to share a namespace. If unspecified, a separate isolated namespace is used.

Returns
TypeDescription
string

setPidNamespace

An optional identifier for a PID namespace to run the action inside.

Multiple actions should use the same string to share a namespace. If unspecified, a separate isolated namespace is used.

Parameter
NameDescription
var string
Returns
TypeDescription
$this

getPortMappings

A map of containers to host port mappings for this container. If the container already specifies exposed ports, use the PUBLISH_EXPOSED_PORTS flag instead.

The host port number must be less than 65536. If it is zero, an unused random port is assigned. To determine the resulting port number, consult the ContainerStartedEvent in the operation metadata.

Returns
TypeDescription
Google\Protobuf\Internal\MapField

setPortMappings

A map of containers to host port mappings for this container. If the container already specifies exposed ports, use the PUBLISH_EXPOSED_PORTS flag instead.

The host port number must be less than 65536. If it is zero, an unused random port is assigned. To determine the resulting port number, consult the ContainerStartedEvent in the operation metadata.

Parameter
NameDescription
var array|Google\Protobuf\Internal\MapField
Returns
TypeDescription
$this

getMounts

A list of mounts to make available to the action.

In addition to the values specified here, every action has a special virtual disk mounted under /google that contains log files and other operational components.

  • /google/logs All logs written during the pipeline execution.
  • /google/logs/output The combined standard output and standard error of all actions run as part of the pipeline execution.
  • /google/logs/action//stdout The complete contents of each individual action's standard output.
  • /google/logs/action//stderr The complete contents of each individual action's standard error output.

Returns
TypeDescription
Google\Protobuf\Internal\RepeatedField

setMounts

A list of mounts to make available to the action.

In addition to the values specified here, every action has a special virtual disk mounted under /google that contains log files and other operational components.

  • /google/logs All logs written during the pipeline execution.
  • /google/logs/output The combined standard output and standard error of all actions run as part of the pipeline execution.
  • /google/logs/action//stdout The complete contents of each individual action's standard output.
  • /google/logs/action//stderr The complete contents of each individual action's standard error output.

Parameter
NameDescription
var array<Google\Cloud\LifeSciences\V2beta\Mount>
Returns
TypeDescription
$this

getLabels

Labels to associate with the action. This field is provided to assist workflow engine authors in identifying actions (for example, to indicate what sort of action they perform, such as localization or debugging).

They are returned in the operation metadata, but are otherwise ignored.

Returns
TypeDescription
Google\Protobuf\Internal\MapField

setLabels

Labels to associate with the action. This field is provided to assist workflow engine authors in identifying actions (for example, to indicate what sort of action they perform, such as localization or debugging).

They are returned in the operation metadata, but are otherwise ignored.

Parameter
NameDescription
var array|Google\Protobuf\Internal\MapField
Returns
TypeDescription
$this

getCredentials

If the specified image is hosted on a private registry other than Google Container Registry, the credentials required to pull the image must be specified here as an encrypted secret.

The secret must decrypt to a JSON-encoded dictionary containing both username and password keys.

Returns
TypeDescription
Google\Cloud\LifeSciences\V2beta\Secret|null

hasCredentials

clearCredentials

setCredentials

If the specified image is hosted on a private registry other than Google Container Registry, the credentials required to pull the image must be specified here as an encrypted secret.

The secret must decrypt to a JSON-encoded dictionary containing both username and password keys.

Parameter
NameDescription
var Google\Cloud\LifeSciences\V2beta\Secret
Returns
TypeDescription
$this

getTimeout

The maximum amount of time to give the action to complete. If the action fails to complete before the timeout, it will be terminated and the exit status will be non-zero. The pipeline will continue or terminate based on the rules defined by the ALWAYS_RUN and IGNORE_EXIT_STATUS flags.

Returns
TypeDescription
Google\Protobuf\Duration|null

hasTimeout

clearTimeout

setTimeout

The maximum amount of time to give the action to complete. If the action fails to complete before the timeout, it will be terminated and the exit status will be non-zero. The pipeline will continue or terminate based on the rules defined by the ALWAYS_RUN and IGNORE_EXIT_STATUS flags.

Parameter
NameDescription
var Google\Protobuf\Duration
Returns
TypeDescription
$this

getIgnoreExitStatus

Normally, a non-zero exit status causes the pipeline to fail. This flag allows execution of other actions to continue instead.

Returns
TypeDescription
bool

setIgnoreExitStatus

Normally, a non-zero exit status causes the pipeline to fail. This flag allows execution of other actions to continue instead.

Parameter
NameDescription
var bool
Returns
TypeDescription
$this

getRunInBackground

This flag allows an action to continue running in the background while executing subsequent actions. This is useful to provide services to other actions (or to provide debugging support tools like SSH servers).

Returns
TypeDescription
bool

setRunInBackground

This flag allows an action to continue running in the background while executing subsequent actions. This is useful to provide services to other actions (or to provide debugging support tools like SSH servers).

Parameter
NameDescription
var bool
Returns
TypeDescription
$this

getAlwaysRun

By default, after an action fails, no further actions are run. This flag indicates that this action must be run even if the pipeline has already failed. This is useful for actions that copy output files off of the VM or for debugging. Note that no actions will be run if image prefetching fails.

Returns
TypeDescription
bool

setAlwaysRun

By default, after an action fails, no further actions are run. This flag indicates that this action must be run even if the pipeline has already failed. This is useful for actions that copy output files off of the VM or for debugging. Note that no actions will be run if image prefetching fails.

Parameter
NameDescription
var bool
Returns
TypeDescription
$this

getEnableFuse

Enable access to the FUSE device for this action. Filesystems can then be mounted into disks shared with other actions. The other actions do not need the enable_fuse flag to access the mounted filesystem.

This has the effect of causing the container to be executed with CAP_SYS_ADMIN and exposes /dev/fuse to the container, so use it only for containers you trust.

Returns
TypeDescription
bool

setEnableFuse

Enable access to the FUSE device for this action. Filesystems can then be mounted into disks shared with other actions. The other actions do not need the enable_fuse flag to access the mounted filesystem.

This has the effect of causing the container to be executed with CAP_SYS_ADMIN and exposes /dev/fuse to the container, so use it only for containers you trust.

Parameter
NameDescription
var bool
Returns
TypeDescription
$this

getPublishExposedPorts

Exposes all ports specified by EXPOSE statements in the container. To discover the host side port numbers, consult the ACTION_STARTED event in the operation metadata.

Returns
TypeDescription
bool

setPublishExposedPorts

Exposes all ports specified by EXPOSE statements in the container. To discover the host side port numbers, consult the ACTION_STARTED event in the operation metadata.

Parameter
NameDescription
var bool
Returns
TypeDescription
$this

getDisableImagePrefetch

All container images are typically downloaded before any actions are executed. This helps prevent typos in URIs or issues like lack of disk space from wasting large amounts of compute resources.

If set, this flag prevents the worker from downloading the image until just before the action is executed.

Returns
TypeDescription
bool

setDisableImagePrefetch

All container images are typically downloaded before any actions are executed. This helps prevent typos in URIs or issues like lack of disk space from wasting large amounts of compute resources.

If set, this flag prevents the worker from downloading the image until just before the action is executed.

Parameter
NameDescription
var bool
Returns
TypeDescription
$this

getDisableStandardErrorCapture

A small portion of the container's standard error stream is typically captured and returned inside the ContainerStoppedEvent. Setting this flag disables this functionality.

Returns
TypeDescription
bool

setDisableStandardErrorCapture

A small portion of the container's standard error stream is typically captured and returned inside the ContainerStoppedEvent. Setting this flag disables this functionality.

Parameter
NameDescription
var bool
Returns
TypeDescription
$this

getBlockExternalNetwork

Prevents the container from accessing the external network.

Returns
TypeDescription
bool

setBlockExternalNetwork

Prevents the container from accessing the external network.

Parameter
NameDescription
var bool
Returns
TypeDescription
$this