/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include An object representing the details of a container that is part of a
* job.See Also:
AWS
* API Reference
The image used to start the container.
*/ inline const Aws::String& GetImage() const{ return m_image; } /** *The image used to start the container.
*/ inline bool ImageHasBeenSet() const { return m_imageHasBeenSet; } /** *The image used to start the container.
*/ inline void SetImage(const Aws::String& value) { m_imageHasBeenSet = true; m_image = value; } /** *The image used to start the container.
*/ inline void SetImage(Aws::String&& value) { m_imageHasBeenSet = true; m_image = std::move(value); } /** *The image used to start the container.
*/ inline void SetImage(const char* value) { m_imageHasBeenSet = true; m_image.assign(value); } /** *The image used to start the container.
*/ inline ContainerDetail& WithImage(const Aws::String& value) { SetImage(value); return *this;} /** *The image used to start the container.
*/ inline ContainerDetail& WithImage(Aws::String&& value) { SetImage(std::move(value)); return *this;} /** *The image used to start the container.
*/ inline ContainerDetail& WithImage(const char* value) { SetImage(value); return *this;} /** *The number of VCPUs allocated for the job.
*/ inline int GetVcpus() const{ return m_vcpus; } /** *The number of VCPUs allocated for the job.
*/ inline bool VcpusHasBeenSet() const { return m_vcpusHasBeenSet; } /** *The number of VCPUs allocated for the job.
*/ inline void SetVcpus(int value) { m_vcpusHasBeenSet = true; m_vcpus = value; } /** *The number of VCPUs allocated for the job.
*/ inline ContainerDetail& WithVcpus(int value) { SetVcpus(value); return *this;} /** *The number of MiB of memory reserved for the job.
*/ inline int GetMemory() const{ return m_memory; } /** *The number of MiB of memory reserved for the job.
*/ inline bool MemoryHasBeenSet() const { return m_memoryHasBeenSet; } /** *The number of MiB of memory reserved for the job.
*/ inline void SetMemory(int value) { m_memoryHasBeenSet = true; m_memory = value; } /** *The number of MiB of memory reserved for the job.
*/ inline ContainerDetail& WithMemory(int value) { SetMemory(value); return *this;} /** *The command that is passed to the container.
*/ inline const Aws::VectorThe command that is passed to the container.
*/ inline bool CommandHasBeenSet() const { return m_commandHasBeenSet; } /** *The command that is passed to the container.
*/ inline void SetCommand(const Aws::VectorThe command that is passed to the container.
*/ inline void SetCommand(Aws::VectorThe command that is passed to the container.
*/ inline ContainerDetail& WithCommand(const Aws::VectorThe command that is passed to the container.
*/ inline ContainerDetail& WithCommand(Aws::VectorThe command that is passed to the container.
*/ inline ContainerDetail& AddCommand(const Aws::String& value) { m_commandHasBeenSet = true; m_command.push_back(value); return *this; } /** *The command that is passed to the container.
*/ inline ContainerDetail& AddCommand(Aws::String&& value) { m_commandHasBeenSet = true; m_command.push_back(std::move(value)); return *this; } /** *The command that is passed to the container.
*/ inline ContainerDetail& AddCommand(const char* value) { m_commandHasBeenSet = true; m_command.push_back(value); return *this; } /** *The Amazon Resource Name (ARN) associated with the job upon execution.
*/ inline const Aws::String& GetJobRoleArn() const{ return m_jobRoleArn; } /** *The Amazon Resource Name (ARN) associated with the job upon execution.
*/ inline bool JobRoleArnHasBeenSet() const { return m_jobRoleArnHasBeenSet; } /** *The Amazon Resource Name (ARN) associated with the job upon execution.
*/ inline void SetJobRoleArn(const Aws::String& value) { m_jobRoleArnHasBeenSet = true; m_jobRoleArn = value; } /** *The Amazon Resource Name (ARN) associated with the job upon execution.
*/ inline void SetJobRoleArn(Aws::String&& value) { m_jobRoleArnHasBeenSet = true; m_jobRoleArn = std::move(value); } /** *The Amazon Resource Name (ARN) associated with the job upon execution.
*/ inline void SetJobRoleArn(const char* value) { m_jobRoleArnHasBeenSet = true; m_jobRoleArn.assign(value); } /** *The Amazon Resource Name (ARN) associated with the job upon execution.
*/ inline ContainerDetail& WithJobRoleArn(const Aws::String& value) { SetJobRoleArn(value); return *this;} /** *The Amazon Resource Name (ARN) associated with the job upon execution.
*/ inline ContainerDetail& WithJobRoleArn(Aws::String&& value) { SetJobRoleArn(std::move(value)); return *this;} /** *The Amazon Resource Name (ARN) associated with the job upon execution.
*/ inline ContainerDetail& WithJobRoleArn(const char* value) { SetJobRoleArn(value); return *this;} /** *A list of volumes associated with the job.
*/ inline const Aws::VectorA list of volumes associated with the job.
*/ inline bool VolumesHasBeenSet() const { return m_volumesHasBeenSet; } /** *A list of volumes associated with the job.
*/ inline void SetVolumes(const Aws::VectorA list of volumes associated with the job.
*/ inline void SetVolumes(Aws::VectorA list of volumes associated with the job.
*/ inline ContainerDetail& WithVolumes(const Aws::VectorA list of volumes associated with the job.
*/ inline ContainerDetail& WithVolumes(Aws::VectorA list of volumes associated with the job.
*/ inline ContainerDetail& AddVolumes(const Volume& value) { m_volumesHasBeenSet = true; m_volumes.push_back(value); return *this; } /** *A list of volumes associated with the job.
*/ inline ContainerDetail& AddVolumes(Volume&& value) { m_volumesHasBeenSet = true; m_volumes.push_back(std::move(value)); return *this; } /** *The environment variables to pass to a container.
Environment
* variables must not start with AWS_BATCH; this naming convention is
* reserved for variables that are set by the AWS Batch service.
The environment variables to pass to a container.
Environment
* variables must not start with AWS_BATCH; this naming convention is
* reserved for variables that are set by the AWS Batch service.
The environment variables to pass to a container.
Environment
* variables must not start with AWS_BATCH; this naming convention is
* reserved for variables that are set by the AWS Batch service.
The environment variables to pass to a container.
Environment
* variables must not start with AWS_BATCH; this naming convention is
* reserved for variables that are set by the AWS Batch service.
The environment variables to pass to a container.
Environment
* variables must not start with AWS_BATCH; this naming convention is
* reserved for variables that are set by the AWS Batch service.
The environment variables to pass to a container.
Environment
* variables must not start with AWS_BATCH; this naming convention is
* reserved for variables that are set by the AWS Batch service.
The environment variables to pass to a container.
Environment
* variables must not start with AWS_BATCH; this naming convention is
* reserved for variables that are set by the AWS Batch service.
The environment variables to pass to a container.
Environment
* variables must not start with AWS_BATCH; this naming convention is
* reserved for variables that are set by the AWS Batch service.
The mount points for data volumes in your container.
*/ inline const Aws::VectorThe mount points for data volumes in your container.
*/ inline bool MountPointsHasBeenSet() const { return m_mountPointsHasBeenSet; } /** *The mount points for data volumes in your container.
*/ inline void SetMountPoints(const Aws::VectorThe mount points for data volumes in your container.
*/ inline void SetMountPoints(Aws::VectorThe mount points for data volumes in your container.
*/ inline ContainerDetail& WithMountPoints(const Aws::VectorThe mount points for data volumes in your container.
*/ inline ContainerDetail& WithMountPoints(Aws::VectorThe mount points for data volumes in your container.
*/ inline ContainerDetail& AddMountPoints(const MountPoint& value) { m_mountPointsHasBeenSet = true; m_mountPoints.push_back(value); return *this; } /** *The mount points for data volumes in your container.
*/ inline ContainerDetail& AddMountPoints(MountPoint&& value) { m_mountPointsHasBeenSet = true; m_mountPoints.push_back(std::move(value)); return *this; } /** *When this parameter is true, the container is given read-only access to its * root file system.
*/ inline bool GetReadonlyRootFilesystem() const{ return m_readonlyRootFilesystem; } /** *When this parameter is true, the container is given read-only access to its * root file system.
*/ inline bool ReadonlyRootFilesystemHasBeenSet() const { return m_readonlyRootFilesystemHasBeenSet; } /** *When this parameter is true, the container is given read-only access to its * root file system.
*/ inline void SetReadonlyRootFilesystem(bool value) { m_readonlyRootFilesystemHasBeenSet = true; m_readonlyRootFilesystem = value; } /** *When this parameter is true, the container is given read-only access to its * root file system.
*/ inline ContainerDetail& WithReadonlyRootFilesystem(bool value) { SetReadonlyRootFilesystem(value); return *this;} /** *A list of ulimit values to set in the container.
A list of ulimit values to set in the container.
A list of ulimit values to set in the container.
A list of ulimit values to set in the container.
A list of ulimit values to set in the container.
A list of ulimit values to set in the container.
A list of ulimit values to set in the container.
A list of ulimit values to set in the container.
When this parameter is true, the container is given elevated privileges on
* the host container instance (similar to the root user).
When this parameter is true, the container is given elevated privileges on
* the host container instance (similar to the root user).
When this parameter is true, the container is given elevated privileges on
* the host container instance (similar to the root user).
When this parameter is true, the container is given elevated privileges on
* the host container instance (similar to the root user).
The user name to use inside the container.
*/ inline const Aws::String& GetUser() const{ return m_user; } /** *The user name to use inside the container.
*/ inline bool UserHasBeenSet() const { return m_userHasBeenSet; } /** *The user name to use inside the container.
*/ inline void SetUser(const Aws::String& value) { m_userHasBeenSet = true; m_user = value; } /** *The user name to use inside the container.
*/ inline void SetUser(Aws::String&& value) { m_userHasBeenSet = true; m_user = std::move(value); } /** *The user name to use inside the container.
*/ inline void SetUser(const char* value) { m_userHasBeenSet = true; m_user.assign(value); } /** *The user name to use inside the container.
*/ inline ContainerDetail& WithUser(const Aws::String& value) { SetUser(value); return *this;} /** *The user name to use inside the container.
*/ inline ContainerDetail& WithUser(Aws::String&& value) { SetUser(std::move(value)); return *this;} /** *The user name to use inside the container.
*/ inline ContainerDetail& WithUser(const char* value) { SetUser(value); return *this;} /** *The exit code to return upon completion.
*/ inline int GetExitCode() const{ return m_exitCode; } /** *The exit code to return upon completion.
*/ inline bool ExitCodeHasBeenSet() const { return m_exitCodeHasBeenSet; } /** *The exit code to return upon completion.
*/ inline void SetExitCode(int value) { m_exitCodeHasBeenSet = true; m_exitCode = value; } /** *The exit code to return upon completion.
*/ inline ContainerDetail& WithExitCode(int value) { SetExitCode(value); return *this;} /** *A short (255 max characters) human-readable string to provide additional * details about a running or stopped container.
*/ inline const Aws::String& GetReason() const{ return m_reason; } /** *A short (255 max characters) human-readable string to provide additional * details about a running or stopped container.
*/ inline bool ReasonHasBeenSet() const { return m_reasonHasBeenSet; } /** *A short (255 max characters) human-readable string to provide additional * details about a running or stopped container.
*/ inline void SetReason(const Aws::String& value) { m_reasonHasBeenSet = true; m_reason = value; } /** *A short (255 max characters) human-readable string to provide additional * details about a running or stopped container.
*/ inline void SetReason(Aws::String&& value) { m_reasonHasBeenSet = true; m_reason = std::move(value); } /** *A short (255 max characters) human-readable string to provide additional * details about a running or stopped container.
*/ inline void SetReason(const char* value) { m_reasonHasBeenSet = true; m_reason.assign(value); } /** *A short (255 max characters) human-readable string to provide additional * details about a running or stopped container.
*/ inline ContainerDetail& WithReason(const Aws::String& value) { SetReason(value); return *this;} /** *A short (255 max characters) human-readable string to provide additional * details about a running or stopped container.
*/ inline ContainerDetail& WithReason(Aws::String&& value) { SetReason(std::move(value)); return *this;} /** *A short (255 max characters) human-readable string to provide additional * details about a running or stopped container.
*/ inline ContainerDetail& WithReason(const char* value) { SetReason(value); return *this;} /** *The Amazon Resource Name (ARN) of the container instance on which the * container is running.
*/ inline const Aws::String& GetContainerInstanceArn() const{ return m_containerInstanceArn; } /** *The Amazon Resource Name (ARN) of the container instance on which the * container is running.
*/ inline bool ContainerInstanceArnHasBeenSet() const { return m_containerInstanceArnHasBeenSet; } /** *The Amazon Resource Name (ARN) of the container instance on which the * container is running.
*/ inline void SetContainerInstanceArn(const Aws::String& value) { m_containerInstanceArnHasBeenSet = true; m_containerInstanceArn = value; } /** *The Amazon Resource Name (ARN) of the container instance on which the * container is running.
*/ inline void SetContainerInstanceArn(Aws::String&& value) { m_containerInstanceArnHasBeenSet = true; m_containerInstanceArn = std::move(value); } /** *The Amazon Resource Name (ARN) of the container instance on which the * container is running.
*/ inline void SetContainerInstanceArn(const char* value) { m_containerInstanceArnHasBeenSet = true; m_containerInstanceArn.assign(value); } /** *The Amazon Resource Name (ARN) of the container instance on which the * container is running.
*/ inline ContainerDetail& WithContainerInstanceArn(const Aws::String& value) { SetContainerInstanceArn(value); return *this;} /** *The Amazon Resource Name (ARN) of the container instance on which the * container is running.
*/ inline ContainerDetail& WithContainerInstanceArn(Aws::String&& value) { SetContainerInstanceArn(std::move(value)); return *this;} /** *The Amazon Resource Name (ARN) of the container instance on which the * container is running.
*/ inline ContainerDetail& WithContainerInstanceArn(const char* value) { SetContainerInstanceArn(value); return *this;} /** *The Amazon Resource Name (ARN) of the Amazon ECS task that is associated with
* the container job. Each container attempt receives a task ARN when they reach
* the STARTING status.
The Amazon Resource Name (ARN) of the Amazon ECS task that is associated with
* the container job. Each container attempt receives a task ARN when they reach
* the STARTING status.
The Amazon Resource Name (ARN) of the Amazon ECS task that is associated with
* the container job. Each container attempt receives a task ARN when they reach
* the STARTING status.
The Amazon Resource Name (ARN) of the Amazon ECS task that is associated with
* the container job. Each container attempt receives a task ARN when they reach
* the STARTING status.
The Amazon Resource Name (ARN) of the Amazon ECS task that is associated with
* the container job. Each container attempt receives a task ARN when they reach
* the STARTING status.
The Amazon Resource Name (ARN) of the Amazon ECS task that is associated with
* the container job. Each container attempt receives a task ARN when they reach
* the STARTING status.
The Amazon Resource Name (ARN) of the Amazon ECS task that is associated with
* the container job. Each container attempt receives a task ARN when they reach
* the STARTING status.
The Amazon Resource Name (ARN) of the Amazon ECS task that is associated with
* the container job. Each container attempt receives a task ARN when they reach
* the STARTING status.
The name of the CloudWatch Logs log stream associated with the container. The
* log group for AWS Batch jobs is /aws/batch/job. Each container
* attempt receives a log stream name when they reach the RUNNING
* status.
The name of the CloudWatch Logs log stream associated with the container. The
* log group for AWS Batch jobs is /aws/batch/job. Each container
* attempt receives a log stream name when they reach the RUNNING
* status.
The name of the CloudWatch Logs log stream associated with the container. The
* log group for AWS Batch jobs is /aws/batch/job. Each container
* attempt receives a log stream name when they reach the RUNNING
* status.
The name of the CloudWatch Logs log stream associated with the container. The
* log group for AWS Batch jobs is /aws/batch/job. Each container
* attempt receives a log stream name when they reach the RUNNING
* status.
The name of the CloudWatch Logs log stream associated with the container. The
* log group for AWS Batch jobs is /aws/batch/job. Each container
* attempt receives a log stream name when they reach the RUNNING
* status.
The name of the CloudWatch Logs log stream associated with the container. The
* log group for AWS Batch jobs is /aws/batch/job. Each container
* attempt receives a log stream name when they reach the RUNNING
* status.
The name of the CloudWatch Logs log stream associated with the container. The
* log group for AWS Batch jobs is /aws/batch/job. Each container
* attempt receives a log stream name when they reach the RUNNING
* status.
The name of the CloudWatch Logs log stream associated with the container. The
* log group for AWS Batch jobs is /aws/batch/job. Each container
* attempt receives a log stream name when they reach the RUNNING
* status.
The instance type of the underlying host infrastructure of a multi-node * parallel job.
*/ inline const Aws::String& GetInstanceType() const{ return m_instanceType; } /** *The instance type of the underlying host infrastructure of a multi-node * parallel job.
*/ inline bool InstanceTypeHasBeenSet() const { return m_instanceTypeHasBeenSet; } /** *The instance type of the underlying host infrastructure of a multi-node * parallel job.
*/ inline void SetInstanceType(const Aws::String& value) { m_instanceTypeHasBeenSet = true; m_instanceType = value; } /** *The instance type of the underlying host infrastructure of a multi-node * parallel job.
*/ inline void SetInstanceType(Aws::String&& value) { m_instanceTypeHasBeenSet = true; m_instanceType = std::move(value); } /** *The instance type of the underlying host infrastructure of a multi-node * parallel job.
*/ inline void SetInstanceType(const char* value) { m_instanceTypeHasBeenSet = true; m_instanceType.assign(value); } /** *The instance type of the underlying host infrastructure of a multi-node * parallel job.
*/ inline ContainerDetail& WithInstanceType(const Aws::String& value) { SetInstanceType(value); return *this;} /** *The instance type of the underlying host infrastructure of a multi-node * parallel job.
*/ inline ContainerDetail& WithInstanceType(Aws::String&& value) { SetInstanceType(std::move(value)); return *this;} /** *The instance type of the underlying host infrastructure of a multi-node * parallel job.
*/ inline ContainerDetail& WithInstanceType(const char* value) { SetInstanceType(value); return *this;} /** *The network interfaces associated with the job.
*/ inline const Aws::VectorThe network interfaces associated with the job.
*/ inline bool NetworkInterfacesHasBeenSet() const { return m_networkInterfacesHasBeenSet; } /** *The network interfaces associated with the job.
*/ inline void SetNetworkInterfaces(const Aws::VectorThe network interfaces associated with the job.
*/ inline void SetNetworkInterfaces(Aws::VectorThe network interfaces associated with the job.
*/ inline ContainerDetail& WithNetworkInterfaces(const Aws::VectorThe network interfaces associated with the job.
*/ inline ContainerDetail& WithNetworkInterfaces(Aws::VectorThe network interfaces associated with the job.
*/ inline ContainerDetail& AddNetworkInterfaces(const NetworkInterface& value) { m_networkInterfacesHasBeenSet = true; m_networkInterfaces.push_back(value); return *this; } /** *The network interfaces associated with the job.
*/ inline ContainerDetail& AddNetworkInterfaces(NetworkInterface&& value) { m_networkInterfacesHasBeenSet = true; m_networkInterfaces.push_back(std::move(value)); return *this; } /** *The type and amount of a resource to assign to a container. Currently, the
* only supported resource is GPU.
The type and amount of a resource to assign to a container. Currently, the
* only supported resource is GPU.
The type and amount of a resource to assign to a container. Currently, the
* only supported resource is GPU.
The type and amount of a resource to assign to a container. Currently, the
* only supported resource is GPU.
The type and amount of a resource to assign to a container. Currently, the
* only supported resource is GPU.
The type and amount of a resource to assign to a container. Currently, the
* only supported resource is GPU.
The type and amount of a resource to assign to a container. Currently, the
* only supported resource is GPU.
The type and amount of a resource to assign to a container. Currently, the
* only supported resource is GPU.
Linux-specific modifications that are applied to the container, such as * details for device mappings.
*/ inline const LinuxParameters& GetLinuxParameters() const{ return m_linuxParameters; } /** *Linux-specific modifications that are applied to the container, such as * details for device mappings.
*/ inline bool LinuxParametersHasBeenSet() const { return m_linuxParametersHasBeenSet; } /** *Linux-specific modifications that are applied to the container, such as * details for device mappings.
*/ inline void SetLinuxParameters(const LinuxParameters& value) { m_linuxParametersHasBeenSet = true; m_linuxParameters = value; } /** *Linux-specific modifications that are applied to the container, such as * details for device mappings.
*/ inline void SetLinuxParameters(LinuxParameters&& value) { m_linuxParametersHasBeenSet = true; m_linuxParameters = std::move(value); } /** *Linux-specific modifications that are applied to the container, such as * details for device mappings.
*/ inline ContainerDetail& WithLinuxParameters(const LinuxParameters& value) { SetLinuxParameters(value); return *this;} /** *Linux-specific modifications that are applied to the container, such as * details for device mappings.
*/ inline ContainerDetail& WithLinuxParameters(LinuxParameters&& value) { SetLinuxParameters(std::move(value)); return *this;} private: Aws::String m_image; bool m_imageHasBeenSet; int m_vcpus; bool m_vcpusHasBeenSet; int m_memory; bool m_memoryHasBeenSet; Aws::Vector