Struct gapi_grpc::google::cloud::lifesciences::v2beta::Action [−][src]
Specifies a single action that runs a Docker container.
Fields
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][google.cloud.lifesciences.v2beta.Action.credentials] field.
commands: Vec<String>
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: HashMap<String, String>
The environment to pass into the container. This environment is merged with values specified in the [google.cloud.lifesciences.v2beta.Pipeline][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.
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: HashMap<i32, i32>
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: Vec<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: HashMap<String, String>
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: Option<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: Option<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.
Trait Implementations
impl Clone for Action
[src]
impl Debug for Action
[src]
impl Default for Action
[src]
impl Message for Action
[src]
fn encode_raw<B>(&self, buf: &mut B) where
B: BufMut,
[src]
B: BufMut,
fn merge_field<B>(
&mut self,
tag: u32,
wire_type: WireType,
buf: &mut B,
ctx: DecodeContext
) -> Result<(), DecodeError> where
B: Buf,
[src]
&mut self,
tag: u32,
wire_type: WireType,
buf: &mut B,
ctx: DecodeContext
) -> Result<(), DecodeError> where
B: Buf,
fn encoded_len(&self) -> usize
[src]
fn clear(&mut self)
[src]
pub fn encode<B>(&self, buf: &mut B) -> Result<(), EncodeError> where
B: BufMut,
[src]
B: BufMut,
pub fn encode_length_delimited<B>(&self, buf: &mut B) -> Result<(), EncodeError> where
B: BufMut,
[src]
B: BufMut,
pub fn decode<B>(buf: B) -> Result<Self, DecodeError> where
Self: Default,
B: Buf,
[src]
Self: Default,
B: Buf,
pub fn decode_length_delimited<B>(buf: B) -> Result<Self, DecodeError> where
Self: Default,
B: Buf,
[src]
Self: Default,
B: Buf,
pub fn merge<B>(&mut self, buf: B) -> Result<(), DecodeError> where
B: Buf,
[src]
B: Buf,
pub fn merge_length_delimited<B>(&mut self, buf: B) -> Result<(), DecodeError> where
B: Buf,
[src]
B: Buf,
impl PartialEq<Action> for Action
[src]
impl StructuralPartialEq for Action
[src]
Auto Trait Implementations
impl RefUnwindSafe for Action
impl Send for Action
impl Sync for Action
impl Unpin for Action
impl UnwindSafe for Action
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T> Instrument for T
[src]
pub fn instrument(self, span: Span) -> Instrumented<Self>
[src]
pub fn in_current_span(self) -> Instrumented<Self>
[src]
impl<T> Instrument for T
[src]
pub fn instrument(self, span: Span) -> Instrumented<Self>
[src]
pub fn in_current_span(self) -> Instrumented<Self>
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> IntoRequest<T> for T
[src]
pub fn into_request(self) -> Request<T>
[src]
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
[src]
V: MultiLane<T>,
impl<T> WithSubscriber for T
[src]
pub fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
[src]
S: Into<Dispatch>,