From 763386d7187457786ed26fd33ed7d9db8b43e11c Mon Sep 17 00:00:00 2001 From: aws-sdk-cpp-automation Date: Wed, 28 Feb 2024 19:10:46 +0000 Subject: [PATCH] This release increases the range of MaxResults for GetNetworkInsightsAccessScopeAnalysisFindings to 1,000. This release reduces the maximum results returned per query invocation from 500 to 100 for the SearchIndex API. This change has no implications as long as the API is invoked until the nextToken is NULL. This release adds Batch support for configuration of multicontainer jobs in ECS, Fargate, and EKS. This support is available for all types of jobs, including both array jobs and multi-node parallel jobs. This release adds support to override search strategy performed by the Retrieve and RetrieveAndGenerate APIs for Amazon Bedrock Agents AWS WAF now supports configurable time windows for request aggregation with rate-based rules. Customers can now select time windows of 1 minute, 2 minutes or 10 minutes, in addition to the previously supported 5 minutes. This release introduces the new API 'GetApproximateUsageRecords', which retrieves estimated usage records for hourly granularity or resource-level data at daily granularity. --- VERSION | 2 +- .../aws/batch/model/ComputeEnvironmentOrder.h | 2 +- .../include/aws/batch/model/ComputeResource.h | 178 +- .../aws/batch/model/ComputeResourceUpdate.h | 297 +-- .../include/aws/batch/model/ContainerDetail.h | 212 +- .../aws/batch/model/ContainerProperties.h | 162 +- .../include/aws/batch/model/EcsProperties.h | 106 + .../aws/batch/model/EcsPropertiesDetail.h | 90 + .../aws/batch/model/EcsPropertiesOverride.h | 98 + .../include/aws/batch/model/EcsTaskDetails.h | 655 +++++++ .../aws/batch/model/EcsTaskProperties.h | 789 ++++++++ .../batch/model/EksAttemptContainerDetail.h | 16 +- .../aws/batch/model/EksAttemptDetail.h | 44 + .../include/aws/batch/model/EksContainer.h | 36 +- .../aws/batch/model/EksContainerDetail.h | 52 +- .../aws/batch/model/EksContainerOverride.h | 92 +- .../aws/batch/model/EksPodProperties.h | 136 ++ .../aws/batch/model/EksPodPropertiesDetail.h | 88 + .../batch/model/EksPodPropertiesOverride.h | 100 + .../model/FargatePlatformConfiguration.h | 4 +- .../include/aws/batch/model/JobDefinition.h | 209 +- .../include/aws/batch/model/JobDetail.h | 83 +- .../include/aws/batch/model/JobQueueDetail.h | 24 +- .../include/aws/batch/model/JobSummary.h | 28 +- .../aws/batch/model/NetworkConfiguration.h | 2 +- .../include/aws/batch/model/NodeOverrides.h | 9 +- .../aws/batch/model/NodePropertyOverride.h | 104 +- .../aws/batch/model/NodeRangeProperty.h | 122 +- .../model/RegisterJobDefinitionRequest.h | 233 ++- .../aws/batch/model/ResourceRequirement.h | 96 +- .../aws/batch/model/SubmitJobRequest.h | 107 +- .../aws/batch/model/TaskContainerDependency.h | 212 ++ .../aws/batch/model/TaskContainerDetails.h | 1741 +++++++++++++++++ .../aws/batch/model/TaskContainerOverrides.h | 313 +++ .../aws/batch/model/TaskContainerProperties.h | 1580 +++++++++++++++ .../aws/batch/model/TaskPropertiesOverride.h | 90 + .../source/model/EcsProperties.cpp | 67 + .../source/model/EcsPropertiesDetail.cpp | 67 + .../source/model/EcsPropertiesOverride.cpp | 67 + .../source/model/EcsTaskDetails.cpp | 240 +++ .../source/model/EcsTaskProperties.cpp | 210 ++ .../source/model/EksAttemptDetail.cpp | 23 + .../source/model/EksContainerOverride.cpp | 15 + .../source/model/EksPodProperties.cpp | 44 +- .../source/model/EksPodPropertiesDetail.cpp | 44 +- .../source/model/EksPodPropertiesOverride.cpp | 23 + .../source/model/JobDefinition.cpp | 15 + .../source/model/JobDetail.cpp | 15 + .../source/model/NodePropertyOverride.cpp | 42 +- .../source/model/NodeRangeProperty.cpp | 42 +- .../model/RegisterJobDefinitionRequest.cpp | 9 +- .../source/model/SubmitJobRequest.cpp | 9 +- .../source/model/TaskContainerDependency.cpp | 74 + .../source/model/TaskContainerDetails.cpp | 416 ++++ .../source/model/TaskContainerOverrides.cpp | 128 ++ .../source/model/TaskContainerProperties.cpp | 346 ++++ .../source/model/TaskPropertiesOverride.cpp | 67 + ...edgeBaseRetrieveAndGenerateConfiguration.h | 23 + .../KnowledgeBaseVectorSearchConfiguration.h | 36 + .../bedrock-agent-runtime/model/SearchType.h | 31 + ...geBaseRetrieveAndGenerateConfiguration.cpp | 19 +- ...KnowledgeBaseVectorSearchConfiguration.cpp | 20 +- .../source/model/SearchType.cpp | 72 + .../include/aws/ce/CostExplorerClient.h | 26 + .../aws/ce/CostExplorerServiceClientModel.h | 5 + .../aws/ce/model/ApproximationDimension.h | 31 + .../model/GetApproximateUsageRecordsRequest.h | 188 ++ .../model/GetApproximateUsageRecordsResult.h | 154 ++ .../source/CostExplorerClient.cpp | 27 + .../source/model/ApproximationDimension.cpp | 72 + .../GetApproximateUsageRecordsRequest.cpp | 62 + .../GetApproximateUsageRecordsResult.cpp | 65 + .../model/AssociateTargetsWithJobRequest.h | 48 +- .../include/aws/iot/model/CreateJobRequest.h | 48 +- .../aws/iot/model/DeleteJobExecutionRequest.h | 48 +- .../include/aws/iot/model/DeleteJobRequest.h | 48 +- .../include/aws/iot/model/Job.h | 48 +- .../model/ListJobExecutionsForThingRequest.h | 48 +- .../include/aws/iot/model/ListJobsRequest.h | 48 +- .../aws/iot/model/SearchIndexRequest.h | 32 +- .../include/aws/iot/model/UpdateJobRequest.h | 48 +- .../aws/wafv2/model/RateBasedStatement.h | 48 + .../source/model/RateBasedStatement.cpp | 17 + .../include/aws/core/VersionConfig.h | 4 +- .../batch-2016-08-10.normal.json | 519 ++++- ...drock-agent-runtime-2023-07-26.normal.json | 30 +- .../ce-2017-10-25.normal.json | 72 + .../ec2-2016-11-15.normal.json | 7 +- .../iot-2015-05-28.normal.json | 24 +- .../wafv2-2019-07-29.normal.json | 5 + 90 files changed, 11057 insertions(+), 991 deletions(-) create mode 100644 generated/src/aws-cpp-sdk-batch/include/aws/batch/model/EcsProperties.h create mode 100644 generated/src/aws-cpp-sdk-batch/include/aws/batch/model/EcsPropertiesDetail.h create mode 100644 generated/src/aws-cpp-sdk-batch/include/aws/batch/model/EcsPropertiesOverride.h create mode 100644 generated/src/aws-cpp-sdk-batch/include/aws/batch/model/EcsTaskDetails.h create mode 100644 generated/src/aws-cpp-sdk-batch/include/aws/batch/model/EcsTaskProperties.h create mode 100644 generated/src/aws-cpp-sdk-batch/include/aws/batch/model/TaskContainerDependency.h create mode 100644 generated/src/aws-cpp-sdk-batch/include/aws/batch/model/TaskContainerDetails.h create mode 100644 generated/src/aws-cpp-sdk-batch/include/aws/batch/model/TaskContainerOverrides.h create mode 100644 generated/src/aws-cpp-sdk-batch/include/aws/batch/model/TaskContainerProperties.h create mode 100644 generated/src/aws-cpp-sdk-batch/include/aws/batch/model/TaskPropertiesOverride.h create mode 100644 generated/src/aws-cpp-sdk-batch/source/model/EcsProperties.cpp create mode 100644 generated/src/aws-cpp-sdk-batch/source/model/EcsPropertiesDetail.cpp create mode 100644 generated/src/aws-cpp-sdk-batch/source/model/EcsPropertiesOverride.cpp create mode 100644 generated/src/aws-cpp-sdk-batch/source/model/EcsTaskDetails.cpp create mode 100644 generated/src/aws-cpp-sdk-batch/source/model/EcsTaskProperties.cpp create mode 100644 generated/src/aws-cpp-sdk-batch/source/model/TaskContainerDependency.cpp create mode 100644 generated/src/aws-cpp-sdk-batch/source/model/TaskContainerDetails.cpp create mode 100644 generated/src/aws-cpp-sdk-batch/source/model/TaskContainerOverrides.cpp create mode 100644 generated/src/aws-cpp-sdk-batch/source/model/TaskContainerProperties.cpp create mode 100644 generated/src/aws-cpp-sdk-batch/source/model/TaskPropertiesOverride.cpp create mode 100644 generated/src/aws-cpp-sdk-bedrock-agent-runtime/include/aws/bedrock-agent-runtime/model/SearchType.h create mode 100644 generated/src/aws-cpp-sdk-bedrock-agent-runtime/source/model/SearchType.cpp create mode 100644 generated/src/aws-cpp-sdk-ce/include/aws/ce/model/ApproximationDimension.h create mode 100644 generated/src/aws-cpp-sdk-ce/include/aws/ce/model/GetApproximateUsageRecordsRequest.h create mode 100644 generated/src/aws-cpp-sdk-ce/include/aws/ce/model/GetApproximateUsageRecordsResult.h create mode 100644 generated/src/aws-cpp-sdk-ce/source/model/ApproximationDimension.cpp create mode 100644 generated/src/aws-cpp-sdk-ce/source/model/GetApproximateUsageRecordsRequest.cpp create mode 100644 generated/src/aws-cpp-sdk-ce/source/model/GetApproximateUsageRecordsResult.cpp diff --git a/VERSION b/VERSION index 09f72237caf..751d42c14c4 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -1.11.274 \ No newline at end of file +1.11.275 \ No newline at end of file diff --git a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/ComputeEnvironmentOrder.h b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/ComputeEnvironmentOrder.h index 2eb1dc7d744..f671b90c90d 100644 --- a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/ComputeEnvironmentOrder.h +++ b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/ComputeEnvironmentOrder.h @@ -31,7 +31,7 @@ namespace Model * environments must be in the VALID state before you can associate * them with a job queue. All of the compute environments must be either EC2 * (EC2 or SPOT) or Fargate (FARGATE or - * FARGATE_SPOT); EC2 and Fargate compute environments can't be + * FARGATE_SPOT); Amazon EC2 and Fargate compute environments can't be * mixed.

All compute environments that are associated with a job * queue must share the same architecture. Batch doesn't support mixing compute * environment architecture types in a single job queue.

See diff --git a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/ComputeResource.h b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/ComputeResource.h index 8ce2ed01106..e70060e2835 100644 --- a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/ComputeResource.h +++ b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/ComputeResource.h @@ -1137,8 +1137,8 @@ namespace Model /** - *

Key-value pair tags to be applied to EC2 resources that are launched in the - * compute environment. For Batch, these take the form of "String1": + *

Key-value pair tags to be applied to Amazon EC2 resources that are launched + * in the compute environment. For Batch, these take the form of "String1": * "String2", where String1 is the tag key and * String2 is the tag value-for example, { "Name": "Batch * Instance - C4OnDemand" }. This is helpful for recognizing your Batch @@ -1153,8 +1153,8 @@ namespace Model inline const Aws::Map& GetTags() const{ return m_tags; } /** - *

Key-value pair tags to be applied to EC2 resources that are launched in the - * compute environment. For Batch, these take the form of "String1": + *

Key-value pair tags to be applied to Amazon EC2 resources that are launched + * in the compute environment. For Batch, these take the form of "String1": * "String2", where String1 is the tag key and * String2 is the tag value-for example, { "Name": "Batch * Instance - C4OnDemand" }. This is helpful for recognizing your Batch @@ -1169,8 +1169,8 @@ namespace Model inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } /** - *

Key-value pair tags to be applied to EC2 resources that are launched in the - * compute environment. For Batch, these take the form of "String1": + *

Key-value pair tags to be applied to Amazon EC2 resources that are launched + * in the compute environment. For Batch, these take the form of "String1": * "String2", where String1 is the tag key and * String2 is the tag value-for example, { "Name": "Batch * Instance - C4OnDemand" }. This is helpful for recognizing your Batch @@ -1185,8 +1185,8 @@ namespace Model inline void SetTags(const Aws::Map& value) { m_tagsHasBeenSet = true; m_tags = value; } /** - *

Key-value pair tags to be applied to EC2 resources that are launched in the - * compute environment. For Batch, these take the form of "String1": + *

Key-value pair tags to be applied to Amazon EC2 resources that are launched + * in the compute environment. For Batch, these take the form of "String1": * "String2", where String1 is the tag key and * String2 is the tag value-for example, { "Name": "Batch * Instance - C4OnDemand" }. This is helpful for recognizing your Batch @@ -1201,8 +1201,8 @@ namespace Model inline void SetTags(Aws::Map&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); } /** - *

Key-value pair tags to be applied to EC2 resources that are launched in the - * compute environment. For Batch, these take the form of "String1": + *

Key-value pair tags to be applied to Amazon EC2 resources that are launched + * in the compute environment. For Batch, these take the form of "String1": * "String2", where String1 is the tag key and * String2 is the tag value-for example, { "Name": "Batch * Instance - C4OnDemand" }. This is helpful for recognizing your Batch @@ -1217,8 +1217,8 @@ namespace Model inline ComputeResource& WithTags(const Aws::Map& value) { SetTags(value); return *this;} /** - *

Key-value pair tags to be applied to EC2 resources that are launched in the - * compute environment. For Batch, these take the form of "String1": + *

Key-value pair tags to be applied to Amazon EC2 resources that are launched + * in the compute environment. For Batch, these take the form of "String1": * "String2", where String1 is the tag key and * String2 is the tag value-for example, { "Name": "Batch * Instance - C4OnDemand" }. This is helpful for recognizing your Batch @@ -1233,8 +1233,8 @@ namespace Model inline ComputeResource& WithTags(Aws::Map&& value) { SetTags(std::move(value)); return *this;} /** - *

Key-value pair tags to be applied to EC2 resources that are launched in the - * compute environment. For Batch, these take the form of "String1": + *

Key-value pair tags to be applied to Amazon EC2 resources that are launched + * in the compute environment. For Batch, these take the form of "String1": * "String2", where String1 is the tag key and * String2 is the tag value-for example, { "Name": "Batch * Instance - C4OnDemand" }. This is helpful for recognizing your Batch @@ -1249,8 +1249,8 @@ namespace Model inline ComputeResource& AddTags(const Aws::String& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; } /** - *

Key-value pair tags to be applied to EC2 resources that are launched in the - * compute environment. For Batch, these take the form of "String1": + *

Key-value pair tags to be applied to Amazon EC2 resources that are launched + * in the compute environment. For Batch, these take the form of "String1": * "String2", where String1 is the tag key and * String2 is the tag value-for example, { "Name": "Batch * Instance - C4OnDemand" }. This is helpful for recognizing your Batch @@ -1265,8 +1265,8 @@ namespace Model inline ComputeResource& AddTags(Aws::String&& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; } /** - *

Key-value pair tags to be applied to EC2 resources that are launched in the - * compute environment. For Batch, these take the form of "String1": + *

Key-value pair tags to be applied to Amazon EC2 resources that are launched + * in the compute environment. For Batch, these take the form of "String1": * "String2", where String1 is the tag key and * String2 is the tag value-for example, { "Name": "Batch * Instance - C4OnDemand" }. This is helpful for recognizing your Batch @@ -1281,8 +1281,8 @@ namespace Model inline ComputeResource& AddTags(const Aws::String& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; } /** - *

Key-value pair tags to be applied to EC2 resources that are launched in the - * compute environment. For Batch, these take the form of "String1": + *

Key-value pair tags to be applied to Amazon EC2 resources that are launched + * in the compute environment. For Batch, these take the form of "String1": * "String2", where String1 is the tag key and * String2 is the tag value-for example, { "Name": "Batch * Instance - C4OnDemand" }. This is helpful for recognizing your Batch @@ -1297,8 +1297,8 @@ namespace Model inline ComputeResource& AddTags(Aws::String&& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), std::move(value)); return *this; } /** - *

Key-value pair tags to be applied to EC2 resources that are launched in the - * compute environment. For Batch, these take the form of "String1": + *

Key-value pair tags to be applied to Amazon EC2 resources that are launched + * in the compute environment. For Batch, these take the form of "String1": * "String2", where String1 is the tag key and * String2 is the tag value-for example, { "Name": "Batch * Instance - C4OnDemand" }. This is helpful for recognizing your Batch @@ -1313,8 +1313,8 @@ namespace Model inline ComputeResource& AddTags(const char* key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; } /** - *

Key-value pair tags to be applied to EC2 resources that are launched in the - * compute environment. For Batch, these take the form of "String1": + *

Key-value pair tags to be applied to Amazon EC2 resources that are launched + * in the compute environment. For Batch, these take the form of "String1": * "String2", where String1 is the tag key and * String2 is the tag value-for example, { "Name": "Batch * Instance - C4OnDemand" }. This is helpful for recognizing your Batch @@ -1329,8 +1329,8 @@ namespace Model inline ComputeResource& AddTags(Aws::String&& key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; } /** - *

Key-value pair tags to be applied to EC2 resources that are launched in the - * compute environment. For Batch, these take the form of "String1": + *

Key-value pair tags to be applied to Amazon EC2 resources that are launched + * in the compute environment. For Batch, these take the form of "String1": * "String2", where String1 is the tag key and * String2 is the tag value-for example, { "Name": "Batch * Instance - C4OnDemand" }. This is helpful for recognizing your Batch @@ -1666,10 +1666,11 @@ namespace Model /** *

The launch template to use for your compute resources. Any other compute - * resource parameters that you specify in a CreateComputeEnvironment API - * operation override the same parameters in the launch template. You must specify - * either the launch template ID or launch template name in the request, but not - * both. For more information, see CreateComputeEnvironment + * API operation override the same parameters in the launch template. You must + * specify either the launch template ID or launch template name in the request, + * but not both. For more information, see Launch * template support in the Batch User Guide.

This * parameter isn't applicable to jobs that are running on Fargate resources. Don't @@ -1679,10 +1680,11 @@ namespace Model /** *

The launch template to use for your compute resources. Any other compute - * resource parameters that you specify in a CreateComputeEnvironment API - * operation override the same parameters in the launch template. You must specify - * either the launch template ID or launch template name in the request, but not - * both. For more information, see CreateComputeEnvironment + * API operation override the same parameters in the launch template. You must + * specify either the launch template ID or launch template name in the request, + * but not both. For more information, see Launch * template support in the Batch User Guide.

This * parameter isn't applicable to jobs that are running on Fargate resources. Don't @@ -1692,10 +1694,11 @@ namespace Model /** *

The launch template to use for your compute resources. Any other compute - * resource parameters that you specify in a CreateComputeEnvironment API - * operation override the same parameters in the launch template. You must specify - * either the launch template ID or launch template name in the request, but not - * both. For more information, see CreateComputeEnvironment + * API operation override the same parameters in the launch template. You must + * specify either the launch template ID or launch template name in the request, + * but not both. For more information, see Launch * template support in the Batch User Guide.

This * parameter isn't applicable to jobs that are running on Fargate resources. Don't @@ -1705,10 +1708,11 @@ namespace Model /** *

The launch template to use for your compute resources. Any other compute - * resource parameters that you specify in a CreateComputeEnvironment API - * operation override the same parameters in the launch template. You must specify - * either the launch template ID or launch template name in the request, but not - * both. For more information, see CreateComputeEnvironment + * API operation override the same parameters in the launch template. You must + * specify either the launch template ID or launch template name in the request, + * but not both. For more information, see Launch * template support in the Batch User Guide.

This * parameter isn't applicable to jobs that are running on Fargate resources. Don't @@ -1718,10 +1722,11 @@ namespace Model /** *

The launch template to use for your compute resources. Any other compute - * resource parameters that you specify in a CreateComputeEnvironment API - * operation override the same parameters in the launch template. You must specify - * either the launch template ID or launch template name in the request, but not - * both. For more information, see CreateComputeEnvironment + * API operation override the same parameters in the launch template. You must + * specify either the launch template ID or launch template name in the request, + * but not both. For more information, see Launch * template support in the Batch User Guide.

This * parameter isn't applicable to jobs that are running on Fargate resources. Don't @@ -1731,10 +1736,11 @@ namespace Model /** *

The launch template to use for your compute resources. Any other compute - * resource parameters that you specify in a CreateComputeEnvironment API - * operation override the same parameters in the launch template. You must specify - * either the launch template ID or launch template name in the request, but not - * both. For more information, see CreateComputeEnvironment + * API operation override the same parameters in the launch template. You must + * specify either the launch template ID or launch template name in the request, + * but not both. For more information, see Launch * template support in the Batch User Guide.

This * parameter isn't applicable to jobs that are running on Fargate resources. Don't @@ -1745,73 +1751,81 @@ namespace Model /** *

Provides information that's used to select Amazon Machine Images (AMIs) for - * EC2 instances in the compute environment. If Ec2Configuration isn't - * specified, the default is ECS_AL2.

One or two values can be - * provided.

This parameter isn't applicable to jobs that are running - * on Fargate resources. Don't specify it.

+ * Amazon EC2 instances in the compute environment. If + * Ec2Configuration isn't specified, the default is + * ECS_AL2.

One or two values can be provided.

+ *

This parameter isn't applicable to jobs that are running on Fargate + * resources. Don't specify it.

*/ inline const Aws::Vector& GetEc2Configuration() const{ return m_ec2Configuration; } /** *

Provides information that's used to select Amazon Machine Images (AMIs) for - * EC2 instances in the compute environment. If Ec2Configuration isn't - * specified, the default is ECS_AL2.

One or two values can be - * provided.

This parameter isn't applicable to jobs that are running - * on Fargate resources. Don't specify it.

+ * Amazon EC2 instances in the compute environment. If + * Ec2Configuration isn't specified, the default is + * ECS_AL2.

One or two values can be provided.

+ *

This parameter isn't applicable to jobs that are running on Fargate + * resources. Don't specify it.

*/ inline bool Ec2ConfigurationHasBeenSet() const { return m_ec2ConfigurationHasBeenSet; } /** *

Provides information that's used to select Amazon Machine Images (AMIs) for - * EC2 instances in the compute environment. If Ec2Configuration isn't - * specified, the default is ECS_AL2.

One or two values can be - * provided.

This parameter isn't applicable to jobs that are running - * on Fargate resources. Don't specify it.

+ * Amazon EC2 instances in the compute environment. If + * Ec2Configuration isn't specified, the default is + * ECS_AL2.

One or two values can be provided.

+ *

This parameter isn't applicable to jobs that are running on Fargate + * resources. Don't specify it.

*/ inline void SetEc2Configuration(const Aws::Vector& value) { m_ec2ConfigurationHasBeenSet = true; m_ec2Configuration = value; } /** *

Provides information that's used to select Amazon Machine Images (AMIs) for - * EC2 instances in the compute environment. If Ec2Configuration isn't - * specified, the default is ECS_AL2.

One or two values can be - * provided.

This parameter isn't applicable to jobs that are running - * on Fargate resources. Don't specify it.

+ * Amazon EC2 instances in the compute environment. If + * Ec2Configuration isn't specified, the default is + * ECS_AL2.

One or two values can be provided.

+ *

This parameter isn't applicable to jobs that are running on Fargate + * resources. Don't specify it.

*/ inline void SetEc2Configuration(Aws::Vector&& value) { m_ec2ConfigurationHasBeenSet = true; m_ec2Configuration = std::move(value); } /** *

Provides information that's used to select Amazon Machine Images (AMIs) for - * EC2 instances in the compute environment. If Ec2Configuration isn't - * specified, the default is ECS_AL2.

One or two values can be - * provided.

This parameter isn't applicable to jobs that are running - * on Fargate resources. Don't specify it.

+ * Amazon EC2 instances in the compute environment. If + * Ec2Configuration isn't specified, the default is + * ECS_AL2.

One or two values can be provided.

+ *

This parameter isn't applicable to jobs that are running on Fargate + * resources. Don't specify it.

*/ inline ComputeResource& WithEc2Configuration(const Aws::Vector& value) { SetEc2Configuration(value); return *this;} /** *

Provides information that's used to select Amazon Machine Images (AMIs) for - * EC2 instances in the compute environment. If Ec2Configuration isn't - * specified, the default is ECS_AL2.

One or two values can be - * provided.

This parameter isn't applicable to jobs that are running - * on Fargate resources. Don't specify it.

+ * Amazon EC2 instances in the compute environment. If + * Ec2Configuration isn't specified, the default is + * ECS_AL2.

One or two values can be provided.

+ *

This parameter isn't applicable to jobs that are running on Fargate + * resources. Don't specify it.

*/ inline ComputeResource& WithEc2Configuration(Aws::Vector&& value) { SetEc2Configuration(std::move(value)); return *this;} /** *

Provides information that's used to select Amazon Machine Images (AMIs) for - * EC2 instances in the compute environment. If Ec2Configuration isn't - * specified, the default is ECS_AL2.

One or two values can be - * provided.

This parameter isn't applicable to jobs that are running - * on Fargate resources. Don't specify it.

+ * Amazon EC2 instances in the compute environment. If + * Ec2Configuration isn't specified, the default is + * ECS_AL2.

One or two values can be provided.

+ *

This parameter isn't applicable to jobs that are running on Fargate + * resources. Don't specify it.

*/ inline ComputeResource& AddEc2Configuration(const Ec2Configuration& value) { m_ec2ConfigurationHasBeenSet = true; m_ec2Configuration.push_back(value); return *this; } /** *

Provides information that's used to select Amazon Machine Images (AMIs) for - * EC2 instances in the compute environment. If Ec2Configuration isn't - * specified, the default is ECS_AL2.

One or two values can be - * provided.

This parameter isn't applicable to jobs that are running - * on Fargate resources. Don't specify it.

+ * Amazon EC2 instances in the compute environment. If + * Ec2Configuration isn't specified, the default is + * ECS_AL2.

One or two values can be provided.

+ *

This parameter isn't applicable to jobs that are running on Fargate + * resources. Don't specify it.

*/ inline ComputeResource& AddEc2Configuration(Ec2Configuration&& value) { m_ec2ConfigurationHasBeenSet = true; m_ec2Configuration.push_back(std::move(value)); return *this; } diff --git a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/ComputeResourceUpdate.h b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/ComputeResourceUpdate.h index 1de68d2b783..9ca795e7f4e 100644 --- a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/ComputeResourceUpdate.h +++ b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/ComputeResourceUpdate.h @@ -202,8 +202,8 @@ namespace Model *

The VPC subnets where the compute resources are launched. Fargate compute * resources can contain up to 16 subnets. For Fargate compute resources, providing * an empty list will be handled as if this parameter wasn't specified and no - * change is made. For EC2 compute resources, providing an empty list removes the - * VPC subnets from the compute resource. For more information, see VPCs * and subnets in the Amazon VPC User Guide.

When updating a * compute environment, changing the VPC subnets requires an infrastructure update @@ -228,8 +228,8 @@ namespace Model *

The VPC subnets where the compute resources are launched. Fargate compute * resources can contain up to 16 subnets. For Fargate compute resources, providing * an empty list will be handled as if this parameter wasn't specified and no - * change is made. For EC2 compute resources, providing an empty list removes the - * VPC subnets from the compute resource. For more information, see VPCs * and subnets in the Amazon VPC User Guide.

When updating a * compute environment, changing the VPC subnets requires an infrastructure update @@ -254,8 +254,8 @@ namespace Model *

The VPC subnets where the compute resources are launched. Fargate compute * resources can contain up to 16 subnets. For Fargate compute resources, providing * an empty list will be handled as if this parameter wasn't specified and no - * change is made. For EC2 compute resources, providing an empty list removes the - * VPC subnets from the compute resource. For more information, see VPCs * and subnets in the Amazon VPC User Guide.

When updating a * compute environment, changing the VPC subnets requires an infrastructure update @@ -280,8 +280,8 @@ namespace Model *

The VPC subnets where the compute resources are launched. Fargate compute * resources can contain up to 16 subnets. For Fargate compute resources, providing * an empty list will be handled as if this parameter wasn't specified and no - * change is made. For EC2 compute resources, providing an empty list removes the - * VPC subnets from the compute resource. For more information, see VPCs * and subnets in the Amazon VPC User Guide.

When updating a * compute environment, changing the VPC subnets requires an infrastructure update @@ -306,8 +306,8 @@ namespace Model *

The VPC subnets where the compute resources are launched. Fargate compute * resources can contain up to 16 subnets. For Fargate compute resources, providing * an empty list will be handled as if this parameter wasn't specified and no - * change is made. For EC2 compute resources, providing an empty list removes the - * VPC subnets from the compute resource. For more information, see VPCs * and subnets in the Amazon VPC User Guide.

When updating a * compute environment, changing the VPC subnets requires an infrastructure update @@ -332,8 +332,8 @@ namespace Model *

The VPC subnets where the compute resources are launched. Fargate compute * resources can contain up to 16 subnets. For Fargate compute resources, providing * an empty list will be handled as if this parameter wasn't specified and no - * change is made. For EC2 compute resources, providing an empty list removes the - * VPC subnets from the compute resource. For more information, see VPCs * and subnets in the Amazon VPC User Guide.

When updating a * compute environment, changing the VPC subnets requires an infrastructure update @@ -358,8 +358,8 @@ namespace Model *

The VPC subnets where the compute resources are launched. Fargate compute * resources can contain up to 16 subnets. For Fargate compute resources, providing * an empty list will be handled as if this parameter wasn't specified and no - * change is made. For EC2 compute resources, providing an empty list removes the - * VPC subnets from the compute resource. For more information, see VPCs * and subnets in the Amazon VPC User Guide.

When updating a * compute environment, changing the VPC subnets requires an infrastructure update @@ -384,8 +384,8 @@ namespace Model *

The VPC subnets where the compute resources are launched. Fargate compute * resources can contain up to 16 subnets. For Fargate compute resources, providing * an empty list will be handled as if this parameter wasn't specified and no - * change is made. For EC2 compute resources, providing an empty list removes the - * VPC subnets from the compute resource. For more information, see VPCs * and subnets in the Amazon VPC User Guide.

When updating a * compute environment, changing the VPC subnets requires an infrastructure update @@ -410,8 +410,8 @@ namespace Model *

The VPC subnets where the compute resources are launched. Fargate compute * resources can contain up to 16 subnets. For Fargate compute resources, providing * an empty list will be handled as if this parameter wasn't specified and no - * change is made. For EC2 compute resources, providing an empty list removes the - * VPC subnets from the compute resource. For more information, see VPCs * and subnets in the Amazon VPC User Guide.

When updating a * compute environment, changing the VPC subnets requires an infrastructure update @@ -438,10 +438,11 @@ namespace Model * the compute environment. This parameter is required for Fargate compute * resources, where it can contain up to 5 security groups. For Fargate compute * resources, providing an empty list is handled as if this parameter wasn't - * specified and no change is made. For EC2 compute resources, providing an empty - * list removes the security groups from the compute resource.

When updating - * a compute environment, changing the EC2 security groups requires an - * infrastructure update of the compute environment. For more information, see

When + * updating a compute environment, changing the Amazon EC2 security groups requires + * an infrastructure update of the compute environment. For more information, see + * Updating * compute environments in the Batch User Guide.

*/ @@ -452,10 +453,11 @@ namespace Model * the compute environment. This parameter is required for Fargate compute * resources, where it can contain up to 5 security groups. For Fargate compute * resources, providing an empty list is handled as if this parameter wasn't - * specified and no change is made. For EC2 compute resources, providing an empty - * list removes the security groups from the compute resource.

When updating - * a compute environment, changing the EC2 security groups requires an - * infrastructure update of the compute environment. For more information, see

When + * updating a compute environment, changing the Amazon EC2 security groups requires + * an infrastructure update of the compute environment. For more information, see + * Updating * compute environments in the Batch User Guide.

*/ @@ -466,10 +468,11 @@ namespace Model * the compute environment. This parameter is required for Fargate compute * resources, where it can contain up to 5 security groups. For Fargate compute * resources, providing an empty list is handled as if this parameter wasn't - * specified and no change is made. For EC2 compute resources, providing an empty - * list removes the security groups from the compute resource.

When updating - * a compute environment, changing the EC2 security groups requires an - * infrastructure update of the compute environment. For more information, see

When + * updating a compute environment, changing the Amazon EC2 security groups requires + * an infrastructure update of the compute environment. For more information, see + * Updating * compute environments in the Batch User Guide.

*/ @@ -480,10 +483,11 @@ namespace Model * the compute environment. This parameter is required for Fargate compute * resources, where it can contain up to 5 security groups. For Fargate compute * resources, providing an empty list is handled as if this parameter wasn't - * specified and no change is made. For EC2 compute resources, providing an empty - * list removes the security groups from the compute resource.

When updating - * a compute environment, changing the EC2 security groups requires an - * infrastructure update of the compute environment. For more information, see

When + * updating a compute environment, changing the Amazon EC2 security groups requires + * an infrastructure update of the compute environment. For more information, see + * Updating * compute environments in the Batch User Guide.

*/ @@ -494,10 +498,11 @@ namespace Model * the compute environment. This parameter is required for Fargate compute * resources, where it can contain up to 5 security groups. For Fargate compute * resources, providing an empty list is handled as if this parameter wasn't - * specified and no change is made. For EC2 compute resources, providing an empty - * list removes the security groups from the compute resource.

When updating - * a compute environment, changing the EC2 security groups requires an - * infrastructure update of the compute environment. For more information, see

When + * updating a compute environment, changing the Amazon EC2 security groups requires + * an infrastructure update of the compute environment. For more information, see + * Updating * compute environments in the Batch User Guide.

*/ @@ -508,10 +513,11 @@ namespace Model * the compute environment. This parameter is required for Fargate compute * resources, where it can contain up to 5 security groups. For Fargate compute * resources, providing an empty list is handled as if this parameter wasn't - * specified and no change is made. For EC2 compute resources, providing an empty - * list removes the security groups from the compute resource.

When updating - * a compute environment, changing the EC2 security groups requires an - * infrastructure update of the compute environment. For more information, see

When + * updating a compute environment, changing the Amazon EC2 security groups requires + * an infrastructure update of the compute environment. For more information, see + * Updating * compute environments in the Batch User Guide.

*/ @@ -522,10 +528,11 @@ namespace Model * the compute environment. This parameter is required for Fargate compute * resources, where it can contain up to 5 security groups. For Fargate compute * resources, providing an empty list is handled as if this parameter wasn't - * specified and no change is made. For EC2 compute resources, providing an empty - * list removes the security groups from the compute resource.

When updating - * a compute environment, changing the EC2 security groups requires an - * infrastructure update of the compute environment. For more information, see

When + * updating a compute environment, changing the Amazon EC2 security groups requires + * an infrastructure update of the compute environment. For more information, see + * Updating * compute environments in the Batch User Guide.

*/ @@ -536,10 +543,11 @@ namespace Model * the compute environment. This parameter is required for Fargate compute * resources, where it can contain up to 5 security groups. For Fargate compute * resources, providing an empty list is handled as if this parameter wasn't - * specified and no change is made. For EC2 compute resources, providing an empty - * list removes the security groups from the compute resource.

When updating - * a compute environment, changing the EC2 security groups requires an - * infrastructure update of the compute environment. For more information, see

When + * updating a compute environment, changing the Amazon EC2 security groups requires + * an infrastructure update of the compute environment. For more information, see + * Updating * compute environments in the Batch User Guide.

*/ @@ -550,10 +558,11 @@ namespace Model * the compute environment. This parameter is required for Fargate compute * resources, where it can contain up to 5 security groups. For Fargate compute * resources, providing an empty list is handled as if this parameter wasn't - * specified and no change is made. For EC2 compute resources, providing an empty - * list removes the security groups from the compute resource.

When updating - * a compute environment, changing the EC2 security groups requires an - * infrastructure update of the compute environment. For more information, see

When + * updating a compute environment, changing the Amazon EC2 security groups requires + * an infrastructure update of the compute environment. For more information, see + * Updating * compute environments in the Batch User Guide.

*/ @@ -986,7 +995,7 @@ namespace Model *

The Amazon EC2 key pair that's used for instances launched in the compute * environment. You can use this key pair to log in to your instances with SSH. To * remove the Amazon EC2 key pair, set this value to an empty string.

When - * updating a compute environment, changing the EC2 key pair requires an + * updating a compute environment, changing the Amazon EC2 key pair requires an * infrastructure update of the compute environment. For more information, see Updating * compute environments in the Batch User Guide.

This @@ -999,7 +1008,7 @@ namespace Model *

The Amazon EC2 key pair that's used for instances launched in the compute * environment. You can use this key pair to log in to your instances with SSH. To * remove the Amazon EC2 key pair, set this value to an empty string.

When - * updating a compute environment, changing the EC2 key pair requires an + * updating a compute environment, changing the Amazon EC2 key pair requires an * infrastructure update of the compute environment. For more information, see Updating * compute environments in the Batch User Guide.

This @@ -1012,7 +1021,7 @@ namespace Model *

The Amazon EC2 key pair that's used for instances launched in the compute * environment. You can use this key pair to log in to your instances with SSH. To * remove the Amazon EC2 key pair, set this value to an empty string.

When - * updating a compute environment, changing the EC2 key pair requires an + * updating a compute environment, changing the Amazon EC2 key pair requires an * infrastructure update of the compute environment. For more information, see Updating * compute environments in the Batch User Guide.

This @@ -1025,7 +1034,7 @@ namespace Model *

The Amazon EC2 key pair that's used for instances launched in the compute * environment. You can use this key pair to log in to your instances with SSH. To * remove the Amazon EC2 key pair, set this value to an empty string.

When - * updating a compute environment, changing the EC2 key pair requires an + * updating a compute environment, changing the Amazon EC2 key pair requires an * infrastructure update of the compute environment. For more information, see Updating * compute environments in the Batch User Guide.

This @@ -1038,7 +1047,7 @@ namespace Model *

The Amazon EC2 key pair that's used for instances launched in the compute * environment. You can use this key pair to log in to your instances with SSH. To * remove the Amazon EC2 key pair, set this value to an empty string.

When - * updating a compute environment, changing the EC2 key pair requires an + * updating a compute environment, changing the Amazon EC2 key pair requires an * infrastructure update of the compute environment. For more information, see Updating * compute environments in the Batch User Guide.

This @@ -1051,7 +1060,7 @@ namespace Model *

The Amazon EC2 key pair that's used for instances launched in the compute * environment. You can use this key pair to log in to your instances with SSH. To * remove the Amazon EC2 key pair, set this value to an empty string.

When - * updating a compute environment, changing the EC2 key pair requires an + * updating a compute environment, changing the Amazon EC2 key pair requires an * infrastructure update of the compute environment. For more information, see Updating * compute environments in the Batch User Guide.

This @@ -1064,7 +1073,7 @@ namespace Model *

The Amazon EC2 key pair that's used for instances launched in the compute * environment. You can use this key pair to log in to your instances with SSH. To * remove the Amazon EC2 key pair, set this value to an empty string.

When - * updating a compute environment, changing the EC2 key pair requires an + * updating a compute environment, changing the Amazon EC2 key pair requires an * infrastructure update of the compute environment. For more information, see Updating * compute environments in the Batch User Guide.

This @@ -1077,7 +1086,7 @@ namespace Model *

The Amazon EC2 key pair that's used for instances launched in the compute * environment. You can use this key pair to log in to your instances with SSH. To * remove the Amazon EC2 key pair, set this value to an empty string.

When - * updating a compute environment, changing the EC2 key pair requires an + * updating a compute environment, changing the Amazon EC2 key pair requires an * infrastructure update of the compute environment. For more information, see Updating * compute environments in the Batch User Guide.

This @@ -1233,8 +1242,8 @@ namespace Model /** - *

Key-value pair tags to be applied to EC2 resources that are launched in the - * compute environment. For Batch, these take the form of "String1": + *

Key-value pair tags to be applied to Amazon EC2 resources that are launched + * in the compute environment. For Batch, these take the form of "String1": * "String2", where String1 is the tag key and * String2 is the tag value-for example, { "Name": "Batch * Instance - C4OnDemand" }. This is helpful for recognizing your Batch @@ -1250,8 +1259,8 @@ namespace Model inline const Aws::Map& GetTags() const{ return m_tags; } /** - *

Key-value pair tags to be applied to EC2 resources that are launched in the - * compute environment. For Batch, these take the form of "String1": + *

Key-value pair tags to be applied to Amazon EC2 resources that are launched + * in the compute environment. For Batch, these take the form of "String1": * "String2", where String1 is the tag key and * String2 is the tag value-for example, { "Name": "Batch * Instance - C4OnDemand" }. This is helpful for recognizing your Batch @@ -1267,8 +1276,8 @@ namespace Model inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } /** - *

Key-value pair tags to be applied to EC2 resources that are launched in the - * compute environment. For Batch, these take the form of "String1": + *

Key-value pair tags to be applied to Amazon EC2 resources that are launched + * in the compute environment. For Batch, these take the form of "String1": * "String2", where String1 is the tag key and * String2 is the tag value-for example, { "Name": "Batch * Instance - C4OnDemand" }. This is helpful for recognizing your Batch @@ -1284,8 +1293,8 @@ namespace Model inline void SetTags(const Aws::Map& value) { m_tagsHasBeenSet = true; m_tags = value; } /** - *

Key-value pair tags to be applied to EC2 resources that are launched in the - * compute environment. For Batch, these take the form of "String1": + *

Key-value pair tags to be applied to Amazon EC2 resources that are launched + * in the compute environment. For Batch, these take the form of "String1": * "String2", where String1 is the tag key and * String2 is the tag value-for example, { "Name": "Batch * Instance - C4OnDemand" }. This is helpful for recognizing your Batch @@ -1301,8 +1310,8 @@ namespace Model inline void SetTags(Aws::Map&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); } /** - *

Key-value pair tags to be applied to EC2 resources that are launched in the - * compute environment. For Batch, these take the form of "String1": + *

Key-value pair tags to be applied to Amazon EC2 resources that are launched + * in the compute environment. For Batch, these take the form of "String1": * "String2", where String1 is the tag key and * String2 is the tag value-for example, { "Name": "Batch * Instance - C4OnDemand" }. This is helpful for recognizing your Batch @@ -1318,8 +1327,8 @@ namespace Model inline ComputeResourceUpdate& WithTags(const Aws::Map& value) { SetTags(value); return *this;} /** - *

Key-value pair tags to be applied to EC2 resources that are launched in the - * compute environment. For Batch, these take the form of "String1": + *

Key-value pair tags to be applied to Amazon EC2 resources that are launched + * in the compute environment. For Batch, these take the form of "String1": * "String2", where String1 is the tag key and * String2 is the tag value-for example, { "Name": "Batch * Instance - C4OnDemand" }. This is helpful for recognizing your Batch @@ -1335,8 +1344,8 @@ namespace Model inline ComputeResourceUpdate& WithTags(Aws::Map&& value) { SetTags(std::move(value)); return *this;} /** - *

Key-value pair tags to be applied to EC2 resources that are launched in the - * compute environment. For Batch, these take the form of "String1": + *

Key-value pair tags to be applied to Amazon EC2 resources that are launched + * in the compute environment. For Batch, these take the form of "String1": * "String2", where String1 is the tag key and * String2 is the tag value-for example, { "Name": "Batch * Instance - C4OnDemand" }. This is helpful for recognizing your Batch @@ -1352,8 +1361,8 @@ namespace Model inline ComputeResourceUpdate& AddTags(const Aws::String& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; } /** - *

Key-value pair tags to be applied to EC2 resources that are launched in the - * compute environment. For Batch, these take the form of "String1": + *

Key-value pair tags to be applied to Amazon EC2 resources that are launched + * in the compute environment. For Batch, these take the form of "String1": * "String2", where String1 is the tag key and * String2 is the tag value-for example, { "Name": "Batch * Instance - C4OnDemand" }. This is helpful for recognizing your Batch @@ -1369,8 +1378,8 @@ namespace Model inline ComputeResourceUpdate& AddTags(Aws::String&& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; } /** - *

Key-value pair tags to be applied to EC2 resources that are launched in the - * compute environment. For Batch, these take the form of "String1": + *

Key-value pair tags to be applied to Amazon EC2 resources that are launched + * in the compute environment. For Batch, these take the form of "String1": * "String2", where String1 is the tag key and * String2 is the tag value-for example, { "Name": "Batch * Instance - C4OnDemand" }. This is helpful for recognizing your Batch @@ -1386,8 +1395,8 @@ namespace Model inline ComputeResourceUpdate& AddTags(const Aws::String& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; } /** - *

Key-value pair tags to be applied to EC2 resources that are launched in the - * compute environment. For Batch, these take the form of "String1": + *

Key-value pair tags to be applied to Amazon EC2 resources that are launched + * in the compute environment. For Batch, these take the form of "String1": * "String2", where String1 is the tag key and * String2 is the tag value-for example, { "Name": "Batch * Instance - C4OnDemand" }. This is helpful for recognizing your Batch @@ -1403,8 +1412,8 @@ namespace Model inline ComputeResourceUpdate& AddTags(Aws::String&& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), std::move(value)); return *this; } /** - *

Key-value pair tags to be applied to EC2 resources that are launched in the - * compute environment. For Batch, these take the form of "String1": + *

Key-value pair tags to be applied to Amazon EC2 resources that are launched + * in the compute environment. For Batch, these take the form of "String1": * "String2", where String1 is the tag key and * String2 is the tag value-for example, { "Name": "Batch * Instance - C4OnDemand" }. This is helpful for recognizing your Batch @@ -1420,8 +1429,8 @@ namespace Model inline ComputeResourceUpdate& AddTags(const char* key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; } /** - *

Key-value pair tags to be applied to EC2 resources that are launched in the - * compute environment. For Batch, these take the form of "String1": + *

Key-value pair tags to be applied to Amazon EC2 resources that are launched + * in the compute environment. For Batch, these take the form of "String1": * "String2", where String1 is the tag key and * String2 is the tag value-for example, { "Name": "Batch * Instance - C4OnDemand" }. This is helpful for recognizing your Batch @@ -1437,8 +1446,8 @@ namespace Model inline ComputeResourceUpdate& AddTags(Aws::String&& key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; } /** - *

Key-value pair tags to be applied to EC2 resources that are launched in the - * compute environment. For Batch, these take the form of "String1": + *

Key-value pair tags to be applied to Amazon EC2 resources that are launched + * in the compute environment. For Batch, these take the form of "String1": * "String2", where String1 is the tag key and * String2 is the tag value-for example, { "Name": "Batch * Instance - C4OnDemand" }. This is helpful for recognizing your Batch @@ -1792,122 +1801,122 @@ namespace Model /** - *

Provides information used to select Amazon Machine Images (AMIs) for EC2 - * instances in the compute environment. If Ec2Configuration isn't + *

Provides information used to select Amazon Machine Images (AMIs) for Amazon + * EC2 instances in the compute environment. If Ec2Configuration isn't * specified, the default is ECS_AL2.

When updating a compute * environment, changing this setting requires an infrastructure update of the * compute environment. For more information, see Updating - * compute environments in the Batch User Guide. To remove the EC2 - * configuration and any custom AMI ID specified in imageIdOverride, - * set this value to an empty string.

One or two values can be provided.

- *

This parameter isn't applicable to jobs that are running on Fargate - * resources. Don't specify it.

+ * compute environments in the Batch User Guide. To remove the Amazon + * EC2 configuration and any custom AMI ID specified in + * imageIdOverride, set this value to an empty string.

One or + * two values can be provided.

This parameter isn't applicable to + * jobs that are running on Fargate resources. Don't specify it.

*/ inline const Aws::Vector& GetEc2Configuration() const{ return m_ec2Configuration; } /** - *

Provides information used to select Amazon Machine Images (AMIs) for EC2 - * instances in the compute environment. If Ec2Configuration isn't + *

Provides information used to select Amazon Machine Images (AMIs) for Amazon + * EC2 instances in the compute environment. If Ec2Configuration isn't * specified, the default is ECS_AL2.

When updating a compute * environment, changing this setting requires an infrastructure update of the * compute environment. For more information, see Updating - * compute environments in the Batch User Guide. To remove the EC2 - * configuration and any custom AMI ID specified in imageIdOverride, - * set this value to an empty string.

One or two values can be provided.

- *

This parameter isn't applicable to jobs that are running on Fargate - * resources. Don't specify it.

+ * compute environments in the Batch User Guide. To remove the Amazon + * EC2 configuration and any custom AMI ID specified in + * imageIdOverride, set this value to an empty string.

One or + * two values can be provided.

This parameter isn't applicable to + * jobs that are running on Fargate resources. Don't specify it.

*/ inline bool Ec2ConfigurationHasBeenSet() const { return m_ec2ConfigurationHasBeenSet; } /** - *

Provides information used to select Amazon Machine Images (AMIs) for EC2 - * instances in the compute environment. If Ec2Configuration isn't + *

Provides information used to select Amazon Machine Images (AMIs) for Amazon + * EC2 instances in the compute environment. If Ec2Configuration isn't * specified, the default is ECS_AL2.

When updating a compute * environment, changing this setting requires an infrastructure update of the * compute environment. For more information, see Updating - * compute environments in the Batch User Guide. To remove the EC2 - * configuration and any custom AMI ID specified in imageIdOverride, - * set this value to an empty string.

One or two values can be provided.

- *

This parameter isn't applicable to jobs that are running on Fargate - * resources. Don't specify it.

+ * compute environments in the Batch User Guide. To remove the Amazon + * EC2 configuration and any custom AMI ID specified in + * imageIdOverride, set this value to an empty string.

One or + * two values can be provided.

This parameter isn't applicable to + * jobs that are running on Fargate resources. Don't specify it.

*/ inline void SetEc2Configuration(const Aws::Vector& value) { m_ec2ConfigurationHasBeenSet = true; m_ec2Configuration = value; } /** - *

Provides information used to select Amazon Machine Images (AMIs) for EC2 - * instances in the compute environment. If Ec2Configuration isn't + *

Provides information used to select Amazon Machine Images (AMIs) for Amazon + * EC2 instances in the compute environment. If Ec2Configuration isn't * specified, the default is ECS_AL2.

When updating a compute * environment, changing this setting requires an infrastructure update of the * compute environment. For more information, see Updating - * compute environments in the Batch User Guide. To remove the EC2 - * configuration and any custom AMI ID specified in imageIdOverride, - * set this value to an empty string.

One or two values can be provided.

- *

This parameter isn't applicable to jobs that are running on Fargate - * resources. Don't specify it.

+ * compute environments in the Batch User Guide. To remove the Amazon + * EC2 configuration and any custom AMI ID specified in + * imageIdOverride, set this value to an empty string.

One or + * two values can be provided.

This parameter isn't applicable to + * jobs that are running on Fargate resources. Don't specify it.

*/ inline void SetEc2Configuration(Aws::Vector&& value) { m_ec2ConfigurationHasBeenSet = true; m_ec2Configuration = std::move(value); } /** - *

Provides information used to select Amazon Machine Images (AMIs) for EC2 - * instances in the compute environment. If Ec2Configuration isn't + *

Provides information used to select Amazon Machine Images (AMIs) for Amazon + * EC2 instances in the compute environment. If Ec2Configuration isn't * specified, the default is ECS_AL2.

When updating a compute * environment, changing this setting requires an infrastructure update of the * compute environment. For more information, see Updating - * compute environments in the Batch User Guide. To remove the EC2 - * configuration and any custom AMI ID specified in imageIdOverride, - * set this value to an empty string.

One or two values can be provided.

- *

This parameter isn't applicable to jobs that are running on Fargate - * resources. Don't specify it.

+ * compute environments in the Batch User Guide. To remove the Amazon + * EC2 configuration and any custom AMI ID specified in + * imageIdOverride, set this value to an empty string.

One or + * two values can be provided.

This parameter isn't applicable to + * jobs that are running on Fargate resources. Don't specify it.

*/ inline ComputeResourceUpdate& WithEc2Configuration(const Aws::Vector& value) { SetEc2Configuration(value); return *this;} /** - *

Provides information used to select Amazon Machine Images (AMIs) for EC2 - * instances in the compute environment. If Ec2Configuration isn't + *

Provides information used to select Amazon Machine Images (AMIs) for Amazon + * EC2 instances in the compute environment. If Ec2Configuration isn't * specified, the default is ECS_AL2.

When updating a compute * environment, changing this setting requires an infrastructure update of the * compute environment. For more information, see Updating - * compute environments in the Batch User Guide. To remove the EC2 - * configuration and any custom AMI ID specified in imageIdOverride, - * set this value to an empty string.

One or two values can be provided.

- *

This parameter isn't applicable to jobs that are running on Fargate - * resources. Don't specify it.

+ * compute environments in the Batch User Guide. To remove the Amazon + * EC2 configuration and any custom AMI ID specified in + * imageIdOverride, set this value to an empty string.

One or + * two values can be provided.

This parameter isn't applicable to + * jobs that are running on Fargate resources. Don't specify it.

*/ inline ComputeResourceUpdate& WithEc2Configuration(Aws::Vector&& value) { SetEc2Configuration(std::move(value)); return *this;} /** - *

Provides information used to select Amazon Machine Images (AMIs) for EC2 - * instances in the compute environment. If Ec2Configuration isn't + *

Provides information used to select Amazon Machine Images (AMIs) for Amazon + * EC2 instances in the compute environment. If Ec2Configuration isn't * specified, the default is ECS_AL2.

When updating a compute * environment, changing this setting requires an infrastructure update of the * compute environment. For more information, see Updating - * compute environments in the Batch User Guide. To remove the EC2 - * configuration and any custom AMI ID specified in imageIdOverride, - * set this value to an empty string.

One or two values can be provided.

- *

This parameter isn't applicable to jobs that are running on Fargate - * resources. Don't specify it.

+ * compute environments in the Batch User Guide. To remove the Amazon + * EC2 configuration and any custom AMI ID specified in + * imageIdOverride, set this value to an empty string.

One or + * two values can be provided.

This parameter isn't applicable to + * jobs that are running on Fargate resources. Don't specify it.

*/ inline ComputeResourceUpdate& AddEc2Configuration(const Ec2Configuration& value) { m_ec2ConfigurationHasBeenSet = true; m_ec2Configuration.push_back(value); return *this; } /** - *

Provides information used to select Amazon Machine Images (AMIs) for EC2 - * instances in the compute environment. If Ec2Configuration isn't + *

Provides information used to select Amazon Machine Images (AMIs) for Amazon + * EC2 instances in the compute environment. If Ec2Configuration isn't * specified, the default is ECS_AL2.

When updating a compute * environment, changing this setting requires an infrastructure update of the * compute environment. For more information, see Updating - * compute environments in the Batch User Guide. To remove the EC2 - * configuration and any custom AMI ID specified in imageIdOverride, - * set this value to an empty string.

One or two values can be provided.

- *

This parameter isn't applicable to jobs that are running on Fargate - * resources. Don't specify it.

+ * compute environments in the Batch User Guide. To remove the Amazon + * EC2 configuration and any custom AMI ID specified in + * imageIdOverride, set this value to an empty string.

One or + * two values can be provided.

This parameter isn't applicable to + * jobs that are running on Fargate resources. Don't specify it.

*/ inline ComputeResourceUpdate& AddEc2Configuration(Ec2Configuration&& value) { m_ec2ConfigurationHasBeenSet = true; m_ec2Configuration.push_back(std::move(value)); return *this; } diff --git a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/ContainerDetail.h b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/ContainerDetail.h index b66e1026f6e..6cf46c2d236 100644 --- a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/ContainerDetail.h +++ b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/ContainerDetail.h @@ -95,8 +95,8 @@ namespace Model /** - *

The number of vCPUs reserved for the container. For jobs that run on EC2 - * resources, you can specify the vCPU requirement for the job using + *

The number of vCPUs reserved for the container. For jobs that run on Amazon + * EC2 resources, you can specify the vCPU requirement for the job using * resourceRequirements, but you can't specify the vCPU requirements * in both the vcpus and resourceRequirements object. * This parameter maps to CpuShares in the The number of vCPUs reserved for the container. For jobs that run on EC2 - * resources, you can specify the vCPU requirement for the job using + *

The number of vCPUs reserved for the container. For jobs that run on Amazon + * EC2 resources, you can specify the vCPU requirement for the job using * resourceRequirements, but you can't specify the vCPU requirements * in both the vcpus and resourceRequirements object. * This parameter maps to CpuShares in the The number of vCPUs reserved for the container. For jobs that run on EC2 - * resources, you can specify the vCPU requirement for the job using + *

The number of vCPUs reserved for the container. For jobs that run on Amazon + * EC2 resources, you can specify the vCPU requirement for the job using * resourceRequirements, but you can't specify the vCPU requirements * in both the vcpus and resourceRequirements object. * This parameter maps to CpuShares in the The number of vCPUs reserved for the container. For jobs that run on EC2 - * resources, you can specify the vCPU requirement for the job using + *

The number of vCPUs reserved for the container. For jobs that run on Amazon + * EC2 resources, you can specify the vCPU requirement for the job using * resourceRequirements, but you can't specify the vCPU requirements * in both the vcpus and resourceRequirements object. * This parameter maps to CpuShares in the For jobs running on EC2 resources that didn't specify memory requirements - * using resourceRequirements, the number of MiB of memory reserved - * for the job. For other jobs, including all run on Fargate resources, see - * resourceRequirements.

+ *

For jobs running on Amazon EC2 resources that didn't specify memory + * requirements using resourceRequirements, the number of MiB of + * memory reserved for the job. For other jobs, including all run on Fargate + * resources, see resourceRequirements.

*/ inline int GetMemory() const{ return m_memory; } /** - *

For jobs running on EC2 resources that didn't specify memory requirements - * using resourceRequirements, the number of MiB of memory reserved - * for the job. For other jobs, including all run on Fargate resources, see - * resourceRequirements.

+ *

For jobs running on Amazon EC2 resources that didn't specify memory + * requirements using resourceRequirements, the number of MiB of + * memory reserved for the job. For other jobs, including all run on Fargate + * resources, see resourceRequirements.

*/ inline bool MemoryHasBeenSet() const { return m_memoryHasBeenSet; } /** - *

For jobs running on EC2 resources that didn't specify memory requirements - * using resourceRequirements, the number of MiB of memory reserved - * for the job. For other jobs, including all run on Fargate resources, see - * resourceRequirements.

+ *

For jobs running on Amazon EC2 resources that didn't specify memory + * requirements using resourceRequirements, the number of MiB of + * memory reserved for the job. For other jobs, including all run on Fargate + * resources, see resourceRequirements.

*/ inline void SetMemory(int value) { m_memoryHasBeenSet = true; m_memory = value; } /** - *

For jobs running on EC2 resources that didn't specify memory requirements - * using resourceRequirements, the number of MiB of memory reserved - * for the job. For other jobs, including all run on Fargate resources, see - * resourceRequirements.

+ *

For jobs running on Amazon EC2 resources that didn't specify memory + * requirements using resourceRequirements, the number of MiB of + * memory reserved for the job. For other jobs, including all run on Fargate + * resources, see resourceRequirements.

*/ inline ContainerDetail& WithMemory(int value) { SetMemory(value); return *this;} @@ -780,22 +780,22 @@ namespace Model /** - *

The exit code to return upon completion.

+ *

The exit code returned upon completion.

*/ inline int GetExitCode() const{ return m_exitCode; } /** - *

The exit code to return upon completion.

+ *

The exit code returned upon completion.

*/ inline bool ExitCodeHasBeenSet() const { return m_exitCodeHasBeenSet; } /** - *

The exit code to return upon completion.

+ *

The exit code returned upon completion.

*/ inline void SetExitCode(int value) { m_exitCodeHasBeenSet = true; m_exitCode = value; } /** - *

The exit code to return upon completion.

+ *

The exit code returned upon completion.

*/ inline ContainerDetail& WithExitCode(int value) { SetExitCode(value); return *this;} @@ -1229,16 +1229,16 @@ namespace Model * options for different supported log drivers, see
Configure logging * drivers in the Docker documentation.

Batch currently supports - * a subset of the logging drivers available to the Docker daemon (shown in the - * LogConfiguration data type). Additional log drivers might be available in - * future releases of the Amazon ECS container agent.

This parameter - * requires version 1.18 of the Docker Remote API or greater on your container - * instance. To check the Docker Remote API version on your container instance, log - * in to your container instance and run the following command: sudo docker - * version | grep "Server API version"

The Amazon ECS - * container agent running on a container instance must register the logging - * drivers available on that instance with the - * ECS_AVAILABLE_LOGGING_DRIVERS environment variable before + * a subset of the logging drivers available to the Docker daemon (shown in the LogConfiguration + * data type). Additional log drivers might be available in future releases of the + * Amazon ECS container agent.

This parameter requires version 1.18 + * of the Docker Remote API or greater on your container instance. To check the + * Docker Remote API version on your container instance, log in to your container + * instance and run the following command: sudo docker version | grep "Server + * API version"

The Amazon ECS container agent running on a + * container instance must register the logging drivers available on that instance + * with the ECS_AVAILABLE_LOGGING_DRIVERS environment variable before * containers placed on that instance can use these log configuration options. For * more information, see Amazon @@ -1264,16 +1264,16 @@ namespace Model * options for different supported log drivers, see Configure logging * drivers in the Docker documentation.

Batch currently supports - * a subset of the logging drivers available to the Docker daemon (shown in the - * LogConfiguration data type). Additional log drivers might be available in - * future releases of the Amazon ECS container agent.

This parameter - * requires version 1.18 of the Docker Remote API or greater on your container - * instance. To check the Docker Remote API version on your container instance, log - * in to your container instance and run the following command: sudo docker - * version | grep "Server API version"

The Amazon ECS - * container agent running on a container instance must register the logging - * drivers available on that instance with the - * ECS_AVAILABLE_LOGGING_DRIVERS environment variable before + * a subset of the logging drivers available to the Docker daemon (shown in the LogConfiguration + * data type). Additional log drivers might be available in future releases of the + * Amazon ECS container agent.

This parameter requires version 1.18 + * of the Docker Remote API or greater on your container instance. To check the + * Docker Remote API version on your container instance, log in to your container + * instance and run the following command: sudo docker version | grep "Server + * API version"

The Amazon ECS container agent running on a + * container instance must register the logging drivers available on that instance + * with the ECS_AVAILABLE_LOGGING_DRIVERS environment variable before * containers placed on that instance can use these log configuration options. For * more information, see Amazon @@ -1299,16 +1299,16 @@ namespace Model * options for different supported log drivers, see Configure logging * drivers in the Docker documentation.

Batch currently supports - * a subset of the logging drivers available to the Docker daemon (shown in the - * LogConfiguration data type). Additional log drivers might be available in - * future releases of the Amazon ECS container agent.

This parameter - * requires version 1.18 of the Docker Remote API or greater on your container - * instance. To check the Docker Remote API version on your container instance, log - * in to your container instance and run the following command: sudo docker - * version | grep "Server API version"

The Amazon ECS - * container agent running on a container instance must register the logging - * drivers available on that instance with the - * ECS_AVAILABLE_LOGGING_DRIVERS environment variable before + * a subset of the logging drivers available to the Docker daemon (shown in the LogConfiguration + * data type). Additional log drivers might be available in future releases of the + * Amazon ECS container agent.

This parameter requires version 1.18 + * of the Docker Remote API or greater on your container instance. To check the + * Docker Remote API version on your container instance, log in to your container + * instance and run the following command: sudo docker version | grep "Server + * API version"

The Amazon ECS container agent running on a + * container instance must register the logging drivers available on that instance + * with the ECS_AVAILABLE_LOGGING_DRIVERS environment variable before * containers placed on that instance can use these log configuration options. For * more information, see Amazon @@ -1334,16 +1334,16 @@ namespace Model * options for different supported log drivers, see Configure logging * drivers in the Docker documentation.

Batch currently supports - * a subset of the logging drivers available to the Docker daemon (shown in the - * LogConfiguration data type). Additional log drivers might be available in - * future releases of the Amazon ECS container agent.

This parameter - * requires version 1.18 of the Docker Remote API or greater on your container - * instance. To check the Docker Remote API version on your container instance, log - * in to your container instance and run the following command: sudo docker - * version | grep "Server API version"

The Amazon ECS - * container agent running on a container instance must register the logging - * drivers available on that instance with the - * ECS_AVAILABLE_LOGGING_DRIVERS environment variable before + * a subset of the logging drivers available to the Docker daemon (shown in the LogConfiguration + * data type). Additional log drivers might be available in future releases of the + * Amazon ECS container agent.

This parameter requires version 1.18 + * of the Docker Remote API or greater on your container instance. To check the + * Docker Remote API version on your container instance, log in to your container + * instance and run the following command: sudo docker version | grep "Server + * API version"

The Amazon ECS container agent running on a + * container instance must register the logging drivers available on that instance + * with the ECS_AVAILABLE_LOGGING_DRIVERS environment variable before * containers placed on that instance can use these log configuration options. For * more information, see Amazon @@ -1369,16 +1369,16 @@ namespace Model * options for different supported log drivers, see Configure logging * drivers in the Docker documentation.

Batch currently supports - * a subset of the logging drivers available to the Docker daemon (shown in the - * LogConfiguration data type). Additional log drivers might be available in - * future releases of the Amazon ECS container agent.

This parameter - * requires version 1.18 of the Docker Remote API or greater on your container - * instance. To check the Docker Remote API version on your container instance, log - * in to your container instance and run the following command: sudo docker - * version | grep "Server API version"

The Amazon ECS - * container agent running on a container instance must register the logging - * drivers available on that instance with the - * ECS_AVAILABLE_LOGGING_DRIVERS environment variable before + * a subset of the logging drivers available to the Docker daemon (shown in the LogConfiguration + * data type). Additional log drivers might be available in future releases of the + * Amazon ECS container agent.

This parameter requires version 1.18 + * of the Docker Remote API or greater on your container instance. To check the + * Docker Remote API version on your container instance, log in to your container + * instance and run the following command: sudo docker version | grep "Server + * API version"

The Amazon ECS container agent running on a + * container instance must register the logging drivers available on that instance + * with the ECS_AVAILABLE_LOGGING_DRIVERS environment variable before * containers placed on that instance can use these log configuration options. For * more information, see Amazon @@ -1404,16 +1404,16 @@ namespace Model * options for different supported log drivers, see Configure logging * drivers in the Docker documentation.

Batch currently supports - * a subset of the logging drivers available to the Docker daemon (shown in the - * LogConfiguration data type). Additional log drivers might be available in - * future releases of the Amazon ECS container agent.

This parameter - * requires version 1.18 of the Docker Remote API or greater on your container - * instance. To check the Docker Remote API version on your container instance, log - * in to your container instance and run the following command: sudo docker - * version | grep "Server API version"

The Amazon ECS - * container agent running on a container instance must register the logging - * drivers available on that instance with the - * ECS_AVAILABLE_LOGGING_DRIVERS environment variable before + * a subset of the logging drivers available to the Docker daemon (shown in the LogConfiguration + * data type). Additional log drivers might be available in future releases of the + * Amazon ECS container agent.

This parameter requires version 1.18 + * of the Docker Remote API or greater on your container instance. To check the + * Docker Remote API version on your container instance, log in to your container + * instance and run the following command: sudo docker version | grep "Server + * API version"

The Amazon ECS container agent running on a + * container instance must register the logging drivers available on that instance + * with the ECS_AVAILABLE_LOGGING_DRIVERS environment variable before * containers placed on that instance can use these log configuration options. For * more information, see Amazon @@ -1482,74 +1482,86 @@ namespace Model /** *

The network configuration for jobs that are running on Fargate resources. - * Jobs that are running on EC2 resources must not specify this parameter.

+ * Jobs that are running on Amazon EC2 resources must not specify this + * parameter.

*/ inline const NetworkConfiguration& GetNetworkConfiguration() const{ return m_networkConfiguration; } /** *

The network configuration for jobs that are running on Fargate resources. - * Jobs that are running on EC2 resources must not specify this parameter.

+ * Jobs that are running on Amazon EC2 resources must not specify this + * parameter.

*/ inline bool NetworkConfigurationHasBeenSet() const { return m_networkConfigurationHasBeenSet; } /** *

The network configuration for jobs that are running on Fargate resources. - * Jobs that are running on EC2 resources must not specify this parameter.

+ * Jobs that are running on Amazon EC2 resources must not specify this + * parameter.

*/ inline void SetNetworkConfiguration(const NetworkConfiguration& value) { m_networkConfigurationHasBeenSet = true; m_networkConfiguration = value; } /** *

The network configuration for jobs that are running on Fargate resources. - * Jobs that are running on EC2 resources must not specify this parameter.

+ * Jobs that are running on Amazon EC2 resources must not specify this + * parameter.

*/ inline void SetNetworkConfiguration(NetworkConfiguration&& value) { m_networkConfigurationHasBeenSet = true; m_networkConfiguration = std::move(value); } /** *

The network configuration for jobs that are running on Fargate resources. - * Jobs that are running on EC2 resources must not specify this parameter.

+ * Jobs that are running on Amazon EC2 resources must not specify this + * parameter.

*/ inline ContainerDetail& WithNetworkConfiguration(const NetworkConfiguration& value) { SetNetworkConfiguration(value); return *this;} /** *

The network configuration for jobs that are running on Fargate resources. - * Jobs that are running on EC2 resources must not specify this parameter.

+ * Jobs that are running on Amazon EC2 resources must not specify this + * parameter.

*/ inline ContainerDetail& WithNetworkConfiguration(NetworkConfiguration&& value) { SetNetworkConfiguration(std::move(value)); return *this;} /** *

The platform configuration for jobs that are running on Fargate resources. - * Jobs that are running on EC2 resources must not specify this parameter.

+ * Jobs that are running on Amazon EC2 resources must not specify this + * parameter.

*/ inline const FargatePlatformConfiguration& GetFargatePlatformConfiguration() const{ return m_fargatePlatformConfiguration; } /** *

The platform configuration for jobs that are running on Fargate resources. - * Jobs that are running on EC2 resources must not specify this parameter.

+ * Jobs that are running on Amazon EC2 resources must not specify this + * parameter.

*/ inline bool FargatePlatformConfigurationHasBeenSet() const { return m_fargatePlatformConfigurationHasBeenSet; } /** *

The platform configuration for jobs that are running on Fargate resources. - * Jobs that are running on EC2 resources must not specify this parameter.

+ * Jobs that are running on Amazon EC2 resources must not specify this + * parameter.

*/ inline void SetFargatePlatformConfiguration(const FargatePlatformConfiguration& value) { m_fargatePlatformConfigurationHasBeenSet = true; m_fargatePlatformConfiguration = value; } /** *

The platform configuration for jobs that are running on Fargate resources. - * Jobs that are running on EC2 resources must not specify this parameter.

+ * Jobs that are running on Amazon EC2 resources must not specify this + * parameter.

*/ inline void SetFargatePlatformConfiguration(FargatePlatformConfiguration&& value) { m_fargatePlatformConfigurationHasBeenSet = true; m_fargatePlatformConfiguration = std::move(value); } /** *

The platform configuration for jobs that are running on Fargate resources. - * Jobs that are running on EC2 resources must not specify this parameter.

+ * Jobs that are running on Amazon EC2 resources must not specify this + * parameter.

*/ inline ContainerDetail& WithFargatePlatformConfiguration(const FargatePlatformConfiguration& value) { SetFargatePlatformConfiguration(value); return *this;} /** *

The platform configuration for jobs that are running on Fargate resources. - * Jobs that are running on EC2 resources must not specify this parameter.

+ * Jobs that are running on Amazon EC2 resources must not specify this + * parameter.

*/ inline ContainerDetail& WithFargatePlatformConfiguration(FargatePlatformConfiguration&& value) { SetFargatePlatformConfiguration(std::move(value)); return *this;} diff --git a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/ContainerProperties.h b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/ContainerProperties.h index df82aa43c61..d97ed532ce6 100644 --- a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/ContainerProperties.h +++ b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/ContainerProperties.h @@ -1297,16 +1297,17 @@ namespace Model * log drivers, see
Configure logging * drivers in the Docker documentation.

Batch currently supports - * a subset of the logging drivers available to the Docker daemon (shown in the - * LogConfiguration data type).

This parameter requires - * version 1.18 of the Docker Remote API or greater on your container instance. To - * check the Docker Remote API version on your container instance, log in to your - * container instance and run the following command: sudo docker version | - * grep "Server API version"

The Amazon ECS container agent - * running on a container instance must register the logging drivers available on - * that instance with the ECS_AVAILABLE_LOGGING_DRIVERS environment - * variable before containers placed on that instance can use these log - * configuration options. For more information, see LogConfiguration + * data type).

This parameter requires version 1.18 of the Docker + * Remote API or greater on your container instance. To check the Docker Remote API + * version on your container instance, log in to your container instance and run + * the following command: sudo docker version | grep "Server API + * version"

The Amazon ECS container agent running on a + * container instance must register the logging drivers available on that instance + * with the ECS_AVAILABLE_LOGGING_DRIVERS environment variable before + * containers placed on that instance can use these log configuration options. For + * more information, see Amazon * ECS container agent configuration in the Amazon Elastic Container Service * Developer Guide.

@@ -1330,16 +1331,17 @@ namespace Model * log drivers, see Configure logging * drivers in the Docker documentation.

Batch currently supports - * a subset of the logging drivers available to the Docker daemon (shown in the - * LogConfiguration data type).

This parameter requires - * version 1.18 of the Docker Remote API or greater on your container instance. To - * check the Docker Remote API version on your container instance, log in to your - * container instance and run the following command: sudo docker version | - * grep "Server API version"

The Amazon ECS container agent - * running on a container instance must register the logging drivers available on - * that instance with the ECS_AVAILABLE_LOGGING_DRIVERS environment - * variable before containers placed on that instance can use these log - * configuration options. For more information, see LogConfiguration + * data type).

This parameter requires version 1.18 of the Docker + * Remote API or greater on your container instance. To check the Docker Remote API + * version on your container instance, log in to your container instance and run + * the following command: sudo docker version | grep "Server API + * version"

The Amazon ECS container agent running on a + * container instance must register the logging drivers available on that instance + * with the ECS_AVAILABLE_LOGGING_DRIVERS environment variable before + * containers placed on that instance can use these log configuration options. For + * more information, see Amazon * ECS container agent configuration in the Amazon Elastic Container Service * Developer Guide.

@@ -1363,16 +1365,17 @@ namespace Model * log drivers, see Configure logging * drivers in the Docker documentation.

Batch currently supports - * a subset of the logging drivers available to the Docker daemon (shown in the - * LogConfiguration data type).

This parameter requires - * version 1.18 of the Docker Remote API or greater on your container instance. To - * check the Docker Remote API version on your container instance, log in to your - * container instance and run the following command: sudo docker version | - * grep "Server API version"

The Amazon ECS container agent - * running on a container instance must register the logging drivers available on - * that instance with the ECS_AVAILABLE_LOGGING_DRIVERS environment - * variable before containers placed on that instance can use these log - * configuration options. For more information, see LogConfiguration + * data type).

This parameter requires version 1.18 of the Docker + * Remote API or greater on your container instance. To check the Docker Remote API + * version on your container instance, log in to your container instance and run + * the following command: sudo docker version | grep "Server API + * version"

The Amazon ECS container agent running on a + * container instance must register the logging drivers available on that instance + * with the ECS_AVAILABLE_LOGGING_DRIVERS environment variable before + * containers placed on that instance can use these log configuration options. For + * more information, see Amazon * ECS container agent configuration in the Amazon Elastic Container Service * Developer Guide.

@@ -1396,16 +1399,17 @@ namespace Model * log drivers, see Configure logging * drivers in the Docker documentation.

Batch currently supports - * a subset of the logging drivers available to the Docker daemon (shown in the - * LogConfiguration data type).

This parameter requires - * version 1.18 of the Docker Remote API or greater on your container instance. To - * check the Docker Remote API version on your container instance, log in to your - * container instance and run the following command: sudo docker version | - * grep "Server API version"

The Amazon ECS container agent - * running on a container instance must register the logging drivers available on - * that instance with the ECS_AVAILABLE_LOGGING_DRIVERS environment - * variable before containers placed on that instance can use these log - * configuration options. For more information, see LogConfiguration + * data type).

This parameter requires version 1.18 of the Docker + * Remote API or greater on your container instance. To check the Docker Remote API + * version on your container instance, log in to your container instance and run + * the following command: sudo docker version | grep "Server API + * version"

The Amazon ECS container agent running on a + * container instance must register the logging drivers available on that instance + * with the ECS_AVAILABLE_LOGGING_DRIVERS environment variable before + * containers placed on that instance can use these log configuration options. For + * more information, see Amazon * ECS container agent configuration in the Amazon Elastic Container Service * Developer Guide.

@@ -1429,16 +1433,17 @@ namespace Model * log drivers, see Configure logging * drivers in the Docker documentation.

Batch currently supports - * a subset of the logging drivers available to the Docker daemon (shown in the - * LogConfiguration data type).

This parameter requires - * version 1.18 of the Docker Remote API or greater on your container instance. To - * check the Docker Remote API version on your container instance, log in to your - * container instance and run the following command: sudo docker version | - * grep "Server API version"

The Amazon ECS container agent - * running on a container instance must register the logging drivers available on - * that instance with the ECS_AVAILABLE_LOGGING_DRIVERS environment - * variable before containers placed on that instance can use these log - * configuration options. For more information, see LogConfiguration + * data type).

This parameter requires version 1.18 of the Docker + * Remote API or greater on your container instance. To check the Docker Remote API + * version on your container instance, log in to your container instance and run + * the following command: sudo docker version | grep "Server API + * version"

The Amazon ECS container agent running on a + * container instance must register the logging drivers available on that instance + * with the ECS_AVAILABLE_LOGGING_DRIVERS environment variable before + * containers placed on that instance can use these log configuration options. For + * more information, see Amazon * ECS container agent configuration in the Amazon Elastic Container Service * Developer Guide.

@@ -1462,16 +1467,17 @@ namespace Model * log drivers, see Configure logging * drivers in the Docker documentation.

Batch currently supports - * a subset of the logging drivers available to the Docker daemon (shown in the - * LogConfiguration data type).

This parameter requires - * version 1.18 of the Docker Remote API or greater on your container instance. To - * check the Docker Remote API version on your container instance, log in to your - * container instance and run the following command: sudo docker version | - * grep "Server API version"

The Amazon ECS container agent - * running on a container instance must register the logging drivers available on - * that instance with the ECS_AVAILABLE_LOGGING_DRIVERS environment - * variable before containers placed on that instance can use these log - * configuration options. For more information, see LogConfiguration + * data type).

This parameter requires version 1.18 of the Docker + * Remote API or greater on your container instance. To check the Docker Remote API + * version on your container instance, log in to your container instance and run + * the following command: sudo docker version | grep "Server API + * version"

The Amazon ECS container agent running on a + * container instance must register the logging drivers available on that instance + * with the ECS_AVAILABLE_LOGGING_DRIVERS environment variable before + * containers placed on that instance can use these log configuration options. For + * more information, see Amazon * ECS container agent configuration in the Amazon Elastic Container Service * Developer Guide.

@@ -1538,74 +1544,86 @@ namespace Model /** *

The network configuration for jobs that are running on Fargate resources. - * Jobs that are running on EC2 resources must not specify this parameter.

+ * Jobs that are running on Amazon EC2 resources must not specify this + * parameter.

*/ inline const NetworkConfiguration& GetNetworkConfiguration() const{ return m_networkConfiguration; } /** *

The network configuration for jobs that are running on Fargate resources. - * Jobs that are running on EC2 resources must not specify this parameter.

+ * Jobs that are running on Amazon EC2 resources must not specify this + * parameter.

*/ inline bool NetworkConfigurationHasBeenSet() const { return m_networkConfigurationHasBeenSet; } /** *

The network configuration for jobs that are running on Fargate resources. - * Jobs that are running on EC2 resources must not specify this parameter.

+ * Jobs that are running on Amazon EC2 resources must not specify this + * parameter.

*/ inline void SetNetworkConfiguration(const NetworkConfiguration& value) { m_networkConfigurationHasBeenSet = true; m_networkConfiguration = value; } /** *

The network configuration for jobs that are running on Fargate resources. - * Jobs that are running on EC2 resources must not specify this parameter.

+ * Jobs that are running on Amazon EC2 resources must not specify this + * parameter.

*/ inline void SetNetworkConfiguration(NetworkConfiguration&& value) { m_networkConfigurationHasBeenSet = true; m_networkConfiguration = std::move(value); } /** *

The network configuration for jobs that are running on Fargate resources. - * Jobs that are running on EC2 resources must not specify this parameter.

+ * Jobs that are running on Amazon EC2 resources must not specify this + * parameter.

*/ inline ContainerProperties& WithNetworkConfiguration(const NetworkConfiguration& value) { SetNetworkConfiguration(value); return *this;} /** *

The network configuration for jobs that are running on Fargate resources. - * Jobs that are running on EC2 resources must not specify this parameter.

+ * Jobs that are running on Amazon EC2 resources must not specify this + * parameter.

*/ inline ContainerProperties& WithNetworkConfiguration(NetworkConfiguration&& value) { SetNetworkConfiguration(std::move(value)); return *this;} /** *

The platform configuration for jobs that are running on Fargate resources. - * Jobs that are running on EC2 resources must not specify this parameter.

+ * Jobs that are running on Amazon EC2 resources must not specify this + * parameter.

*/ inline const FargatePlatformConfiguration& GetFargatePlatformConfiguration() const{ return m_fargatePlatformConfiguration; } /** *

The platform configuration for jobs that are running on Fargate resources. - * Jobs that are running on EC2 resources must not specify this parameter.

+ * Jobs that are running on Amazon EC2 resources must not specify this + * parameter.

*/ inline bool FargatePlatformConfigurationHasBeenSet() const { return m_fargatePlatformConfigurationHasBeenSet; } /** *

The platform configuration for jobs that are running on Fargate resources. - * Jobs that are running on EC2 resources must not specify this parameter.

+ * Jobs that are running on Amazon EC2 resources must not specify this + * parameter.

*/ inline void SetFargatePlatformConfiguration(const FargatePlatformConfiguration& value) { m_fargatePlatformConfigurationHasBeenSet = true; m_fargatePlatformConfiguration = value; } /** *

The platform configuration for jobs that are running on Fargate resources. - * Jobs that are running on EC2 resources must not specify this parameter.

+ * Jobs that are running on Amazon EC2 resources must not specify this + * parameter.

*/ inline void SetFargatePlatformConfiguration(FargatePlatformConfiguration&& value) { m_fargatePlatformConfigurationHasBeenSet = true; m_fargatePlatformConfiguration = std::move(value); } /** *

The platform configuration for jobs that are running on Fargate resources. - * Jobs that are running on EC2 resources must not specify this parameter.

+ * Jobs that are running on Amazon EC2 resources must not specify this + * parameter.

*/ inline ContainerProperties& WithFargatePlatformConfiguration(const FargatePlatformConfiguration& value) { SetFargatePlatformConfiguration(value); return *this;} /** *

The platform configuration for jobs that are running on Fargate resources. - * Jobs that are running on EC2 resources must not specify this parameter.

+ * Jobs that are running on Amazon EC2 resources must not specify this + * parameter.

*/ inline ContainerProperties& WithFargatePlatformConfiguration(FargatePlatformConfiguration&& value) { SetFargatePlatformConfiguration(std::move(value)); return *this;} diff --git a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/EcsProperties.h b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/EcsProperties.h new file mode 100644 index 00000000000..d60b637c34b --- /dev/null +++ b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/EcsProperties.h @@ -0,0 +1,106 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include +#include +#include + +namespace Aws +{ +namespace Utils +{ +namespace Json +{ + class JsonValue; + class JsonView; +} // namespace Json +} // namespace Utils +namespace Batch +{ +namespace Model +{ + + /** + *

An object that contains the properties for the Amazon ECS resources of a + * job.

See Also:

AWS + * API Reference

+ */ + class EcsProperties + { + public: + AWS_BATCH_API EcsProperties(); + AWS_BATCH_API EcsProperties(Aws::Utils::Json::JsonView jsonValue); + AWS_BATCH_API EcsProperties& operator=(Aws::Utils::Json::JsonView jsonValue); + AWS_BATCH_API Aws::Utils::Json::JsonValue Jsonize() const; + + + /** + *

An object that contains the properties for the Amazon ECS task definition of + * a job.

This object is currently limited to one element.

+ * + */ + inline const Aws::Vector& GetTaskProperties() const{ return m_taskProperties; } + + /** + *

An object that contains the properties for the Amazon ECS task definition of + * a job.

This object is currently limited to one element.

+ * + */ + inline bool TaskPropertiesHasBeenSet() const { return m_taskPropertiesHasBeenSet; } + + /** + *

An object that contains the properties for the Amazon ECS task definition of + * a job.

This object is currently limited to one element.

+ * + */ + inline void SetTaskProperties(const Aws::Vector& value) { m_taskPropertiesHasBeenSet = true; m_taskProperties = value; } + + /** + *

An object that contains the properties for the Amazon ECS task definition of + * a job.

This object is currently limited to one element.

+ * + */ + inline void SetTaskProperties(Aws::Vector&& value) { m_taskPropertiesHasBeenSet = true; m_taskProperties = std::move(value); } + + /** + *

An object that contains the properties for the Amazon ECS task definition of + * a job.

This object is currently limited to one element.

+ * + */ + inline EcsProperties& WithTaskProperties(const Aws::Vector& value) { SetTaskProperties(value); return *this;} + + /** + *

An object that contains the properties for the Amazon ECS task definition of + * a job.

This object is currently limited to one element.

+ * + */ + inline EcsProperties& WithTaskProperties(Aws::Vector&& value) { SetTaskProperties(std::move(value)); return *this;} + + /** + *

An object that contains the properties for the Amazon ECS task definition of + * a job.

This object is currently limited to one element.

+ * + */ + inline EcsProperties& AddTaskProperties(const EcsTaskProperties& value) { m_taskPropertiesHasBeenSet = true; m_taskProperties.push_back(value); return *this; } + + /** + *

An object that contains the properties for the Amazon ECS task definition of + * a job.

This object is currently limited to one element.

+ * + */ + inline EcsProperties& AddTaskProperties(EcsTaskProperties&& value) { m_taskPropertiesHasBeenSet = true; m_taskProperties.push_back(std::move(value)); return *this; } + + private: + + Aws::Vector m_taskProperties; + bool m_taskPropertiesHasBeenSet = false; + }; + +} // namespace Model +} // namespace Batch +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/EcsPropertiesDetail.h b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/EcsPropertiesDetail.h new file mode 100644 index 00000000000..b5296a7466b --- /dev/null +++ b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/EcsPropertiesDetail.h @@ -0,0 +1,90 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include +#include +#include + +namespace Aws +{ +namespace Utils +{ +namespace Json +{ + class JsonValue; + class JsonView; +} // namespace Json +} // namespace Utils +namespace Batch +{ +namespace Model +{ + + /** + *

An object that contains the details for the Amazon ECS resources of a + * job.

See Also:

AWS + * API Reference

+ */ + class EcsPropertiesDetail + { + public: + AWS_BATCH_API EcsPropertiesDetail(); + AWS_BATCH_API EcsPropertiesDetail(Aws::Utils::Json::JsonView jsonValue); + AWS_BATCH_API EcsPropertiesDetail& operator=(Aws::Utils::Json::JsonView jsonValue); + AWS_BATCH_API Aws::Utils::Json::JsonValue Jsonize() const; + + + /** + *

The properties for the Amazon ECS task definition of a job.

+ */ + inline const Aws::Vector& GetTaskProperties() const{ return m_taskProperties; } + + /** + *

The properties for the Amazon ECS task definition of a job.

+ */ + inline bool TaskPropertiesHasBeenSet() const { return m_taskPropertiesHasBeenSet; } + + /** + *

The properties for the Amazon ECS task definition of a job.

+ */ + inline void SetTaskProperties(const Aws::Vector& value) { m_taskPropertiesHasBeenSet = true; m_taskProperties = value; } + + /** + *

The properties for the Amazon ECS task definition of a job.

+ */ + inline void SetTaskProperties(Aws::Vector&& value) { m_taskPropertiesHasBeenSet = true; m_taskProperties = std::move(value); } + + /** + *

The properties for the Amazon ECS task definition of a job.

+ */ + inline EcsPropertiesDetail& WithTaskProperties(const Aws::Vector& value) { SetTaskProperties(value); return *this;} + + /** + *

The properties for the Amazon ECS task definition of a job.

+ */ + inline EcsPropertiesDetail& WithTaskProperties(Aws::Vector&& value) { SetTaskProperties(std::move(value)); return *this;} + + /** + *

The properties for the Amazon ECS task definition of a job.

+ */ + inline EcsPropertiesDetail& AddTaskProperties(const EcsTaskDetails& value) { m_taskPropertiesHasBeenSet = true; m_taskProperties.push_back(value); return *this; } + + /** + *

The properties for the Amazon ECS task definition of a job.

+ */ + inline EcsPropertiesDetail& AddTaskProperties(EcsTaskDetails&& value) { m_taskPropertiesHasBeenSet = true; m_taskProperties.push_back(std::move(value)); return *this; } + + private: + + Aws::Vector m_taskProperties; + bool m_taskPropertiesHasBeenSet = false; + }; + +} // namespace Model +} // namespace Batch +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/EcsPropertiesOverride.h b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/EcsPropertiesOverride.h new file mode 100644 index 00000000000..9bfb2797f70 --- /dev/null +++ b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/EcsPropertiesOverride.h @@ -0,0 +1,98 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include +#include +#include + +namespace Aws +{ +namespace Utils +{ +namespace Json +{ + class JsonValue; + class JsonView; +} // namespace Json +} // namespace Utils +namespace Batch +{ +namespace Model +{ + + /** + *

An object that contains overrides for the Amazon ECS task definition of a + * job.

See Also:

AWS + * API Reference

+ */ + class EcsPropertiesOverride + { + public: + AWS_BATCH_API EcsPropertiesOverride(); + AWS_BATCH_API EcsPropertiesOverride(Aws::Utils::Json::JsonView jsonValue); + AWS_BATCH_API EcsPropertiesOverride& operator=(Aws::Utils::Json::JsonView jsonValue); + AWS_BATCH_API Aws::Utils::Json::JsonValue Jsonize() const; + + + /** + *

The overrides for the Amazon ECS task definition of a job.

This + * object is currently limited to one element.

+ */ + inline const Aws::Vector& GetTaskProperties() const{ return m_taskProperties; } + + /** + *

The overrides for the Amazon ECS task definition of a job.

This + * object is currently limited to one element.

+ */ + inline bool TaskPropertiesHasBeenSet() const { return m_taskPropertiesHasBeenSet; } + + /** + *

The overrides for the Amazon ECS task definition of a job.

This + * object is currently limited to one element.

+ */ + inline void SetTaskProperties(const Aws::Vector& value) { m_taskPropertiesHasBeenSet = true; m_taskProperties = value; } + + /** + *

The overrides for the Amazon ECS task definition of a job.

This + * object is currently limited to one element.

+ */ + inline void SetTaskProperties(Aws::Vector&& value) { m_taskPropertiesHasBeenSet = true; m_taskProperties = std::move(value); } + + /** + *

The overrides for the Amazon ECS task definition of a job.

This + * object is currently limited to one element.

+ */ + inline EcsPropertiesOverride& WithTaskProperties(const Aws::Vector& value) { SetTaskProperties(value); return *this;} + + /** + *

The overrides for the Amazon ECS task definition of a job.

This + * object is currently limited to one element.

+ */ + inline EcsPropertiesOverride& WithTaskProperties(Aws::Vector&& value) { SetTaskProperties(std::move(value)); return *this;} + + /** + *

The overrides for the Amazon ECS task definition of a job.

This + * object is currently limited to one element.

+ */ + inline EcsPropertiesOverride& AddTaskProperties(const TaskPropertiesOverride& value) { m_taskPropertiesHasBeenSet = true; m_taskProperties.push_back(value); return *this; } + + /** + *

The overrides for the Amazon ECS task definition of a job.

This + * object is currently limited to one element.

+ */ + inline EcsPropertiesOverride& AddTaskProperties(TaskPropertiesOverride&& value) { m_taskPropertiesHasBeenSet = true; m_taskProperties.push_back(std::move(value)); return *this; } + + private: + + Aws::Vector m_taskProperties; + bool m_taskPropertiesHasBeenSet = false; + }; + +} // namespace Model +} // namespace Batch +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/EcsTaskDetails.h b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/EcsTaskDetails.h new file mode 100644 index 00000000000..f3f5b4b7d37 --- /dev/null +++ b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/EcsTaskDetails.h @@ -0,0 +1,655 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include +#include +#include +#include +#include +#include +#include +#include + +namespace Aws +{ +namespace Utils +{ +namespace Json +{ + class JsonValue; + class JsonView; +} // namespace Json +} // namespace Utils +namespace Batch +{ +namespace Model +{ + + /** + *

The details of a task definition that describes the container and volume + * definitions of an Amazon ECS task.

See Also:

AWS + * API Reference

+ */ + class EcsTaskDetails + { + public: + AWS_BATCH_API EcsTaskDetails(); + AWS_BATCH_API EcsTaskDetails(Aws::Utils::Json::JsonView jsonValue); + AWS_BATCH_API EcsTaskDetails& operator=(Aws::Utils::Json::JsonView jsonValue); + AWS_BATCH_API Aws::Utils::Json::JsonValue Jsonize() const; + + + /** + *

A list of containers that are included in the taskProperties + * list.

+ */ + inline const Aws::Vector& GetContainers() const{ return m_containers; } + + /** + *

A list of containers that are included in the taskProperties + * list.

+ */ + inline bool ContainersHasBeenSet() const { return m_containersHasBeenSet; } + + /** + *

A list of containers that are included in the taskProperties + * list.

+ */ + inline void SetContainers(const Aws::Vector& value) { m_containersHasBeenSet = true; m_containers = value; } + + /** + *

A list of containers that are included in the taskProperties + * list.

+ */ + inline void SetContainers(Aws::Vector&& value) { m_containersHasBeenSet = true; m_containers = std::move(value); } + + /** + *

A list of containers that are included in the taskProperties + * list.

+ */ + inline EcsTaskDetails& WithContainers(const Aws::Vector& value) { SetContainers(value); return *this;} + + /** + *

A list of containers that are included in the taskProperties + * list.

+ */ + inline EcsTaskDetails& WithContainers(Aws::Vector&& value) { SetContainers(std::move(value)); return *this;} + + /** + *

A list of containers that are included in the taskProperties + * list.

+ */ + inline EcsTaskDetails& AddContainers(const TaskContainerDetails& value) { m_containersHasBeenSet = true; m_containers.push_back(value); return *this; } + + /** + *

A list of containers that are included in the taskProperties + * list.

+ */ + inline EcsTaskDetails& AddContainers(TaskContainerDetails&& value) { m_containersHasBeenSet = true; m_containers.push_back(std::move(value)); return *this; } + + + /** + *

The Amazon Resource Name (ARN) of the container instance that hosts the + * task.

+ */ + inline const Aws::String& GetContainerInstanceArn() const{ return m_containerInstanceArn; } + + /** + *

The Amazon Resource Name (ARN) of the container instance that hosts the + * task.

+ */ + inline bool ContainerInstanceArnHasBeenSet() const { return m_containerInstanceArnHasBeenSet; } + + /** + *

The Amazon Resource Name (ARN) of the container instance that hosts the + * task.

+ */ + inline void SetContainerInstanceArn(const Aws::String& value) { m_containerInstanceArnHasBeenSet = true; m_containerInstanceArn = value; } + + /** + *

The Amazon Resource Name (ARN) of the container instance that hosts the + * task.

+ */ + inline void SetContainerInstanceArn(Aws::String&& value) { m_containerInstanceArnHasBeenSet = true; m_containerInstanceArn = std::move(value); } + + /** + *

The Amazon Resource Name (ARN) of the container instance that hosts the + * task.

+ */ + inline void SetContainerInstanceArn(const char* value) { m_containerInstanceArnHasBeenSet = true; m_containerInstanceArn.assign(value); } + + /** + *

The Amazon Resource Name (ARN) of the container instance that hosts the + * task.

+ */ + inline EcsTaskDetails& WithContainerInstanceArn(const Aws::String& value) { SetContainerInstanceArn(value); return *this;} + + /** + *

The Amazon Resource Name (ARN) of the container instance that hosts the + * task.

+ */ + inline EcsTaskDetails& WithContainerInstanceArn(Aws::String&& value) { SetContainerInstanceArn(std::move(value)); return *this;} + + /** + *

The Amazon Resource Name (ARN) of the container instance that hosts the + * task.

+ */ + inline EcsTaskDetails& WithContainerInstanceArn(const char* value) { SetContainerInstanceArn(value); return *this;} + + + /** + *

The ARN of the Amazon ECS task.

+ */ + inline const Aws::String& GetTaskArn() const{ return m_taskArn; } + + /** + *

The ARN of the Amazon ECS task.

+ */ + inline bool TaskArnHasBeenSet() const { return m_taskArnHasBeenSet; } + + /** + *

The ARN of the Amazon ECS task.

+ */ + inline void SetTaskArn(const Aws::String& value) { m_taskArnHasBeenSet = true; m_taskArn = value; } + + /** + *

The ARN of the Amazon ECS task.

+ */ + inline void SetTaskArn(Aws::String&& value) { m_taskArnHasBeenSet = true; m_taskArn = std::move(value); } + + /** + *

The ARN of the Amazon ECS task.

+ */ + inline void SetTaskArn(const char* value) { m_taskArnHasBeenSet = true; m_taskArn.assign(value); } + + /** + *

The ARN of the Amazon ECS task.

+ */ + inline EcsTaskDetails& WithTaskArn(const Aws::String& value) { SetTaskArn(value); return *this;} + + /** + *

The ARN of the Amazon ECS task.

+ */ + inline EcsTaskDetails& WithTaskArn(Aws::String&& value) { SetTaskArn(std::move(value)); return *this;} + + /** + *

The ARN of the Amazon ECS task.

+ */ + inline EcsTaskDetails& WithTaskArn(const char* value) { SetTaskArn(value); return *this;} + + + /** + *

The amount of ephemeral storage allocated for the task.

+ */ + inline const EphemeralStorage& GetEphemeralStorage() const{ return m_ephemeralStorage; } + + /** + *

The amount of ephemeral storage allocated for the task.

+ */ + inline bool EphemeralStorageHasBeenSet() const { return m_ephemeralStorageHasBeenSet; } + + /** + *

The amount of ephemeral storage allocated for the task.

+ */ + inline void SetEphemeralStorage(const EphemeralStorage& value) { m_ephemeralStorageHasBeenSet = true; m_ephemeralStorage = value; } + + /** + *

The amount of ephemeral storage allocated for the task.

+ */ + inline void SetEphemeralStorage(EphemeralStorage&& value) { m_ephemeralStorageHasBeenSet = true; m_ephemeralStorage = std::move(value); } + + /** + *

The amount of ephemeral storage allocated for the task.

+ */ + inline EcsTaskDetails& WithEphemeralStorage(const EphemeralStorage& value) { SetEphemeralStorage(value); return *this;} + + /** + *

The amount of ephemeral storage allocated for the task.

+ */ + inline EcsTaskDetails& WithEphemeralStorage(EphemeralStorage&& value) { SetEphemeralStorage(std::move(value)); return *this;} + + + /** + *

The Amazon Resource Name (ARN) of the execution role that Batch can assume. + * For more information, see Batch + * execution IAM role in the Batch User Guide.

+ */ + inline const Aws::String& GetExecutionRoleArn() const{ return m_executionRoleArn; } + + /** + *

The Amazon Resource Name (ARN) of the execution role that Batch can assume. + * For more information, see Batch + * execution IAM role in the Batch User Guide.

+ */ + inline bool ExecutionRoleArnHasBeenSet() const { return m_executionRoleArnHasBeenSet; } + + /** + *

The Amazon Resource Name (ARN) of the execution role that Batch can assume. + * For more information, see Batch + * execution IAM role in the Batch User Guide.

+ */ + inline void SetExecutionRoleArn(const Aws::String& value) { m_executionRoleArnHasBeenSet = true; m_executionRoleArn = value; } + + /** + *

The Amazon Resource Name (ARN) of the execution role that Batch can assume. + * For more information, see Batch + * execution IAM role in the Batch User Guide.

+ */ + inline void SetExecutionRoleArn(Aws::String&& value) { m_executionRoleArnHasBeenSet = true; m_executionRoleArn = std::move(value); } + + /** + *

The Amazon Resource Name (ARN) of the execution role that Batch can assume. + * For more information, see Batch + * execution IAM role in the Batch User Guide.

+ */ + inline void SetExecutionRoleArn(const char* value) { m_executionRoleArnHasBeenSet = true; m_executionRoleArn.assign(value); } + + /** + *

The Amazon Resource Name (ARN) of the execution role that Batch can assume. + * For more information, see Batch + * execution IAM role in the Batch User Guide.

+ */ + inline EcsTaskDetails& WithExecutionRoleArn(const Aws::String& value) { SetExecutionRoleArn(value); return *this;} + + /** + *

The Amazon Resource Name (ARN) of the execution role that Batch can assume. + * For more information, see Batch + * execution IAM role in the Batch User Guide.

+ */ + inline EcsTaskDetails& WithExecutionRoleArn(Aws::String&& value) { SetExecutionRoleArn(std::move(value)); return *this;} + + /** + *

The Amazon Resource Name (ARN) of the execution role that Batch can assume. + * For more information, see Batch + * execution IAM role in the Batch User Guide.

+ */ + inline EcsTaskDetails& WithExecutionRoleArn(const char* value) { SetExecutionRoleArn(value); return *this;} + + + /** + *

The Fargate platform version where the jobs are running.

+ */ + inline const Aws::String& GetPlatformVersion() const{ return m_platformVersion; } + + /** + *

The Fargate platform version where the jobs are running.

+ */ + inline bool PlatformVersionHasBeenSet() const { return m_platformVersionHasBeenSet; } + + /** + *

The Fargate platform version where the jobs are running.

+ */ + inline void SetPlatformVersion(const Aws::String& value) { m_platformVersionHasBeenSet = true; m_platformVersion = value; } + + /** + *

The Fargate platform version where the jobs are running.

+ */ + inline void SetPlatformVersion(Aws::String&& value) { m_platformVersionHasBeenSet = true; m_platformVersion = std::move(value); } + + /** + *

The Fargate platform version where the jobs are running.

+ */ + inline void SetPlatformVersion(const char* value) { m_platformVersionHasBeenSet = true; m_platformVersion.assign(value); } + + /** + *

The Fargate platform version where the jobs are running.

+ */ + inline EcsTaskDetails& WithPlatformVersion(const Aws::String& value) { SetPlatformVersion(value); return *this;} + + /** + *

The Fargate platform version where the jobs are running.

+ */ + inline EcsTaskDetails& WithPlatformVersion(Aws::String&& value) { SetPlatformVersion(std::move(value)); return *this;} + + /** + *

The Fargate platform version where the jobs are running.

+ */ + inline EcsTaskDetails& WithPlatformVersion(const char* value) { SetPlatformVersion(value); return *this;} + + + /** + *

The IPC resource namespace to use for the containers in the task.

+ */ + inline const Aws::String& GetIpcMode() const{ return m_ipcMode; } + + /** + *

The IPC resource namespace to use for the containers in the task.

+ */ + inline bool IpcModeHasBeenSet() const { return m_ipcModeHasBeenSet; } + + /** + *

The IPC resource namespace to use for the containers in the task.

+ */ + inline void SetIpcMode(const Aws::String& value) { m_ipcModeHasBeenSet = true; m_ipcMode = value; } + + /** + *

The IPC resource namespace to use for the containers in the task.

+ */ + inline void SetIpcMode(Aws::String&& value) { m_ipcModeHasBeenSet = true; m_ipcMode = std::move(value); } + + /** + *

The IPC resource namespace to use for the containers in the task.

+ */ + inline void SetIpcMode(const char* value) { m_ipcModeHasBeenSet = true; m_ipcMode.assign(value); } + + /** + *

The IPC resource namespace to use for the containers in the task.

+ */ + inline EcsTaskDetails& WithIpcMode(const Aws::String& value) { SetIpcMode(value); return *this;} + + /** + *

The IPC resource namespace to use for the containers in the task.

+ */ + inline EcsTaskDetails& WithIpcMode(Aws::String&& value) { SetIpcMode(std::move(value)); return *this;} + + /** + *

The IPC resource namespace to use for the containers in the task.

+ */ + inline EcsTaskDetails& WithIpcMode(const char* value) { SetIpcMode(value); return *this;} + + + /** + *

The Amazon Resource Name (ARN) of the IAM role that the container can assume + * for Amazon Web Services permissions. For more information, see IAM + * roles for tasks in the Amazon Elastic Container Service Developer + * Guide.

This is object is comparable to ContainerProperties:jobRoleArn.

+ * + */ + inline const Aws::String& GetTaskRoleArn() const{ return m_taskRoleArn; } + + /** + *

The Amazon Resource Name (ARN) of the IAM role that the container can assume + * for Amazon Web Services permissions. For more information, see IAM + * roles for tasks in the Amazon Elastic Container Service Developer + * Guide.

This is object is comparable to ContainerProperties:jobRoleArn.

+ * + */ + inline bool TaskRoleArnHasBeenSet() const { return m_taskRoleArnHasBeenSet; } + + /** + *

The Amazon Resource Name (ARN) of the IAM role that the container can assume + * for Amazon Web Services permissions. For more information, see IAM + * roles for tasks in the Amazon Elastic Container Service Developer + * Guide.

This is object is comparable to ContainerProperties:jobRoleArn.

+ * + */ + inline void SetTaskRoleArn(const Aws::String& value) { m_taskRoleArnHasBeenSet = true; m_taskRoleArn = value; } + + /** + *

The Amazon Resource Name (ARN) of the IAM role that the container can assume + * for Amazon Web Services permissions. For more information, see IAM + * roles for tasks in the Amazon Elastic Container Service Developer + * Guide.

This is object is comparable to ContainerProperties:jobRoleArn.

+ * + */ + inline void SetTaskRoleArn(Aws::String&& value) { m_taskRoleArnHasBeenSet = true; m_taskRoleArn = std::move(value); } + + /** + *

The Amazon Resource Name (ARN) of the IAM role that the container can assume + * for Amazon Web Services permissions. For more information, see IAM + * roles for tasks in the Amazon Elastic Container Service Developer + * Guide.

This is object is comparable to ContainerProperties:jobRoleArn.

+ * + */ + inline void SetTaskRoleArn(const char* value) { m_taskRoleArnHasBeenSet = true; m_taskRoleArn.assign(value); } + + /** + *

The Amazon Resource Name (ARN) of the IAM role that the container can assume + * for Amazon Web Services permissions. For more information, see IAM + * roles for tasks in the Amazon Elastic Container Service Developer + * Guide.

This is object is comparable to ContainerProperties:jobRoleArn.

+ * + */ + inline EcsTaskDetails& WithTaskRoleArn(const Aws::String& value) { SetTaskRoleArn(value); return *this;} + + /** + *

The Amazon Resource Name (ARN) of the IAM role that the container can assume + * for Amazon Web Services permissions. For more information, see IAM + * roles for tasks in the Amazon Elastic Container Service Developer + * Guide.

This is object is comparable to ContainerProperties:jobRoleArn.

+ * + */ + inline EcsTaskDetails& WithTaskRoleArn(Aws::String&& value) { SetTaskRoleArn(std::move(value)); return *this;} + + /** + *

The Amazon Resource Name (ARN) of the IAM role that the container can assume + * for Amazon Web Services permissions. For more information, see IAM + * roles for tasks in the Amazon Elastic Container Service Developer + * Guide.

This is object is comparable to ContainerProperties:jobRoleArn.

+ * + */ + inline EcsTaskDetails& WithTaskRoleArn(const char* value) { SetTaskRoleArn(value); return *this;} + + + /** + *

The process namespace to use for the containers in the task.

+ */ + inline const Aws::String& GetPidMode() const{ return m_pidMode; } + + /** + *

The process namespace to use for the containers in the task.

+ */ + inline bool PidModeHasBeenSet() const { return m_pidModeHasBeenSet; } + + /** + *

The process namespace to use for the containers in the task.

+ */ + inline void SetPidMode(const Aws::String& value) { m_pidModeHasBeenSet = true; m_pidMode = value; } + + /** + *

The process namespace to use for the containers in the task.

+ */ + inline void SetPidMode(Aws::String&& value) { m_pidModeHasBeenSet = true; m_pidMode = std::move(value); } + + /** + *

The process namespace to use for the containers in the task.

+ */ + inline void SetPidMode(const char* value) { m_pidModeHasBeenSet = true; m_pidMode.assign(value); } + + /** + *

The process namespace to use for the containers in the task.

+ */ + inline EcsTaskDetails& WithPidMode(const Aws::String& value) { SetPidMode(value); return *this;} + + /** + *

The process namespace to use for the containers in the task.

+ */ + inline EcsTaskDetails& WithPidMode(Aws::String&& value) { SetPidMode(std::move(value)); return *this;} + + /** + *

The process namespace to use for the containers in the task.

+ */ + inline EcsTaskDetails& WithPidMode(const char* value) { SetPidMode(value); return *this;} + + + /** + *

The network configuration for jobs that are running on Fargate resources. + * Jobs that are running on Amazon EC2 resources must not specify this + * parameter.

+ */ + inline const NetworkConfiguration& GetNetworkConfiguration() const{ return m_networkConfiguration; } + + /** + *

The network configuration for jobs that are running on Fargate resources. + * Jobs that are running on Amazon EC2 resources must not specify this + * parameter.

+ */ + inline bool NetworkConfigurationHasBeenSet() const { return m_networkConfigurationHasBeenSet; } + + /** + *

The network configuration for jobs that are running on Fargate resources. + * Jobs that are running on Amazon EC2 resources must not specify this + * parameter.

+ */ + inline void SetNetworkConfiguration(const NetworkConfiguration& value) { m_networkConfigurationHasBeenSet = true; m_networkConfiguration = value; } + + /** + *

The network configuration for jobs that are running on Fargate resources. + * Jobs that are running on Amazon EC2 resources must not specify this + * parameter.

+ */ + inline void SetNetworkConfiguration(NetworkConfiguration&& value) { m_networkConfigurationHasBeenSet = true; m_networkConfiguration = std::move(value); } + + /** + *

The network configuration for jobs that are running on Fargate resources. + * Jobs that are running on Amazon EC2 resources must not specify this + * parameter.

+ */ + inline EcsTaskDetails& WithNetworkConfiguration(const NetworkConfiguration& value) { SetNetworkConfiguration(value); return *this;} + + /** + *

The network configuration for jobs that are running on Fargate resources. + * Jobs that are running on Amazon EC2 resources must not specify this + * parameter.

+ */ + inline EcsTaskDetails& WithNetworkConfiguration(NetworkConfiguration&& value) { SetNetworkConfiguration(std::move(value)); return *this;} + + + /** + *

An object that represents the compute environment architecture for Batch jobs + * on Fargate.

+ */ + inline const RuntimePlatform& GetRuntimePlatform() const{ return m_runtimePlatform; } + + /** + *

An object that represents the compute environment architecture for Batch jobs + * on Fargate.

+ */ + inline bool RuntimePlatformHasBeenSet() const { return m_runtimePlatformHasBeenSet; } + + /** + *

An object that represents the compute environment architecture for Batch jobs + * on Fargate.

+ */ + inline void SetRuntimePlatform(const RuntimePlatform& value) { m_runtimePlatformHasBeenSet = true; m_runtimePlatform = value; } + + /** + *

An object that represents the compute environment architecture for Batch jobs + * on Fargate.

+ */ + inline void SetRuntimePlatform(RuntimePlatform&& value) { m_runtimePlatformHasBeenSet = true; m_runtimePlatform = std::move(value); } + + /** + *

An object that represents the compute environment architecture for Batch jobs + * on Fargate.

+ */ + inline EcsTaskDetails& WithRuntimePlatform(const RuntimePlatform& value) { SetRuntimePlatform(value); return *this;} + + /** + *

An object that represents the compute environment architecture for Batch jobs + * on Fargate.

+ */ + inline EcsTaskDetails& WithRuntimePlatform(RuntimePlatform&& value) { SetRuntimePlatform(std::move(value)); return *this;} + + + /** + *

A list of data volumes used in a job.

+ */ + inline const Aws::Vector& GetVolumes() const{ return m_volumes; } + + /** + *

A list of data volumes used in a job.

+ */ + inline bool VolumesHasBeenSet() const { return m_volumesHasBeenSet; } + + /** + *

A list of data volumes used in a job.

+ */ + inline void SetVolumes(const Aws::Vector& value) { m_volumesHasBeenSet = true; m_volumes = value; } + + /** + *

A list of data volumes used in a job.

+ */ + inline void SetVolumes(Aws::Vector&& value) { m_volumesHasBeenSet = true; m_volumes = std::move(value); } + + /** + *

A list of data volumes used in a job.

+ */ + inline EcsTaskDetails& WithVolumes(const Aws::Vector& value) { SetVolumes(value); return *this;} + + /** + *

A list of data volumes used in a job.

+ */ + inline EcsTaskDetails& WithVolumes(Aws::Vector&& value) { SetVolumes(std::move(value)); return *this;} + + /** + *

A list of data volumes used in a job.

+ */ + inline EcsTaskDetails& AddVolumes(const Volume& value) { m_volumesHasBeenSet = true; m_volumes.push_back(value); return *this; } + + /** + *

A list of data volumes used in a job.

+ */ + inline EcsTaskDetails& AddVolumes(Volume&& value) { m_volumesHasBeenSet = true; m_volumes.push_back(std::move(value)); return *this; } + + private: + + Aws::Vector m_containers; + bool m_containersHasBeenSet = false; + + Aws::String m_containerInstanceArn; + bool m_containerInstanceArnHasBeenSet = false; + + Aws::String m_taskArn; + bool m_taskArnHasBeenSet = false; + + EphemeralStorage m_ephemeralStorage; + bool m_ephemeralStorageHasBeenSet = false; + + Aws::String m_executionRoleArn; + bool m_executionRoleArnHasBeenSet = false; + + Aws::String m_platformVersion; + bool m_platformVersionHasBeenSet = false; + + Aws::String m_ipcMode; + bool m_ipcModeHasBeenSet = false; + + Aws::String m_taskRoleArn; + bool m_taskRoleArnHasBeenSet = false; + + Aws::String m_pidMode; + bool m_pidModeHasBeenSet = false; + + NetworkConfiguration m_networkConfiguration; + bool m_networkConfigurationHasBeenSet = false; + + RuntimePlatform m_runtimePlatform; + bool m_runtimePlatformHasBeenSet = false; + + Aws::Vector m_volumes; + bool m_volumesHasBeenSet = false; + }; + +} // namespace Model +} // namespace Batch +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/EcsTaskProperties.h b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/EcsTaskProperties.h new file mode 100644 index 00000000000..7eb6dee22d5 --- /dev/null +++ b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/EcsTaskProperties.h @@ -0,0 +1,789 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include +#include +#include +#include +#include +#include +#include +#include + +namespace Aws +{ +namespace Utils +{ +namespace Json +{ + class JsonValue; + class JsonView; +} // namespace Json +} // namespace Utils +namespace Batch +{ +namespace Model +{ + + /** + *

The properties for a task definition that describes the container and volume + * definitions of an Amazon ECS task. You can specify which Docker images to use, + * the required resources, and other configurations related to launching the task + * definition through an Amazon ECS service or task.

See Also:

AWS + * API Reference

+ */ + class EcsTaskProperties + { + public: + AWS_BATCH_API EcsTaskProperties(); + AWS_BATCH_API EcsTaskProperties(Aws::Utils::Json::JsonView jsonValue); + AWS_BATCH_API EcsTaskProperties& operator=(Aws::Utils::Json::JsonView jsonValue); + AWS_BATCH_API Aws::Utils::Json::JsonValue Jsonize() const; + + + /** + *

This object is a list of containers.

+ */ + inline const Aws::Vector& GetContainers() const{ return m_containers; } + + /** + *

This object is a list of containers.

+ */ + inline bool ContainersHasBeenSet() const { return m_containersHasBeenSet; } + + /** + *

This object is a list of containers.

+ */ + inline void SetContainers(const Aws::Vector& value) { m_containersHasBeenSet = true; m_containers = value; } + + /** + *

This object is a list of containers.

+ */ + inline void SetContainers(Aws::Vector&& value) { m_containersHasBeenSet = true; m_containers = std::move(value); } + + /** + *

This object is a list of containers.

+ */ + inline EcsTaskProperties& WithContainers(const Aws::Vector& value) { SetContainers(value); return *this;} + + /** + *

This object is a list of containers.

+ */ + inline EcsTaskProperties& WithContainers(Aws::Vector&& value) { SetContainers(std::move(value)); return *this;} + + /** + *

This object is a list of containers.

+ */ + inline EcsTaskProperties& AddContainers(const TaskContainerProperties& value) { m_containersHasBeenSet = true; m_containers.push_back(value); return *this; } + + /** + *

This object is a list of containers.

+ */ + inline EcsTaskProperties& AddContainers(TaskContainerProperties&& value) { m_containersHasBeenSet = true; m_containers.push_back(std::move(value)); return *this; } + + + /** + *

The amount of ephemeral storage to allocate for the task. This parameter is + * used to expand the total amount of ephemeral storage available, beyond the + * default amount, for tasks hosted on Fargate.

+ */ + inline const EphemeralStorage& GetEphemeralStorage() const{ return m_ephemeralStorage; } + + /** + *

The amount of ephemeral storage to allocate for the task. This parameter is + * used to expand the total amount of ephemeral storage available, beyond the + * default amount, for tasks hosted on Fargate.

+ */ + inline bool EphemeralStorageHasBeenSet() const { return m_ephemeralStorageHasBeenSet; } + + /** + *

The amount of ephemeral storage to allocate for the task. This parameter is + * used to expand the total amount of ephemeral storage available, beyond the + * default amount, for tasks hosted on Fargate.

+ */ + inline void SetEphemeralStorage(const EphemeralStorage& value) { m_ephemeralStorageHasBeenSet = true; m_ephemeralStorage = value; } + + /** + *

The amount of ephemeral storage to allocate for the task. This parameter is + * used to expand the total amount of ephemeral storage available, beyond the + * default amount, for tasks hosted on Fargate.

+ */ + inline void SetEphemeralStorage(EphemeralStorage&& value) { m_ephemeralStorageHasBeenSet = true; m_ephemeralStorage = std::move(value); } + + /** + *

The amount of ephemeral storage to allocate for the task. This parameter is + * used to expand the total amount of ephemeral storage available, beyond the + * default amount, for tasks hosted on Fargate.

+ */ + inline EcsTaskProperties& WithEphemeralStorage(const EphemeralStorage& value) { SetEphemeralStorage(value); return *this;} + + /** + *

The amount of ephemeral storage to allocate for the task. This parameter is + * used to expand the total amount of ephemeral storage available, beyond the + * default amount, for tasks hosted on Fargate.

+ */ + inline EcsTaskProperties& WithEphemeralStorage(EphemeralStorage&& value) { SetEphemeralStorage(std::move(value)); return *this;} + + + /** + *

The Amazon Resource Name (ARN) of the execution role that Batch can assume. + * For jobs that run on Fargate resources, you must provide an execution role. For + * more information, see Batch + * execution IAM role in the Batch User Guide.

+ */ + inline const Aws::String& GetExecutionRoleArn() const{ return m_executionRoleArn; } + + /** + *

The Amazon Resource Name (ARN) of the execution role that Batch can assume. + * For jobs that run on Fargate resources, you must provide an execution role. For + * more information, see Batch + * execution IAM role in the Batch User Guide.

+ */ + inline bool ExecutionRoleArnHasBeenSet() const { return m_executionRoleArnHasBeenSet; } + + /** + *

The Amazon Resource Name (ARN) of the execution role that Batch can assume. + * For jobs that run on Fargate resources, you must provide an execution role. For + * more information, see Batch + * execution IAM role in the Batch User Guide.

+ */ + inline void SetExecutionRoleArn(const Aws::String& value) { m_executionRoleArnHasBeenSet = true; m_executionRoleArn = value; } + + /** + *

The Amazon Resource Name (ARN) of the execution role that Batch can assume. + * For jobs that run on Fargate resources, you must provide an execution role. For + * more information, see Batch + * execution IAM role in the Batch User Guide.

+ */ + inline void SetExecutionRoleArn(Aws::String&& value) { m_executionRoleArnHasBeenSet = true; m_executionRoleArn = std::move(value); } + + /** + *

The Amazon Resource Name (ARN) of the execution role that Batch can assume. + * For jobs that run on Fargate resources, you must provide an execution role. For + * more information, see Batch + * execution IAM role in the Batch User Guide.

+ */ + inline void SetExecutionRoleArn(const char* value) { m_executionRoleArnHasBeenSet = true; m_executionRoleArn.assign(value); } + + /** + *

The Amazon Resource Name (ARN) of the execution role that Batch can assume. + * For jobs that run on Fargate resources, you must provide an execution role. For + * more information, see Batch + * execution IAM role in the Batch User Guide.

+ */ + inline EcsTaskProperties& WithExecutionRoleArn(const Aws::String& value) { SetExecutionRoleArn(value); return *this;} + + /** + *

The Amazon Resource Name (ARN) of the execution role that Batch can assume. + * For jobs that run on Fargate resources, you must provide an execution role. For + * more information, see Batch + * execution IAM role in the Batch User Guide.

+ */ + inline EcsTaskProperties& WithExecutionRoleArn(Aws::String&& value) { SetExecutionRoleArn(std::move(value)); return *this;} + + /** + *

The Amazon Resource Name (ARN) of the execution role that Batch can assume. + * For jobs that run on Fargate resources, you must provide an execution role. For + * more information, see Batch + * execution IAM role in the Batch User Guide.

+ */ + inline EcsTaskProperties& WithExecutionRoleArn(const char* value) { SetExecutionRoleArn(value); return *this;} + + + /** + *

The Fargate platform version where the jobs are running. A platform version + * is specified only for jobs that are running on Fargate resources. If one isn't + * specified, the LATEST platform version is used by default. This + * uses a recent, approved version of the Fargate platform for compute resources. + * For more information, see Fargate + * platform versions in the Amazon Elastic Container Service Developer + * Guide.

+ */ + inline const Aws::String& GetPlatformVersion() const{ return m_platformVersion; } + + /** + *

The Fargate platform version where the jobs are running. A platform version + * is specified only for jobs that are running on Fargate resources. If one isn't + * specified, the LATEST platform version is used by default. This + * uses a recent, approved version of the Fargate platform for compute resources. + * For more information, see Fargate + * platform versions in the Amazon Elastic Container Service Developer + * Guide.

+ */ + inline bool PlatformVersionHasBeenSet() const { return m_platformVersionHasBeenSet; } + + /** + *

The Fargate platform version where the jobs are running. A platform version + * is specified only for jobs that are running on Fargate resources. If one isn't + * specified, the LATEST platform version is used by default. This + * uses a recent, approved version of the Fargate platform for compute resources. + * For more information, see Fargate + * platform versions in the Amazon Elastic Container Service Developer + * Guide.

+ */ + inline void SetPlatformVersion(const Aws::String& value) { m_platformVersionHasBeenSet = true; m_platformVersion = value; } + + /** + *

The Fargate platform version where the jobs are running. A platform version + * is specified only for jobs that are running on Fargate resources. If one isn't + * specified, the LATEST platform version is used by default. This + * uses a recent, approved version of the Fargate platform for compute resources. + * For more information, see Fargate + * platform versions in the Amazon Elastic Container Service Developer + * Guide.

+ */ + inline void SetPlatformVersion(Aws::String&& value) { m_platformVersionHasBeenSet = true; m_platformVersion = std::move(value); } + + /** + *

The Fargate platform version where the jobs are running. A platform version + * is specified only for jobs that are running on Fargate resources. If one isn't + * specified, the LATEST platform version is used by default. This + * uses a recent, approved version of the Fargate platform for compute resources. + * For more information, see Fargate + * platform versions in the Amazon Elastic Container Service Developer + * Guide.

+ */ + inline void SetPlatformVersion(const char* value) { m_platformVersionHasBeenSet = true; m_platformVersion.assign(value); } + + /** + *

The Fargate platform version where the jobs are running. A platform version + * is specified only for jobs that are running on Fargate resources. If one isn't + * specified, the LATEST platform version is used by default. This + * uses a recent, approved version of the Fargate platform for compute resources. + * For more information, see Fargate + * platform versions in the Amazon Elastic Container Service Developer + * Guide.

+ */ + inline EcsTaskProperties& WithPlatformVersion(const Aws::String& value) { SetPlatformVersion(value); return *this;} + + /** + *

The Fargate platform version where the jobs are running. A platform version + * is specified only for jobs that are running on Fargate resources. If one isn't + * specified, the LATEST platform version is used by default. This + * uses a recent, approved version of the Fargate platform for compute resources. + * For more information, see Fargate + * platform versions in the Amazon Elastic Container Service Developer + * Guide.

+ */ + inline EcsTaskProperties& WithPlatformVersion(Aws::String&& value) { SetPlatformVersion(std::move(value)); return *this;} + + /** + *

The Fargate platform version where the jobs are running. A platform version + * is specified only for jobs that are running on Fargate resources. If one isn't + * specified, the LATEST platform version is used by default. This + * uses a recent, approved version of the Fargate platform for compute resources. + * For more information, see Fargate + * platform versions in the Amazon Elastic Container Service Developer + * Guide.

+ */ + inline EcsTaskProperties& WithPlatformVersion(const char* value) { SetPlatformVersion(value); return *this;} + + + /** + *

The IPC resource namespace to use for the containers in the task. The valid + * values are host, task, or none.

If + * host is specified, all containers within the tasks that specified + * the host IPC mode on the same container instance share the same IPC + * resources with the host Amazon EC2 instance.

If task is + * specified, all containers within the specified task share the same + * IPC resources.

If none is specified, the IPC resources + * within the containers of a task are private, and are not shared with other + * containers in a task or on the container instance.

If no value is + * specified, then the IPC resource namespace sharing depends on the Docker daemon + * setting on the container instance. For more information, see IPC + * settings in the Docker run reference.

+ */ + inline const Aws::String& GetIpcMode() const{ return m_ipcMode; } + + /** + *

The IPC resource namespace to use for the containers in the task. The valid + * values are host, task, or none.

If + * host is specified, all containers within the tasks that specified + * the host IPC mode on the same container instance share the same IPC + * resources with the host Amazon EC2 instance.

If task is + * specified, all containers within the specified task share the same + * IPC resources.

If none is specified, the IPC resources + * within the containers of a task are private, and are not shared with other + * containers in a task or on the container instance.

If no value is + * specified, then the IPC resource namespace sharing depends on the Docker daemon + * setting on the container instance. For more information, see IPC + * settings in the Docker run reference.

+ */ + inline bool IpcModeHasBeenSet() const { return m_ipcModeHasBeenSet; } + + /** + *

The IPC resource namespace to use for the containers in the task. The valid + * values are host, task, or none.

If + * host is specified, all containers within the tasks that specified + * the host IPC mode on the same container instance share the same IPC + * resources with the host Amazon EC2 instance.

If task is + * specified, all containers within the specified task share the same + * IPC resources.

If none is specified, the IPC resources + * within the containers of a task are private, and are not shared with other + * containers in a task or on the container instance.

If no value is + * specified, then the IPC resource namespace sharing depends on the Docker daemon + * setting on the container instance. For more information, see IPC + * settings in the Docker run reference.

+ */ + inline void SetIpcMode(const Aws::String& value) { m_ipcModeHasBeenSet = true; m_ipcMode = value; } + + /** + *

The IPC resource namespace to use for the containers in the task. The valid + * values are host, task, or none.

If + * host is specified, all containers within the tasks that specified + * the host IPC mode on the same container instance share the same IPC + * resources with the host Amazon EC2 instance.

If task is + * specified, all containers within the specified task share the same + * IPC resources.

If none is specified, the IPC resources + * within the containers of a task are private, and are not shared with other + * containers in a task or on the container instance.

If no value is + * specified, then the IPC resource namespace sharing depends on the Docker daemon + * setting on the container instance. For more information, see IPC + * settings in the Docker run reference.

+ */ + inline void SetIpcMode(Aws::String&& value) { m_ipcModeHasBeenSet = true; m_ipcMode = std::move(value); } + + /** + *

The IPC resource namespace to use for the containers in the task. The valid + * values are host, task, or none.

If + * host is specified, all containers within the tasks that specified + * the host IPC mode on the same container instance share the same IPC + * resources with the host Amazon EC2 instance.

If task is + * specified, all containers within the specified task share the same + * IPC resources.

If none is specified, the IPC resources + * within the containers of a task are private, and are not shared with other + * containers in a task or on the container instance.

If no value is + * specified, then the IPC resource namespace sharing depends on the Docker daemon + * setting on the container instance. For more information, see IPC + * settings in the Docker run reference.

+ */ + inline void SetIpcMode(const char* value) { m_ipcModeHasBeenSet = true; m_ipcMode.assign(value); } + + /** + *

The IPC resource namespace to use for the containers in the task. The valid + * values are host, task, or none.

If + * host is specified, all containers within the tasks that specified + * the host IPC mode on the same container instance share the same IPC + * resources with the host Amazon EC2 instance.

If task is + * specified, all containers within the specified task share the same + * IPC resources.

If none is specified, the IPC resources + * within the containers of a task are private, and are not shared with other + * containers in a task or on the container instance.

If no value is + * specified, then the IPC resource namespace sharing depends on the Docker daemon + * setting on the container instance. For more information, see IPC + * settings in the Docker run reference.

+ */ + inline EcsTaskProperties& WithIpcMode(const Aws::String& value) { SetIpcMode(value); return *this;} + + /** + *

The IPC resource namespace to use for the containers in the task. The valid + * values are host, task, or none.

If + * host is specified, all containers within the tasks that specified + * the host IPC mode on the same container instance share the same IPC + * resources with the host Amazon EC2 instance.

If task is + * specified, all containers within the specified task share the same + * IPC resources.

If none is specified, the IPC resources + * within the containers of a task are private, and are not shared with other + * containers in a task or on the container instance.

If no value is + * specified, then the IPC resource namespace sharing depends on the Docker daemon + * setting on the container instance. For more information, see IPC + * settings in the Docker run reference.

+ */ + inline EcsTaskProperties& WithIpcMode(Aws::String&& value) { SetIpcMode(std::move(value)); return *this;} + + /** + *

The IPC resource namespace to use for the containers in the task. The valid + * values are host, task, or none.

If + * host is specified, all containers within the tasks that specified + * the host IPC mode on the same container instance share the same IPC + * resources with the host Amazon EC2 instance.

If task is + * specified, all containers within the specified task share the same + * IPC resources.

If none is specified, the IPC resources + * within the containers of a task are private, and are not shared with other + * containers in a task or on the container instance.

If no value is + * specified, then the IPC resource namespace sharing depends on the Docker daemon + * setting on the container instance. For more information, see IPC + * settings in the Docker run reference.

+ */ + inline EcsTaskProperties& WithIpcMode(const char* value) { SetIpcMode(value); return *this;} + + + /** + *

The Amazon Resource Name (ARN) that's associated with the Amazon ECS + * task.

This is object is comparable to ContainerProperties:jobRoleArn.

+ * + */ + inline const Aws::String& GetTaskRoleArn() const{ return m_taskRoleArn; } + + /** + *

The Amazon Resource Name (ARN) that's associated with the Amazon ECS + * task.

This is object is comparable to ContainerProperties:jobRoleArn.

+ * + */ + inline bool TaskRoleArnHasBeenSet() const { return m_taskRoleArnHasBeenSet; } + + /** + *

The Amazon Resource Name (ARN) that's associated with the Amazon ECS + * task.

This is object is comparable to ContainerProperties:jobRoleArn.

+ * + */ + inline void SetTaskRoleArn(const Aws::String& value) { m_taskRoleArnHasBeenSet = true; m_taskRoleArn = value; } + + /** + *

The Amazon Resource Name (ARN) that's associated with the Amazon ECS + * task.

This is object is comparable to ContainerProperties:jobRoleArn.

+ * + */ + inline void SetTaskRoleArn(Aws::String&& value) { m_taskRoleArnHasBeenSet = true; m_taskRoleArn = std::move(value); } + + /** + *

The Amazon Resource Name (ARN) that's associated with the Amazon ECS + * task.

This is object is comparable to ContainerProperties:jobRoleArn.

+ * + */ + inline void SetTaskRoleArn(const char* value) { m_taskRoleArnHasBeenSet = true; m_taskRoleArn.assign(value); } + + /** + *

The Amazon Resource Name (ARN) that's associated with the Amazon ECS + * task.

This is object is comparable to ContainerProperties:jobRoleArn.

+ * + */ + inline EcsTaskProperties& WithTaskRoleArn(const Aws::String& value) { SetTaskRoleArn(value); return *this;} + + /** + *

The Amazon Resource Name (ARN) that's associated with the Amazon ECS + * task.

This is object is comparable to ContainerProperties:jobRoleArn.

+ * + */ + inline EcsTaskProperties& WithTaskRoleArn(Aws::String&& value) { SetTaskRoleArn(std::move(value)); return *this;} + + /** + *

The Amazon Resource Name (ARN) that's associated with the Amazon ECS + * task.

This is object is comparable to ContainerProperties:jobRoleArn.

+ * + */ + inline EcsTaskProperties& WithTaskRoleArn(const char* value) { SetTaskRoleArn(value); return *this;} + + + /** + *

The process namespace to use for the containers in the task. The valid values + * are host or task. For example, monitoring sidecars + * might need pidMode to access information about other containers + * running in the same task.

If host is specified, all + * containers within the tasks that specified the host PID mode on the + * same container instance share the process namespace with the host Amazon EC2 + * instance.

If task is specified, all containers within the + * specified task share the same process namespace.

If no value is + * specified, the default is a private namespace for each container. For more + * information, see PID + * settings in the Docker run reference.

+ */ + inline const Aws::String& GetPidMode() const{ return m_pidMode; } + + /** + *

The process namespace to use for the containers in the task. The valid values + * are host or task. For example, monitoring sidecars + * might need pidMode to access information about other containers + * running in the same task.

If host is specified, all + * containers within the tasks that specified the host PID mode on the + * same container instance share the process namespace with the host Amazon EC2 + * instance.

If task is specified, all containers within the + * specified task share the same process namespace.

If no value is + * specified, the default is a private namespace for each container. For more + * information, see PID + * settings in the Docker run reference.

+ */ + inline bool PidModeHasBeenSet() const { return m_pidModeHasBeenSet; } + + /** + *

The process namespace to use for the containers in the task. The valid values + * are host or task. For example, monitoring sidecars + * might need pidMode to access information about other containers + * running in the same task.

If host is specified, all + * containers within the tasks that specified the host PID mode on the + * same container instance share the process namespace with the host Amazon EC2 + * instance.

If task is specified, all containers within the + * specified task share the same process namespace.

If no value is + * specified, the default is a private namespace for each container. For more + * information, see PID + * settings in the Docker run reference.

+ */ + inline void SetPidMode(const Aws::String& value) { m_pidModeHasBeenSet = true; m_pidMode = value; } + + /** + *

The process namespace to use for the containers in the task. The valid values + * are host or task. For example, monitoring sidecars + * might need pidMode to access information about other containers + * running in the same task.

If host is specified, all + * containers within the tasks that specified the host PID mode on the + * same container instance share the process namespace with the host Amazon EC2 + * instance.

If task is specified, all containers within the + * specified task share the same process namespace.

If no value is + * specified, the default is a private namespace for each container. For more + * information, see PID + * settings in the Docker run reference.

+ */ + inline void SetPidMode(Aws::String&& value) { m_pidModeHasBeenSet = true; m_pidMode = std::move(value); } + + /** + *

The process namespace to use for the containers in the task. The valid values + * are host or task. For example, monitoring sidecars + * might need pidMode to access information about other containers + * running in the same task.

If host is specified, all + * containers within the tasks that specified the host PID mode on the + * same container instance share the process namespace with the host Amazon EC2 + * instance.

If task is specified, all containers within the + * specified task share the same process namespace.

If no value is + * specified, the default is a private namespace for each container. For more + * information, see PID + * settings in the Docker run reference.

+ */ + inline void SetPidMode(const char* value) { m_pidModeHasBeenSet = true; m_pidMode.assign(value); } + + /** + *

The process namespace to use for the containers in the task. The valid values + * are host or task. For example, monitoring sidecars + * might need pidMode to access information about other containers + * running in the same task.

If host is specified, all + * containers within the tasks that specified the host PID mode on the + * same container instance share the process namespace with the host Amazon EC2 + * instance.

If task is specified, all containers within the + * specified task share the same process namespace.

If no value is + * specified, the default is a private namespace for each container. For more + * information, see PID + * settings in the Docker run reference.

+ */ + inline EcsTaskProperties& WithPidMode(const Aws::String& value) { SetPidMode(value); return *this;} + + /** + *

The process namespace to use for the containers in the task. The valid values + * are host or task. For example, monitoring sidecars + * might need pidMode to access information about other containers + * running in the same task.

If host is specified, all + * containers within the tasks that specified the host PID mode on the + * same container instance share the process namespace with the host Amazon EC2 + * instance.

If task is specified, all containers within the + * specified task share the same process namespace.

If no value is + * specified, the default is a private namespace for each container. For more + * information, see PID + * settings in the Docker run reference.

+ */ + inline EcsTaskProperties& WithPidMode(Aws::String&& value) { SetPidMode(std::move(value)); return *this;} + + /** + *

The process namespace to use for the containers in the task. The valid values + * are host or task. For example, monitoring sidecars + * might need pidMode to access information about other containers + * running in the same task.

If host is specified, all + * containers within the tasks that specified the host PID mode on the + * same container instance share the process namespace with the host Amazon EC2 + * instance.

If task is specified, all containers within the + * specified task share the same process namespace.

If no value is + * specified, the default is a private namespace for each container. For more + * information, see PID + * settings in the Docker run reference.

+ */ + inline EcsTaskProperties& WithPidMode(const char* value) { SetPidMode(value); return *this;} + + + /** + *

The network configuration for jobs that are running on Fargate resources. + * Jobs that are running on Amazon EC2 resources must not specify this + * parameter.

+ */ + inline const NetworkConfiguration& GetNetworkConfiguration() const{ return m_networkConfiguration; } + + /** + *

The network configuration for jobs that are running on Fargate resources. + * Jobs that are running on Amazon EC2 resources must not specify this + * parameter.

+ */ + inline bool NetworkConfigurationHasBeenSet() const { return m_networkConfigurationHasBeenSet; } + + /** + *

The network configuration for jobs that are running on Fargate resources. + * Jobs that are running on Amazon EC2 resources must not specify this + * parameter.

+ */ + inline void SetNetworkConfiguration(const NetworkConfiguration& value) { m_networkConfigurationHasBeenSet = true; m_networkConfiguration = value; } + + /** + *

The network configuration for jobs that are running on Fargate resources. + * Jobs that are running on Amazon EC2 resources must not specify this + * parameter.

+ */ + inline void SetNetworkConfiguration(NetworkConfiguration&& value) { m_networkConfigurationHasBeenSet = true; m_networkConfiguration = std::move(value); } + + /** + *

The network configuration for jobs that are running on Fargate resources. + * Jobs that are running on Amazon EC2 resources must not specify this + * parameter.

+ */ + inline EcsTaskProperties& WithNetworkConfiguration(const NetworkConfiguration& value) { SetNetworkConfiguration(value); return *this;} + + /** + *

The network configuration for jobs that are running on Fargate resources. + * Jobs that are running on Amazon EC2 resources must not specify this + * parameter.

+ */ + inline EcsTaskProperties& WithNetworkConfiguration(NetworkConfiguration&& value) { SetNetworkConfiguration(std::move(value)); return *this;} + + + /** + *

An object that represents the compute environment architecture for Batch jobs + * on Fargate.

+ */ + inline const RuntimePlatform& GetRuntimePlatform() const{ return m_runtimePlatform; } + + /** + *

An object that represents the compute environment architecture for Batch jobs + * on Fargate.

+ */ + inline bool RuntimePlatformHasBeenSet() const { return m_runtimePlatformHasBeenSet; } + + /** + *

An object that represents the compute environment architecture for Batch jobs + * on Fargate.

+ */ + inline void SetRuntimePlatform(const RuntimePlatform& value) { m_runtimePlatformHasBeenSet = true; m_runtimePlatform = value; } + + /** + *

An object that represents the compute environment architecture for Batch jobs + * on Fargate.

+ */ + inline void SetRuntimePlatform(RuntimePlatform&& value) { m_runtimePlatformHasBeenSet = true; m_runtimePlatform = std::move(value); } + + /** + *

An object that represents the compute environment architecture for Batch jobs + * on Fargate.

+ */ + inline EcsTaskProperties& WithRuntimePlatform(const RuntimePlatform& value) { SetRuntimePlatform(value); return *this;} + + /** + *

An object that represents the compute environment architecture for Batch jobs + * on Fargate.

+ */ + inline EcsTaskProperties& WithRuntimePlatform(RuntimePlatform&& value) { SetRuntimePlatform(std::move(value)); return *this;} + + + /** + *

A list of volumes that are associated with the job.

+ */ + inline const Aws::Vector& GetVolumes() const{ return m_volumes; } + + /** + *

A list of volumes that are associated with the job.

+ */ + inline bool VolumesHasBeenSet() const { return m_volumesHasBeenSet; } + + /** + *

A list of volumes that are associated with the job.

+ */ + inline void SetVolumes(const Aws::Vector& value) { m_volumesHasBeenSet = true; m_volumes = value; } + + /** + *

A list of volumes that are associated with the job.

+ */ + inline void SetVolumes(Aws::Vector&& value) { m_volumesHasBeenSet = true; m_volumes = std::move(value); } + + /** + *

A list of volumes that are associated with the job.

+ */ + inline EcsTaskProperties& WithVolumes(const Aws::Vector& value) { SetVolumes(value); return *this;} + + /** + *

A list of volumes that are associated with the job.

+ */ + inline EcsTaskProperties& WithVolumes(Aws::Vector&& value) { SetVolumes(std::move(value)); return *this;} + + /** + *

A list of volumes that are associated with the job.

+ */ + inline EcsTaskProperties& AddVolumes(const Volume& value) { m_volumesHasBeenSet = true; m_volumes.push_back(value); return *this; } + + /** + *

A list of volumes that are associated with the job.

+ */ + inline EcsTaskProperties& AddVolumes(Volume&& value) { m_volumesHasBeenSet = true; m_volumes.push_back(std::move(value)); return *this; } + + private: + + Aws::Vector m_containers; + bool m_containersHasBeenSet = false; + + EphemeralStorage m_ephemeralStorage; + bool m_ephemeralStorageHasBeenSet = false; + + Aws::String m_executionRoleArn; + bool m_executionRoleArnHasBeenSet = false; + + Aws::String m_platformVersion; + bool m_platformVersionHasBeenSet = false; + + Aws::String m_ipcMode; + bool m_ipcModeHasBeenSet = false; + + Aws::String m_taskRoleArn; + bool m_taskRoleArnHasBeenSet = false; + + Aws::String m_pidMode; + bool m_pidModeHasBeenSet = false; + + NetworkConfiguration m_networkConfiguration; + bool m_networkConfigurationHasBeenSet = false; + + RuntimePlatform m_runtimePlatform; + bool m_runtimePlatformHasBeenSet = false; + + Aws::Vector m_volumes; + bool m_volumesHasBeenSet = false; + }; + +} // namespace Model +} // namespace Batch +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/EksAttemptContainerDetail.h b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/EksAttemptContainerDetail.h index 4032d4eb0f0..e2133217753 100644 --- a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/EksAttemptContainerDetail.h +++ b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/EksAttemptContainerDetail.h @@ -39,26 +39,26 @@ namespace Model /** - *

The exit code for the job attempt. A non-zero exit code is considered - * failed.

+ *

The exit code returned for the job attempt. A non-zero exit code is + * considered failed.

*/ inline int GetExitCode() const{ return m_exitCode; } /** - *

The exit code for the job attempt. A non-zero exit code is considered - * failed.

+ *

The exit code returned for the job attempt. A non-zero exit code is + * considered failed.

*/ inline bool ExitCodeHasBeenSet() const { return m_exitCodeHasBeenSet; } /** - *

The exit code for the job attempt. A non-zero exit code is considered - * failed.

+ *

The exit code returned for the job attempt. A non-zero exit code is + * considered failed.

*/ inline void SetExitCode(int value) { m_exitCodeHasBeenSet = true; m_exitCode = value; } /** - *

The exit code for the job attempt. A non-zero exit code is considered - * failed.

+ *

The exit code returned for the job attempt. A non-zero exit code is + * considered failed.

*/ inline EksAttemptContainerDetail& WithExitCode(int value) { SetExitCode(value); return *this;} diff --git a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/EksAttemptDetail.h b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/EksAttemptDetail.h index a4a36698583..cecfbfb44d1 100644 --- a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/EksAttemptDetail.h +++ b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/EksAttemptDetail.h @@ -81,6 +81,47 @@ namespace Model inline EksAttemptDetail& AddContainers(EksAttemptContainerDetail&& value) { m_containersHasBeenSet = true; m_containers.push_back(std::move(value)); return *this; } + /** + *

The details for the init containers.

+ */ + inline const Aws::Vector& GetInitContainers() const{ return m_initContainers; } + + /** + *

The details for the init containers.

+ */ + inline bool InitContainersHasBeenSet() const { return m_initContainersHasBeenSet; } + + /** + *

The details for the init containers.

+ */ + inline void SetInitContainers(const Aws::Vector& value) { m_initContainersHasBeenSet = true; m_initContainers = value; } + + /** + *

The details for the init containers.

+ */ + inline void SetInitContainers(Aws::Vector&& value) { m_initContainersHasBeenSet = true; m_initContainers = std::move(value); } + + /** + *

The details for the init containers.

+ */ + inline EksAttemptDetail& WithInitContainers(const Aws::Vector& value) { SetInitContainers(value); return *this;} + + /** + *

The details for the init containers.

+ */ + inline EksAttemptDetail& WithInitContainers(Aws::Vector&& value) { SetInitContainers(std::move(value)); return *this;} + + /** + *

The details for the init containers.

+ */ + inline EksAttemptDetail& AddInitContainers(const EksAttemptContainerDetail& value) { m_initContainersHasBeenSet = true; m_initContainers.push_back(value); return *this; } + + /** + *

The details for the init containers.

+ */ + inline EksAttemptDetail& AddInitContainers(EksAttemptContainerDetail&& value) { m_initContainersHasBeenSet = true; m_initContainers.push_back(std::move(value)); return *this; } + + /** *

The name of the pod for this job attempt.

*/ @@ -274,6 +315,9 @@ namespace Model Aws::Vector m_containers; bool m_containersHasBeenSet = false; + Aws::Vector m_initContainers; + bool m_initContainersHasBeenSet = false; + Aws::String m_podName; bool m_podNameHasBeenSet = false; diff --git a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/EksContainer.h b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/EksContainer.h index 17f81992af0..bfdcacca41b 100644 --- a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/EksContainer.h +++ b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/EksContainer.h @@ -438,8 +438,8 @@ namespace Model * expanded. For example, $$(VAR_NAME) is passed as * $(VAR_NAME) whether or not the VAR_NAME environment * variable exists. For more information, see CMD in the - * Dockerfile reference and Dockerfile + * reference: CMD and Define * a command and arguments for a pod in the Kubernetes * documentation.

@@ -462,8 +462,8 @@ namespace Model * expanded. For example, $$(VAR_NAME) is passed as * $(VAR_NAME) whether or not the VAR_NAME environment * variable exists. For more information, see CMD in the - * Dockerfile reference and Dockerfile + * reference: CMD and Define * a command and arguments for a pod in the Kubernetes * documentation.

@@ -486,8 +486,8 @@ namespace Model * expanded. For example, $$(VAR_NAME) is passed as * $(VAR_NAME) whether or not the VAR_NAME environment * variable exists. For more information, see CMD in the - * Dockerfile reference and Dockerfile + * reference: CMD and Define * a command and arguments for a pod in the Kubernetes * documentation.

@@ -510,8 +510,8 @@ namespace Model * expanded. For example, $$(VAR_NAME) is passed as * $(VAR_NAME) whether or not the VAR_NAME environment * variable exists. For more information, see CMD in the - * Dockerfile reference and Dockerfile + * reference: CMD and Define * a command and arguments for a pod in the Kubernetes * documentation.

@@ -534,8 +534,8 @@ namespace Model * expanded. For example, $$(VAR_NAME) is passed as * $(VAR_NAME) whether or not the VAR_NAME environment * variable exists. For more information, see CMD in the - * Dockerfile reference and Dockerfile + * reference: CMD and Define * a command and arguments for a pod in the Kubernetes * documentation.

@@ -558,8 +558,8 @@ namespace Model * expanded. For example, $$(VAR_NAME) is passed as * $(VAR_NAME) whether or not the VAR_NAME environment * variable exists. For more information, see CMD in the - * Dockerfile reference and Dockerfile + * reference: CMD and Define * a command and arguments for a pod in the Kubernetes * documentation.

@@ -582,8 +582,8 @@ namespace Model * expanded. For example, $$(VAR_NAME) is passed as * $(VAR_NAME) whether or not the VAR_NAME environment * variable exists. For more information, see CMD in the - * Dockerfile reference and Dockerfile + * reference: CMD and Define * a command and arguments for a pod in the Kubernetes * documentation.

@@ -606,8 +606,8 @@ namespace Model * expanded. For example, $$(VAR_NAME) is passed as * $(VAR_NAME) whether or not the VAR_NAME environment * variable exists. For more information, see CMD in the - * Dockerfile reference and Dockerfile + * reference: CMD and Define * a command and arguments for a pod in the Kubernetes * documentation.

@@ -630,8 +630,8 @@ namespace Model * expanded. For example, $$(VAR_NAME) is passed as * $(VAR_NAME) whether or not the VAR_NAME environment * variable exists. For more information, see CMD in the - * Dockerfile reference and Dockerfile + * reference: CMD and Define * a command and arguments for a pod in the Kubernetes * documentation.

diff --git a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/EksContainerDetail.h b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/EksContainerDetail.h index 77fbd2bc973..7f273c9afc6 100644 --- a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/EksContainerDetail.h +++ b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/EksContainerDetail.h @@ -303,8 +303,8 @@ namespace Model * expanded. For example, $$(VAR_NAME) is passed as * $(VAR_NAME) whether or not the VAR_NAME environment * variable exists. For more information, see CMD in the - * Dockerfile reference and Dockerfile + * reference: CMD and Define * a command and arguments for a pod in the Kubernetes * documentation.

@@ -327,8 +327,8 @@ namespace Model * expanded. For example, $$(VAR_NAME) is passed as * $(VAR_NAME) whether or not the VAR_NAME environment * variable exists. For more information, see CMD in the - * Dockerfile reference and Dockerfile + * reference: CMD and Define * a command and arguments for a pod in the Kubernetes * documentation.

@@ -351,8 +351,8 @@ namespace Model * expanded. For example, $$(VAR_NAME) is passed as * $(VAR_NAME) whether or not the VAR_NAME environment * variable exists. For more information, see CMD in the - * Dockerfile reference and Dockerfile + * reference: CMD and Define * a command and arguments for a pod in the Kubernetes * documentation.

@@ -375,8 +375,8 @@ namespace Model * expanded. For example, $$(VAR_NAME) is passed as * $(VAR_NAME) whether or not the VAR_NAME environment * variable exists. For more information, see CMD in the - * Dockerfile reference and Dockerfile + * reference: CMD and Define * a command and arguments for a pod in the Kubernetes * documentation.

@@ -399,8 +399,8 @@ namespace Model * expanded. For example, $$(VAR_NAME) is passed as * $(VAR_NAME) whether or not the VAR_NAME environment * variable exists. For more information, see CMD in the - * Dockerfile reference and Dockerfile + * reference: CMD and Define * a command and arguments for a pod in the Kubernetes * documentation.

@@ -423,8 +423,8 @@ namespace Model * expanded. For example, $$(VAR_NAME) is passed as * $(VAR_NAME) whether or not the VAR_NAME environment * variable exists. For more information, see CMD in the - * Dockerfile reference and Dockerfile + * reference: CMD and Define * a command and arguments for a pod in the Kubernetes * documentation.

@@ -447,8 +447,8 @@ namespace Model * expanded. For example, $$(VAR_NAME) is passed as * $(VAR_NAME) whether or not the VAR_NAME environment * variable exists. For more information, see CMD in the - * Dockerfile reference and Dockerfile + * reference: CMD and Define * a command and arguments for a pod in the Kubernetes * documentation.

@@ -471,8 +471,8 @@ namespace Model * expanded. For example, $$(VAR_NAME) is passed as * $(VAR_NAME) whether or not the VAR_NAME environment * variable exists. For more information, see CMD in the - * Dockerfile reference and Dockerfile + * reference: CMD and Define * a command and arguments for a pod in the Kubernetes * documentation.

@@ -495,8 +495,8 @@ namespace Model * expanded. For example, $$(VAR_NAME) is passed as * $(VAR_NAME) whether or not the VAR_NAME environment * variable exists. For more information, see CMD in the - * Dockerfile reference and Dockerfile + * reference: CMD and Define * a command and arguments for a pod in the Kubernetes * documentation.

@@ -623,26 +623,26 @@ namespace Model /** - *

The exit code for the job attempt. A non-zero exit code is considered - * failed.

+ *

The exit code returned for the job attempt. A non-zero exit code is + * considered failed.

*/ inline int GetExitCode() const{ return m_exitCode; } /** - *

The exit code for the job attempt. A non-zero exit code is considered - * failed.

+ *

The exit code returned for the job attempt. A non-zero exit code is + * considered failed.

*/ inline bool ExitCodeHasBeenSet() const { return m_exitCodeHasBeenSet; } /** - *

The exit code for the job attempt. A non-zero exit code is considered - * failed.

+ *

The exit code returned for the job attempt. A non-zero exit code is + * considered failed.

*/ inline void SetExitCode(int value) { m_exitCodeHasBeenSet = true; m_exitCode = value; } /** - *

The exit code for the job attempt. A non-zero exit code is considered - * failed.

+ *

The exit code returned for the job attempt. A non-zero exit code is + * considered failed.

*/ inline EksContainerDetail& WithExitCode(int value) { SetExitCode(value); return *this;} diff --git a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/EksContainerOverride.h b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/EksContainerOverride.h index b10064c9cf5..75be30476c5 100644 --- a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/EksContainerOverride.h +++ b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/EksContainerOverride.h @@ -28,7 +28,9 @@ namespace Model /** *

Object representing any Kubernetes overrides to a job definition that's used - * in a SubmitJob API operation.

See Also:

SubmitJob + * API operation.

See Also:

AWS * API Reference

*/ @@ -41,6 +43,55 @@ namespace Model AWS_BATCH_API Aws::Utils::Json::JsonValue Jsonize() const; + /** + *

A pointer to the container that you want to override. The name must match a + * unique container name that you wish to override.

+ */ + inline const Aws::String& GetName() const{ return m_name; } + + /** + *

A pointer to the container that you want to override. The name must match a + * unique container name that you wish to override.

+ */ + inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } + + /** + *

A pointer to the container that you want to override. The name must match a + * unique container name that you wish to override.

+ */ + inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } + + /** + *

A pointer to the container that you want to override. The name must match a + * unique container name that you wish to override.

+ */ + inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } + + /** + *

A pointer to the container that you want to override. The name must match a + * unique container name that you wish to override.

+ */ + inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } + + /** + *

A pointer to the container that you want to override. The name must match a + * unique container name that you wish to override.

+ */ + inline EksContainerOverride& WithName(const Aws::String& value) { SetName(value); return *this;} + + /** + *

A pointer to the container that you want to override. The name must match a + * unique container name that you wish to override.

+ */ + inline EksContainerOverride& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} + + /** + *

A pointer to the container that you want to override. The name must match a + * unique container name that you wish to override.

+ */ + inline EksContainerOverride& WithName(const char* value) { SetName(value); return *this;} + + /** *

The override of the Docker image that's used to start the container.

*/ @@ -141,8 +192,8 @@ namespace Model *

The arguments to the entrypoint to send to the container that overrides the * default arguments from the Docker image or the job definition. For more * information, see CMD in the - * Dockerfile reference and Dockerfile + * reference: CMD and Define * a command an arguments for a pod in the Kubernetes documentation.

*/ @@ -152,8 +203,8 @@ namespace Model *

The arguments to the entrypoint to send to the container that overrides the * default arguments from the Docker image or the job definition. For more * information, see CMD in the - * Dockerfile reference and Dockerfile + * reference: CMD and Define * a command an arguments for a pod in the Kubernetes documentation.

*/ @@ -163,8 +214,8 @@ namespace Model *

The arguments to the entrypoint to send to the container that overrides the * default arguments from the Docker image or the job definition. For more * information, see CMD in the - * Dockerfile reference and Dockerfile + * reference: CMD and Define * a command an arguments for a pod in the Kubernetes documentation.

*/ @@ -174,8 +225,8 @@ namespace Model *

The arguments to the entrypoint to send to the container that overrides the * default arguments from the Docker image or the job definition. For more * information, see CMD in the - * Dockerfile reference and Dockerfile + * reference: CMD and Define * a command an arguments for a pod in the Kubernetes documentation.

*/ @@ -185,8 +236,8 @@ namespace Model *

The arguments to the entrypoint to send to the container that overrides the * default arguments from the Docker image or the job definition. For more * information, see CMD in the - * Dockerfile reference and Dockerfile + * reference: CMD and Define * a command an arguments for a pod in the Kubernetes documentation.

*/ @@ -196,8 +247,8 @@ namespace Model *

The arguments to the entrypoint to send to the container that overrides the * default arguments from the Docker image or the job definition. For more * information, see CMD in the - * Dockerfile reference and Dockerfile + * reference: CMD and Define * a command an arguments for a pod in the Kubernetes documentation.

*/ @@ -207,8 +258,8 @@ namespace Model *

The arguments to the entrypoint to send to the container that overrides the * default arguments from the Docker image or the job definition. For more * information, see CMD in the - * Dockerfile reference and Dockerfile + * reference: CMD and Define * a command an arguments for a pod in the Kubernetes documentation.

*/ @@ -218,8 +269,8 @@ namespace Model *

The arguments to the entrypoint to send to the container that overrides the * default arguments from the Docker image or the job definition. For more * information, see CMD in the - * Dockerfile reference and Dockerfile + * reference: CMD and Define * a command an arguments for a pod in the Kubernetes documentation.

*/ @@ -229,8 +280,8 @@ namespace Model *

The arguments to the entrypoint to send to the container that overrides the * default arguments from the Docker image or the job definition. For more * information, see CMD in the - * Dockerfile reference and Dockerfile + * reference: CMD and Define * a command an arguments for a pod in the Kubernetes documentation.

*/ @@ -386,6 +437,9 @@ namespace Model private: + Aws::String m_name; + bool m_nameHasBeenSet = false; + Aws::String m_image; bool m_imageHasBeenSet = false; diff --git a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/EksPodProperties.h b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/EksPodProperties.h index baf5758e9f5..2f59c01a6f8 100644 --- a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/EksPodProperties.h +++ b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/EksPodProperties.h @@ -353,6 +353,103 @@ namespace Model inline EksPodProperties& AddContainers(EksContainer&& value) { m_containersHasBeenSet = true; m_containers.push_back(std::move(value)); return *this; } + /** + *

These containers run before application containers, always runs to + * completion, and must complete successfully before the next container starts. + * These containers are registered with the Amazon EKS Connector agent and persists + * the registration information in the Kubernetes backend data store. For more + * information, see Init + * Containers in the Kubernetes documentation.

This object + * is limited to 10 elements

+ */ + inline const Aws::Vector& GetInitContainers() const{ return m_initContainers; } + + /** + *

These containers run before application containers, always runs to + * completion, and must complete successfully before the next container starts. + * These containers are registered with the Amazon EKS Connector agent and persists + * the registration information in the Kubernetes backend data store. For more + * information, see Init + * Containers in the Kubernetes documentation.

This object + * is limited to 10 elements

+ */ + inline bool InitContainersHasBeenSet() const { return m_initContainersHasBeenSet; } + + /** + *

These containers run before application containers, always runs to + * completion, and must complete successfully before the next container starts. + * These containers are registered with the Amazon EKS Connector agent and persists + * the registration information in the Kubernetes backend data store. For more + * information, see Init + * Containers in the Kubernetes documentation.

This object + * is limited to 10 elements

+ */ + inline void SetInitContainers(const Aws::Vector& value) { m_initContainersHasBeenSet = true; m_initContainers = value; } + + /** + *

These containers run before application containers, always runs to + * completion, and must complete successfully before the next container starts. + * These containers are registered with the Amazon EKS Connector agent and persists + * the registration information in the Kubernetes backend data store. For more + * information, see Init + * Containers in the Kubernetes documentation.

This object + * is limited to 10 elements

+ */ + inline void SetInitContainers(Aws::Vector&& value) { m_initContainersHasBeenSet = true; m_initContainers = std::move(value); } + + /** + *

These containers run before application containers, always runs to + * completion, and must complete successfully before the next container starts. + * These containers are registered with the Amazon EKS Connector agent and persists + * the registration information in the Kubernetes backend data store. For more + * information, see Init + * Containers in the Kubernetes documentation.

This object + * is limited to 10 elements

+ */ + inline EksPodProperties& WithInitContainers(const Aws::Vector& value) { SetInitContainers(value); return *this;} + + /** + *

These containers run before application containers, always runs to + * completion, and must complete successfully before the next container starts. + * These containers are registered with the Amazon EKS Connector agent and persists + * the registration information in the Kubernetes backend data store. For more + * information, see Init + * Containers in the Kubernetes documentation.

This object + * is limited to 10 elements

+ */ + inline EksPodProperties& WithInitContainers(Aws::Vector&& value) { SetInitContainers(std::move(value)); return *this;} + + /** + *

These containers run before application containers, always runs to + * completion, and must complete successfully before the next container starts. + * These containers are registered with the Amazon EKS Connector agent and persists + * the registration information in the Kubernetes backend data store. For more + * information, see Init + * Containers in the Kubernetes documentation.

This object + * is limited to 10 elements

+ */ + inline EksPodProperties& AddInitContainers(const EksContainer& value) { m_initContainersHasBeenSet = true; m_initContainers.push_back(value); return *this; } + + /** + *

These containers run before application containers, always runs to + * completion, and must complete successfully before the next container starts. + * These containers are registered with the Amazon EKS Connector agent and persists + * the registration information in the Kubernetes backend data store. For more + * information, see Init + * Containers in the Kubernetes documentation.

This object + * is limited to 10 elements

+ */ + inline EksPodProperties& AddInitContainers(EksContainer&& value) { m_initContainersHasBeenSet = true; m_initContainers.push_back(std::move(value)); return *this; } + + /** *

Specifies the volumes for a job definition that uses Amazon EKS * resources.

@@ -444,6 +541,39 @@ namespace Model */ inline EksPodProperties& WithMetadata(EksMetadata&& value) { SetMetadata(std::move(value)); return *this;} + + /** + *

Indicates if the processes in a container are shared, or visible, to other + * containers in the same pod. For more information, see Share + * Process Namespace between Containers in a Pod.

+ */ + inline bool GetShareProcessNamespace() const{ return m_shareProcessNamespace; } + + /** + *

Indicates if the processes in a container are shared, or visible, to other + * containers in the same pod. For more information, see Share + * Process Namespace between Containers in a Pod.

+ */ + inline bool ShareProcessNamespaceHasBeenSet() const { return m_shareProcessNamespaceHasBeenSet; } + + /** + *

Indicates if the processes in a container are shared, or visible, to other + * containers in the same pod. For more information, see Share + * Process Namespace between Containers in a Pod.

+ */ + inline void SetShareProcessNamespace(bool value) { m_shareProcessNamespaceHasBeenSet = true; m_shareProcessNamespace = value; } + + /** + *

Indicates if the processes in a container are shared, or visible, to other + * containers in the same pod. For more information, see Share + * Process Namespace between Containers in a Pod.

+ */ + inline EksPodProperties& WithShareProcessNamespace(bool value) { SetShareProcessNamespace(value); return *this;} + private: Aws::String m_serviceAccountName; @@ -458,11 +588,17 @@ namespace Model Aws::Vector m_containers; bool m_containersHasBeenSet = false; + Aws::Vector m_initContainers; + bool m_initContainersHasBeenSet = false; + Aws::Vector m_volumes; bool m_volumesHasBeenSet = false; EksMetadata m_metadata; bool m_metadataHasBeenSet = false; + + bool m_shareProcessNamespace; + bool m_shareProcessNamespaceHasBeenSet = false; }; } // namespace Model diff --git a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/EksPodPropertiesDetail.h b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/EksPodPropertiesDetail.h index 3f41f81f2ed..fb289658ba7 100644 --- a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/EksPodPropertiesDetail.h +++ b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/EksPodPropertiesDetail.h @@ -433,6 +433,55 @@ namespace Model inline EksPodPropertiesDetail& AddContainers(EksContainerDetail&& value) { m_containersHasBeenSet = true; m_containers.push_back(std::move(value)); return *this; } + /** + *

The container registered with the Amazon EKS Connector agent and persists the + * registration information in the Kubernetes backend data store.

+ */ + inline const Aws::Vector& GetInitContainers() const{ return m_initContainers; } + + /** + *

The container registered with the Amazon EKS Connector agent and persists the + * registration information in the Kubernetes backend data store.

+ */ + inline bool InitContainersHasBeenSet() const { return m_initContainersHasBeenSet; } + + /** + *

The container registered with the Amazon EKS Connector agent and persists the + * registration information in the Kubernetes backend data store.

+ */ + inline void SetInitContainers(const Aws::Vector& value) { m_initContainersHasBeenSet = true; m_initContainers = value; } + + /** + *

The container registered with the Amazon EKS Connector agent and persists the + * registration information in the Kubernetes backend data store.

+ */ + inline void SetInitContainers(Aws::Vector&& value) { m_initContainersHasBeenSet = true; m_initContainers = std::move(value); } + + /** + *

The container registered with the Amazon EKS Connector agent and persists the + * registration information in the Kubernetes backend data store.

+ */ + inline EksPodPropertiesDetail& WithInitContainers(const Aws::Vector& value) { SetInitContainers(value); return *this;} + + /** + *

The container registered with the Amazon EKS Connector agent and persists the + * registration information in the Kubernetes backend data store.

+ */ + inline EksPodPropertiesDetail& WithInitContainers(Aws::Vector&& value) { SetInitContainers(std::move(value)); return *this;} + + /** + *

The container registered with the Amazon EKS Connector agent and persists the + * registration information in the Kubernetes backend data store.

+ */ + inline EksPodPropertiesDetail& AddInitContainers(const EksContainerDetail& value) { m_initContainersHasBeenSet = true; m_initContainers.push_back(value); return *this; } + + /** + *

The container registered with the Amazon EKS Connector agent and persists the + * registration information in the Kubernetes backend data store.

+ */ + inline EksPodPropertiesDetail& AddInitContainers(EksContainerDetail&& value) { m_initContainersHasBeenSet = true; m_initContainers.push_back(std::move(value)); return *this; } + + /** *

Specifies the volumes for a job definition using Amazon EKS resources.

*/ @@ -610,6 +659,39 @@ namespace Model */ inline EksPodPropertiesDetail& WithMetadata(EksMetadata&& value) { SetMetadata(std::move(value)); return *this;} + + /** + *

Indicates if the processes in a container are shared, or visible, to other + * containers in the same pod. For more information, see Share + * Process Namespace between Containers in a Pod.

+ */ + inline bool GetShareProcessNamespace() const{ return m_shareProcessNamespace; } + + /** + *

Indicates if the processes in a container are shared, or visible, to other + * containers in the same pod. For more information, see Share + * Process Namespace between Containers in a Pod.

+ */ + inline bool ShareProcessNamespaceHasBeenSet() const { return m_shareProcessNamespaceHasBeenSet; } + + /** + *

Indicates if the processes in a container are shared, or visible, to other + * containers in the same pod. For more information, see Share + * Process Namespace between Containers in a Pod.

+ */ + inline void SetShareProcessNamespace(bool value) { m_shareProcessNamespaceHasBeenSet = true; m_shareProcessNamespace = value; } + + /** + *

Indicates if the processes in a container are shared, or visible, to other + * containers in the same pod. For more information, see Share + * Process Namespace between Containers in a Pod.

+ */ + inline EksPodPropertiesDetail& WithShareProcessNamespace(bool value) { SetShareProcessNamespace(value); return *this;} + private: Aws::String m_serviceAccountName; @@ -624,6 +706,9 @@ namespace Model Aws::Vector m_containers; bool m_containersHasBeenSet = false; + Aws::Vector m_initContainers; + bool m_initContainersHasBeenSet = false; + Aws::Vector m_volumes; bool m_volumesHasBeenSet = false; @@ -635,6 +720,9 @@ namespace Model EksMetadata m_metadata; bool m_metadataHasBeenSet = false; + + bool m_shareProcessNamespace; + bool m_shareProcessNamespaceHasBeenSet = false; }; } // namespace Model diff --git a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/EksPodPropertiesOverride.h b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/EksPodPropertiesOverride.h index d9756cd913b..57aa389bd5c 100644 --- a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/EksPodPropertiesOverride.h +++ b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/EksPodPropertiesOverride.h @@ -81,6 +81,103 @@ namespace Model inline EksPodPropertiesOverride& AddContainers(EksContainerOverride&& value) { m_containersHasBeenSet = true; m_containers.push_back(std::move(value)); return *this; } + /** + *

The overrides for the conatainers defined in the Amazon EKS pod. These + * containers run before application containers, always runs to completion, and + * must complete successfully before the next container starts. These containers + * are registered with the Amazon EKS Connector agent and persists the registration + * information in the Kubernetes backend data store. For more information, see Init + * Containers in the Kubernetes documentation.

This object + * is limited to 10 elements

+ */ + inline const Aws::Vector& GetInitContainers() const{ return m_initContainers; } + + /** + *

The overrides for the conatainers defined in the Amazon EKS pod. These + * containers run before application containers, always runs to completion, and + * must complete successfully before the next container starts. These containers + * are registered with the Amazon EKS Connector agent and persists the registration + * information in the Kubernetes backend data store. For more information, see Init + * Containers in the Kubernetes documentation.

This object + * is limited to 10 elements

+ */ + inline bool InitContainersHasBeenSet() const { return m_initContainersHasBeenSet; } + + /** + *

The overrides for the conatainers defined in the Amazon EKS pod. These + * containers run before application containers, always runs to completion, and + * must complete successfully before the next container starts. These containers + * are registered with the Amazon EKS Connector agent and persists the registration + * information in the Kubernetes backend data store. For more information, see Init + * Containers in the Kubernetes documentation.

This object + * is limited to 10 elements

+ */ + inline void SetInitContainers(const Aws::Vector& value) { m_initContainersHasBeenSet = true; m_initContainers = value; } + + /** + *

The overrides for the conatainers defined in the Amazon EKS pod. These + * containers run before application containers, always runs to completion, and + * must complete successfully before the next container starts. These containers + * are registered with the Amazon EKS Connector agent and persists the registration + * information in the Kubernetes backend data store. For more information, see Init + * Containers in the Kubernetes documentation.

This object + * is limited to 10 elements

+ */ + inline void SetInitContainers(Aws::Vector&& value) { m_initContainersHasBeenSet = true; m_initContainers = std::move(value); } + + /** + *

The overrides for the conatainers defined in the Amazon EKS pod. These + * containers run before application containers, always runs to completion, and + * must complete successfully before the next container starts. These containers + * are registered with the Amazon EKS Connector agent and persists the registration + * information in the Kubernetes backend data store. For more information, see Init + * Containers in the Kubernetes documentation.

This object + * is limited to 10 elements

+ */ + inline EksPodPropertiesOverride& WithInitContainers(const Aws::Vector& value) { SetInitContainers(value); return *this;} + + /** + *

The overrides for the conatainers defined in the Amazon EKS pod. These + * containers run before application containers, always runs to completion, and + * must complete successfully before the next container starts. These containers + * are registered with the Amazon EKS Connector agent and persists the registration + * information in the Kubernetes backend data store. For more information, see Init + * Containers in the Kubernetes documentation.

This object + * is limited to 10 elements

+ */ + inline EksPodPropertiesOverride& WithInitContainers(Aws::Vector&& value) { SetInitContainers(std::move(value)); return *this;} + + /** + *

The overrides for the conatainers defined in the Amazon EKS pod. These + * containers run before application containers, always runs to completion, and + * must complete successfully before the next container starts. These containers + * are registered with the Amazon EKS Connector agent and persists the registration + * information in the Kubernetes backend data store. For more information, see Init + * Containers in the Kubernetes documentation.

This object + * is limited to 10 elements

+ */ + inline EksPodPropertiesOverride& AddInitContainers(const EksContainerOverride& value) { m_initContainersHasBeenSet = true; m_initContainers.push_back(value); return *this; } + + /** + *

The overrides for the conatainers defined in the Amazon EKS pod. These + * containers run before application containers, always runs to completion, and + * must complete successfully before the next container starts. These containers + * are registered with the Amazon EKS Connector agent and persists the registration + * information in the Kubernetes backend data store. For more information, see Init + * Containers in the Kubernetes documentation.

This object + * is limited to 10 elements

+ */ + inline EksPodPropertiesOverride& AddInitContainers(EksContainerOverride&& value) { m_initContainersHasBeenSet = true; m_initContainers.push_back(std::move(value)); return *this; } + + /** *

Metadata about the overrides for the container that's used on the Amazon EKS * pod.

@@ -122,6 +219,9 @@ namespace Model Aws::Vector m_containers; bool m_containersHasBeenSet = false; + Aws::Vector m_initContainers; + bool m_initContainersHasBeenSet = false; + EksMetadata m_metadata; bool m_metadataHasBeenSet = false; }; diff --git a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/FargatePlatformConfiguration.h b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/FargatePlatformConfiguration.h index 7ee0fbb7575..cb65e891f59 100644 --- a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/FargatePlatformConfiguration.h +++ b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/FargatePlatformConfiguration.h @@ -25,8 +25,8 @@ namespace Model /** *

The platform configuration for jobs that are running on Fargate resources. - * Jobs that run on EC2 resources must not specify this parameter.

See - * Also:

See Also:

AWS * API Reference

*/ diff --git a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/JobDefinition.h b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/JobDefinition.h index e0cb0098d26..770f9d75e7b 100644 --- a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/JobDefinition.h +++ b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/JobDefinition.h @@ -12,6 +12,7 @@ #include #include #include +#include #include #include #include @@ -483,44 +484,50 @@ namespace Model /** - *

An object with various properties specific to Amazon ECS based jobs. Valid - * values are containerProperties, eksProperties, and - * nodeProperties. Only one can be specified.

+ *

An object with properties specific to Amazon ECS-based jobs. When + * containerProperties is used in the job definition, it can't be used + * in addition to eksProperties, ecsProperties, or + * nodeProperties.

*/ inline const ContainerProperties& GetContainerProperties() const{ return m_containerProperties; } /** - *

An object with various properties specific to Amazon ECS based jobs. Valid - * values are containerProperties, eksProperties, and - * nodeProperties. Only one can be specified.

+ *

An object with properties specific to Amazon ECS-based jobs. When + * containerProperties is used in the job definition, it can't be used + * in addition to eksProperties, ecsProperties, or + * nodeProperties.

*/ inline bool ContainerPropertiesHasBeenSet() const { return m_containerPropertiesHasBeenSet; } /** - *

An object with various properties specific to Amazon ECS based jobs. Valid - * values are containerProperties, eksProperties, and - * nodeProperties. Only one can be specified.

+ *

An object with properties specific to Amazon ECS-based jobs. When + * containerProperties is used in the job definition, it can't be used + * in addition to eksProperties, ecsProperties, or + * nodeProperties.

*/ inline void SetContainerProperties(const ContainerProperties& value) { m_containerPropertiesHasBeenSet = true; m_containerProperties = value; } /** - *

An object with various properties specific to Amazon ECS based jobs. Valid - * values are containerProperties, eksProperties, and - * nodeProperties. Only one can be specified.

+ *

An object with properties specific to Amazon ECS-based jobs. When + * containerProperties is used in the job definition, it can't be used + * in addition to eksProperties, ecsProperties, or + * nodeProperties.

*/ inline void SetContainerProperties(ContainerProperties&& value) { m_containerPropertiesHasBeenSet = true; m_containerProperties = std::move(value); } /** - *

An object with various properties specific to Amazon ECS based jobs. Valid - * values are containerProperties, eksProperties, and - * nodeProperties. Only one can be specified.

+ *

An object with properties specific to Amazon ECS-based jobs. When + * containerProperties is used in the job definition, it can't be used + * in addition to eksProperties, ecsProperties, or + * nodeProperties.

*/ inline JobDefinition& WithContainerProperties(const ContainerProperties& value) { SetContainerProperties(value); return *this;} /** - *

An object with various properties specific to Amazon ECS based jobs. Valid - * values are containerProperties, eksProperties, and - * nodeProperties. Only one can be specified.

+ *

An object with properties specific to Amazon ECS-based jobs. When + * containerProperties is used in the job definition, it can't be used + * in addition to eksProperties, ecsProperties, or + * nodeProperties.

*/ inline JobDefinition& WithContainerProperties(ContainerProperties&& value) { SetContainerProperties(std::move(value)); return *this;} @@ -569,62 +576,62 @@ namespace Model /** - *

An object with various properties that are specific to multi-node parallel - * jobs. Valid values are containerProperties, - * eksProperties, and nodeProperties. Only one can be - * specified.

If the job runs on Fargate resources, don't specify - * nodeProperties. Use containerProperties instead.

- * + *

An object with properties that are specific to multi-node parallel jobs. When + * nodeProperties is used in the job definition, it can't be used in + * addition to containerProperties, ecsProperties, or + * eksProperties.

If the job runs on Fargate resources, + * don't specify nodeProperties. Use containerProperties + * instead.

*/ inline const NodeProperties& GetNodeProperties() const{ return m_nodeProperties; } /** - *

An object with various properties that are specific to multi-node parallel - * jobs. Valid values are containerProperties, - * eksProperties, and nodeProperties. Only one can be - * specified.

If the job runs on Fargate resources, don't specify - * nodeProperties. Use containerProperties instead.

- * + *

An object with properties that are specific to multi-node parallel jobs. When + * nodeProperties is used in the job definition, it can't be used in + * addition to containerProperties, ecsProperties, or + * eksProperties.

If the job runs on Fargate resources, + * don't specify nodeProperties. Use containerProperties + * instead.

*/ inline bool NodePropertiesHasBeenSet() const { return m_nodePropertiesHasBeenSet; } /** - *

An object with various properties that are specific to multi-node parallel - * jobs. Valid values are containerProperties, - * eksProperties, and nodeProperties. Only one can be - * specified.

If the job runs on Fargate resources, don't specify - * nodeProperties. Use containerProperties instead.

- * + *

An object with properties that are specific to multi-node parallel jobs. When + * nodeProperties is used in the job definition, it can't be used in + * addition to containerProperties, ecsProperties, or + * eksProperties.

If the job runs on Fargate resources, + * don't specify nodeProperties. Use containerProperties + * instead.

*/ inline void SetNodeProperties(const NodeProperties& value) { m_nodePropertiesHasBeenSet = true; m_nodeProperties = value; } /** - *

An object with various properties that are specific to multi-node parallel - * jobs. Valid values are containerProperties, - * eksProperties, and nodeProperties. Only one can be - * specified.

If the job runs on Fargate resources, don't specify - * nodeProperties. Use containerProperties instead.

- * + *

An object with properties that are specific to multi-node parallel jobs. When + * nodeProperties is used in the job definition, it can't be used in + * addition to containerProperties, ecsProperties, or + * eksProperties.

If the job runs on Fargate resources, + * don't specify nodeProperties. Use containerProperties + * instead.

*/ inline void SetNodeProperties(NodeProperties&& value) { m_nodePropertiesHasBeenSet = true; m_nodeProperties = std::move(value); } /** - *

An object with various properties that are specific to multi-node parallel - * jobs. Valid values are containerProperties, - * eksProperties, and nodeProperties. Only one can be - * specified.

If the job runs on Fargate resources, don't specify - * nodeProperties. Use containerProperties instead.

- * + *

An object with properties that are specific to multi-node parallel jobs. When + * nodeProperties is used in the job definition, it can't be used in + * addition to containerProperties, ecsProperties, or + * eksProperties.

If the job runs on Fargate resources, + * don't specify nodeProperties. Use containerProperties + * instead.

*/ inline JobDefinition& WithNodeProperties(const NodeProperties& value) { SetNodeProperties(value); return *this;} /** - *

An object with various properties that are specific to multi-node parallel - * jobs. Valid values are containerProperties, - * eksProperties, and nodeProperties. Only one can be - * specified.

If the job runs on Fargate resources, don't specify - * nodeProperties. Use containerProperties instead.

- * + *

An object with properties that are specific to multi-node parallel jobs. When + * nodeProperties is used in the job definition, it can't be used in + * addition to containerProperties, ecsProperties, or + * eksProperties.

If the job runs on Fargate resources, + * don't specify nodeProperties. Use containerProperties + * instead.

*/ inline JobDefinition& WithNodeProperties(NodeProperties&& value) { SetNodeProperties(std::move(value)); return *this;} @@ -794,44 +801,99 @@ namespace Model /** - *

An object with various properties that are specific to Amazon EKS based jobs. - * Valid values are containerProperties, eksProperties, - * and nodeProperties. Only one can be specified.

+ *

An object that contains the properties for the Amazon ECS resources of a + * job.When ecsProperties is used in the job definition, it can't be + * used in addition to containerProperties, + * eksProperties, or nodeProperties.

+ */ + inline const EcsProperties& GetEcsProperties() const{ return m_ecsProperties; } + + /** + *

An object that contains the properties for the Amazon ECS resources of a + * job.When ecsProperties is used in the job definition, it can't be + * used in addition to containerProperties, + * eksProperties, or nodeProperties.

+ */ + inline bool EcsPropertiesHasBeenSet() const { return m_ecsPropertiesHasBeenSet; } + + /** + *

An object that contains the properties for the Amazon ECS resources of a + * job.When ecsProperties is used in the job definition, it can't be + * used in addition to containerProperties, + * eksProperties, or nodeProperties.

+ */ + inline void SetEcsProperties(const EcsProperties& value) { m_ecsPropertiesHasBeenSet = true; m_ecsProperties = value; } + + /** + *

An object that contains the properties for the Amazon ECS resources of a + * job.When ecsProperties is used in the job definition, it can't be + * used in addition to containerProperties, + * eksProperties, or nodeProperties.

+ */ + inline void SetEcsProperties(EcsProperties&& value) { m_ecsPropertiesHasBeenSet = true; m_ecsProperties = std::move(value); } + + /** + *

An object that contains the properties for the Amazon ECS resources of a + * job.When ecsProperties is used in the job definition, it can't be + * used in addition to containerProperties, + * eksProperties, or nodeProperties.

+ */ + inline JobDefinition& WithEcsProperties(const EcsProperties& value) { SetEcsProperties(value); return *this;} + + /** + *

An object that contains the properties for the Amazon ECS resources of a + * job.When ecsProperties is used in the job definition, it can't be + * used in addition to containerProperties, + * eksProperties, or nodeProperties.

+ */ + inline JobDefinition& WithEcsProperties(EcsProperties&& value) { SetEcsProperties(std::move(value)); return *this;} + + + /** + *

An object with properties that are specific to Amazon EKS-based jobs. When + * eksProperties is used in the job definition, it can't be used in + * addition to containerProperties, ecsProperties, or + * nodeProperties.

*/ inline const EksProperties& GetEksProperties() const{ return m_eksProperties; } /** - *

An object with various properties that are specific to Amazon EKS based jobs. - * Valid values are containerProperties, eksProperties, - * and nodeProperties. Only one can be specified.

+ *

An object with properties that are specific to Amazon EKS-based jobs. When + * eksProperties is used in the job definition, it can't be used in + * addition to containerProperties, ecsProperties, or + * nodeProperties.

*/ inline bool EksPropertiesHasBeenSet() const { return m_eksPropertiesHasBeenSet; } /** - *

An object with various properties that are specific to Amazon EKS based jobs. - * Valid values are containerProperties, eksProperties, - * and nodeProperties. Only one can be specified.

+ *

An object with properties that are specific to Amazon EKS-based jobs. When + * eksProperties is used in the job definition, it can't be used in + * addition to containerProperties, ecsProperties, or + * nodeProperties.

*/ inline void SetEksProperties(const EksProperties& value) { m_eksPropertiesHasBeenSet = true; m_eksProperties = value; } /** - *

An object with various properties that are specific to Amazon EKS based jobs. - * Valid values are containerProperties, eksProperties, - * and nodeProperties. Only one can be specified.

+ *

An object with properties that are specific to Amazon EKS-based jobs. When + * eksProperties is used in the job definition, it can't be used in + * addition to containerProperties, ecsProperties, or + * nodeProperties.

*/ inline void SetEksProperties(EksProperties&& value) { m_eksPropertiesHasBeenSet = true; m_eksProperties = std::move(value); } /** - *

An object with various properties that are specific to Amazon EKS based jobs. - * Valid values are containerProperties, eksProperties, - * and nodeProperties. Only one can be specified.

+ *

An object with properties that are specific to Amazon EKS-based jobs. When + * eksProperties is used in the job definition, it can't be used in + * addition to containerProperties, ecsProperties, or + * nodeProperties.

*/ inline JobDefinition& WithEksProperties(const EksProperties& value) { SetEksProperties(value); return *this;} /** - *

An object with various properties that are specific to Amazon EKS based jobs. - * Valid values are containerProperties, eksProperties, - * and nodeProperties. Only one can be specified.

+ *

An object with properties that are specific to Amazon EKS-based jobs. When + * eksProperties is used in the job definition, it can't be used in + * addition to containerProperties, ecsProperties, or + * nodeProperties.

*/ inline JobDefinition& WithEksProperties(EksProperties&& value) { SetEksProperties(std::move(value)); return *this;} @@ -916,6 +978,9 @@ namespace Model Aws::Vector m_platformCapabilities; bool m_platformCapabilitiesHasBeenSet = false; + EcsProperties m_ecsProperties; + bool m_ecsPropertiesHasBeenSet = false; + EksProperties m_eksProperties; bool m_eksPropertiesHasBeenSet = false; diff --git a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/JobDetail.h b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/JobDetail.h index d7c268d90e0..4349302fd82 100644 --- a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/JobDetail.h +++ b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/JobDetail.h @@ -16,6 +16,7 @@ #include #include #include +#include #include #include #include @@ -441,7 +442,8 @@ namespace Model /** *

The Unix timestamp (in milliseconds) for when the job was created. For * non-array jobs and parent array jobs, this is when the job entered the - * SUBMITTED state. This is specifically at the time SubmitJob + * SUBMITTED state. This is specifically at the time SubmitJob * was called. For array child jobs, this is when the child job was spawned by its * parent and entered the PENDING state.

*/ @@ -450,7 +452,8 @@ namespace Model /** *

The Unix timestamp (in milliseconds) for when the job was created. For * non-array jobs and parent array jobs, this is when the job entered the - * SUBMITTED state. This is specifically at the time SubmitJob + * SUBMITTED state. This is specifically at the time SubmitJob * was called. For array child jobs, this is when the child job was spawned by its * parent and entered the PENDING state.

*/ @@ -459,7 +462,8 @@ namespace Model /** *

The Unix timestamp (in milliseconds) for when the job was created. For * non-array jobs and parent array jobs, this is when the job entered the - * SUBMITTED state. This is specifically at the time SubmitJob + * SUBMITTED state. This is specifically at the time SubmitJob * was called. For array child jobs, this is when the child job was spawned by its * parent and entered the PENDING state.

*/ @@ -468,7 +472,8 @@ namespace Model /** *

The Unix timestamp (in milliseconds) for when the job was created. For * non-array jobs and parent array jobs, this is when the job entered the - * SUBMITTED state. This is specifically at the time SubmitJob + * SUBMITTED state. This is specifically at the time SubmitJob * was called. For array child jobs, this is when the child job was spawned by its * parent and entered the PENDING state.

*/ @@ -740,37 +745,43 @@ namespace Model /** *

An object that represents the details for the container that's associated - * with the job.

+ * with the job. If the details are for a multiple-container job, this object will + * be empty.

*/ inline const ContainerDetail& GetContainer() const{ return m_container; } /** *

An object that represents the details for the container that's associated - * with the job.

+ * with the job. If the details are for a multiple-container job, this object will + * be empty.

*/ inline bool ContainerHasBeenSet() const { return m_containerHasBeenSet; } /** *

An object that represents the details for the container that's associated - * with the job.

+ * with the job. If the details are for a multiple-container job, this object will + * be empty.

*/ inline void SetContainer(const ContainerDetail& value) { m_containerHasBeenSet = true; m_container = value; } /** *

An object that represents the details for the container that's associated - * with the job.

+ * with the job. If the details are for a multiple-container job, this object will + * be empty.

*/ inline void SetContainer(ContainerDetail&& value) { m_containerHasBeenSet = true; m_container = std::move(value); } /** *

An object that represents the details for the container that's associated - * with the job.

+ * with the job. If the details are for a multiple-container job, this object will + * be empty.

*/ inline JobDetail& WithContainer(const ContainerDetail& value) { SetContainer(value); return *this;} /** *

An object that represents the details for the container that's associated - * with the job.

+ * with the job. If the details are for a multiple-container job, this object will + * be empty.

*/ inline JobDetail& WithContainer(ContainerDetail&& value) { SetContainer(std::move(value)); return *this;} @@ -1083,43 +1094,37 @@ namespace Model /** *

An object with various properties that are specific to Amazon EKS based jobs. - * Only one of container, eksProperties, or - * nodeDetails is specified.

+ *

*/ inline const EksPropertiesDetail& GetEksProperties() const{ return m_eksProperties; } /** *

An object with various properties that are specific to Amazon EKS based jobs. - * Only one of container, eksProperties, or - * nodeDetails is specified.

+ *

*/ inline bool EksPropertiesHasBeenSet() const { return m_eksPropertiesHasBeenSet; } /** *

An object with various properties that are specific to Amazon EKS based jobs. - * Only one of container, eksProperties, or - * nodeDetails is specified.

+ *

*/ inline void SetEksProperties(const EksPropertiesDetail& value) { m_eksPropertiesHasBeenSet = true; m_eksProperties = value; } /** *

An object with various properties that are specific to Amazon EKS based jobs. - * Only one of container, eksProperties, or - * nodeDetails is specified.

+ *

*/ inline void SetEksProperties(EksPropertiesDetail&& value) { m_eksPropertiesHasBeenSet = true; m_eksProperties = std::move(value); } /** *

An object with various properties that are specific to Amazon EKS based jobs. - * Only one of container, eksProperties, or - * nodeDetails is specified.

+ *

*/ inline JobDetail& WithEksProperties(const EksPropertiesDetail& value) { SetEksProperties(value); return *this;} /** *

An object with various properties that are specific to Amazon EKS based jobs. - * Only one of container, eksProperties, or - * nodeDetails is specified.

+ *

*/ inline JobDetail& WithEksProperties(EksPropertiesDetail&& value) { SetEksProperties(std::move(value)); return *this;} @@ -1165,6 +1170,37 @@ namespace Model inline JobDetail& AddEksAttempts(EksAttemptDetail&& value) { m_eksAttemptsHasBeenSet = true; m_eksAttempts.push_back(std::move(value)); return *this; } + /** + *

An object with properties that are specific to Amazon ECS-based jobs.

+ */ + inline const EcsPropertiesDetail& GetEcsProperties() const{ return m_ecsProperties; } + + /** + *

An object with properties that are specific to Amazon ECS-based jobs.

+ */ + inline bool EcsPropertiesHasBeenSet() const { return m_ecsPropertiesHasBeenSet; } + + /** + *

An object with properties that are specific to Amazon ECS-based jobs.

+ */ + inline void SetEcsProperties(const EcsPropertiesDetail& value) { m_ecsPropertiesHasBeenSet = true; m_ecsProperties = value; } + + /** + *

An object with properties that are specific to Amazon ECS-based jobs.

+ */ + inline void SetEcsProperties(EcsPropertiesDetail&& value) { m_ecsPropertiesHasBeenSet = true; m_ecsProperties = std::move(value); } + + /** + *

An object with properties that are specific to Amazon ECS-based jobs.

+ */ + inline JobDetail& WithEcsProperties(const EcsPropertiesDetail& value) { SetEcsProperties(value); return *this;} + + /** + *

An object with properties that are specific to Amazon ECS-based jobs.

+ */ + inline JobDetail& WithEcsProperties(EcsPropertiesDetail&& value) { SetEcsProperties(std::move(value)); return *this;} + + /** *

Indicates whether the job is canceled.

*/ @@ -1286,6 +1322,9 @@ namespace Model Aws::Vector m_eksAttempts; bool m_eksAttemptsHasBeenSet = false; + EcsPropertiesDetail m_ecsProperties; + bool m_ecsPropertiesHasBeenSet = false; + bool m_isCancelled; bool m_isCancelledHasBeenSet = false; diff --git a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/JobQueueDetail.h b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/JobQueueDetail.h index 0482b1a577d..5c68ba5bfe4 100644 --- a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/JobQueueDetail.h +++ b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/JobQueueDetail.h @@ -331,9 +331,9 @@ namespace Model * associated with the same compute environment. Priority is determined in * descending order. For example, a job queue with a priority value of * 10 is given scheduling preference over a job queue with a priority - * value of 1. All of the compute environments must be either EC2 - * (EC2 or SPOT) or Fargate (FARGATE or - * FARGATE_SPOT). EC2 and Fargate compute environments can't be + * value of 1. All of the compute environments must be either Amazon + * EC2 (EC2 or SPOT) or Fargate (FARGATE or + * FARGATE_SPOT). Amazon EC2 and Fargate compute environments can't be * mixed.

*/ inline int GetPriority() const{ return m_priority; } @@ -344,9 +344,9 @@ namespace Model * associated with the same compute environment. Priority is determined in * descending order. For example, a job queue with a priority value of * 10 is given scheduling preference over a job queue with a priority - * value of 1. All of the compute environments must be either EC2 - * (EC2 or SPOT) or Fargate (FARGATE or - * FARGATE_SPOT). EC2 and Fargate compute environments can't be + * value of 1. All of the compute environments must be either Amazon + * EC2 (EC2 or SPOT) or Fargate (FARGATE or + * FARGATE_SPOT). Amazon EC2 and Fargate compute environments can't be * mixed.

*/ inline bool PriorityHasBeenSet() const { return m_priorityHasBeenSet; } @@ -357,9 +357,9 @@ namespace Model * associated with the same compute environment. Priority is determined in * descending order. For example, a job queue with a priority value of * 10 is given scheduling preference over a job queue with a priority - * value of 1. All of the compute environments must be either EC2 - * (EC2 or SPOT) or Fargate (FARGATE or - * FARGATE_SPOT). EC2 and Fargate compute environments can't be + * value of 1. All of the compute environments must be either Amazon + * EC2 (EC2 or SPOT) or Fargate (FARGATE or + * FARGATE_SPOT). Amazon EC2 and Fargate compute environments can't be * mixed.

*/ inline void SetPriority(int value) { m_priorityHasBeenSet = true; m_priority = value; } @@ -370,9 +370,9 @@ namespace Model * associated with the same compute environment. Priority is determined in * descending order. For example, a job queue with a priority value of * 10 is given scheduling preference over a job queue with a priority - * value of 1. All of the compute environments must be either EC2 - * (EC2 or SPOT) or Fargate (FARGATE or - * FARGATE_SPOT). EC2 and Fargate compute environments can't be + * value of 1. All of the compute environments must be either Amazon + * EC2 (EC2 or SPOT) or Fargate (FARGATE or + * FARGATE_SPOT). Amazon EC2 and Fargate compute environments can't be * mixed.

*/ inline JobQueueDetail& WithPriority(int value) { SetPriority(value); return *this;} diff --git a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/JobSummary.h b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/JobSummary.h index 5d1a5c847c4..96e7247419f 100644 --- a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/JobSummary.h +++ b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/JobSummary.h @@ -167,36 +167,40 @@ namespace Model /** *

The Unix timestamp (in milliseconds) for when the job was created. For * non-array jobs and parent array jobs, this is when the job entered the - * SUBMITTED state (at the time SubmitJob was called). For - * array child jobs, this is when the child job was spawned by its parent and - * entered the PENDING state.

+ * SUBMITTED state (at the time SubmitJob + * was called). For array child jobs, this is when the child job was spawned by its + * parent and entered the PENDING state.

*/ inline long long GetCreatedAt() const{ return m_createdAt; } /** *

The Unix timestamp (in milliseconds) for when the job was created. For * non-array jobs and parent array jobs, this is when the job entered the - * SUBMITTED state (at the time SubmitJob was called). For - * array child jobs, this is when the child job was spawned by its parent and - * entered the PENDING state.

+ * SUBMITTED state (at the time SubmitJob + * was called). For array child jobs, this is when the child job was spawned by its + * parent and entered the PENDING state.

*/ inline bool CreatedAtHasBeenSet() const { return m_createdAtHasBeenSet; } /** *

The Unix timestamp (in milliseconds) for when the job was created. For * non-array jobs and parent array jobs, this is when the job entered the - * SUBMITTED state (at the time SubmitJob was called). For - * array child jobs, this is when the child job was spawned by its parent and - * entered the PENDING state.

+ * SUBMITTED state (at the time SubmitJob + * was called). For array child jobs, this is when the child job was spawned by its + * parent and entered the PENDING state.

*/ inline void SetCreatedAt(long long value) { m_createdAtHasBeenSet = true; m_createdAt = value; } /** *

The Unix timestamp (in milliseconds) for when the job was created. For * non-array jobs and parent array jobs, this is when the job entered the - * SUBMITTED state (at the time SubmitJob was called). For - * array child jobs, this is when the child job was spawned by its parent and - * entered the PENDING state.

+ * SUBMITTED state (at the time SubmitJob + * was called). For array child jobs, this is when the child job was spawned by its + * parent and entered the PENDING state.

*/ inline JobSummary& WithCreatedAt(long long value) { SetCreatedAt(value); return *this;} diff --git a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/NetworkConfiguration.h b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/NetworkConfiguration.h index b0e11b1e3c9..a3aa850baaf 100644 --- a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/NetworkConfiguration.h +++ b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/NetworkConfiguration.h @@ -25,7 +25,7 @@ namespace Model /** *

The network configuration for jobs that are running on Fargate resources. - * Jobs that are running on EC2 resources must not specify this + * Jobs that are running on Amazon EC2 resources must not specify this * parameter.

See Also:

AWS * API Reference

diff --git a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/NodeOverrides.h b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/NodeOverrides.h index 5812c2d68d3..44653e7a7d5 100644 --- a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/NodeOverrides.h +++ b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/NodeOverrides.h @@ -26,10 +26,11 @@ namespace Model /** *

An object that represents any node overrides to a job definition that's used - * in a SubmitJob API operation.

This parameter isn't - * applicable to jobs that are running on Fargate resources. Don't provide it for - * these jobs. Rather, use containerOverrides instead.

- *

See Also:

SubmitJob + * API operation.

This parameter isn't applicable to jobs that are + * running on Fargate resources. Don't provide it for these jobs. Rather, use + * containerOverrides instead.

See Also:

AWS * API Reference

*/ diff --git a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/NodePropertyOverride.h b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/NodePropertyOverride.h index 55cb04ff7e6..db549dffbea 100644 --- a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/NodePropertyOverride.h +++ b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/NodePropertyOverride.h @@ -7,6 +7,8 @@ #include #include #include +#include +#include #include namespace Aws @@ -26,7 +28,9 @@ namespace Model /** *

The object that represents any node overrides to a job definition that's used - * in a SubmitJob API operation.

See Also:

SubmitJob + * API operation.

See Also:

AWS * API Reference

*/ @@ -150,6 +154,98 @@ namespace Model */ inline NodePropertyOverride& WithContainerOverrides(ContainerOverrides&& value) { SetContainerOverrides(std::move(value)); return *this;} + + /** + *

An object that contains the properties that you want to replace for the + * existing Amazon ECS resources of a job.

+ */ + inline const EcsPropertiesOverride& GetEcsPropertiesOverride() const{ return m_ecsPropertiesOverride; } + + /** + *

An object that contains the properties that you want to replace for the + * existing Amazon ECS resources of a job.

+ */ + inline bool EcsPropertiesOverrideHasBeenSet() const { return m_ecsPropertiesOverrideHasBeenSet; } + + /** + *

An object that contains the properties that you want to replace for the + * existing Amazon ECS resources of a job.

+ */ + inline void SetEcsPropertiesOverride(const EcsPropertiesOverride& value) { m_ecsPropertiesOverrideHasBeenSet = true; m_ecsPropertiesOverride = value; } + + /** + *

An object that contains the properties that you want to replace for the + * existing Amazon ECS resources of a job.

+ */ + inline void SetEcsPropertiesOverride(EcsPropertiesOverride&& value) { m_ecsPropertiesOverrideHasBeenSet = true; m_ecsPropertiesOverride = std::move(value); } + + /** + *

An object that contains the properties that you want to replace for the + * existing Amazon ECS resources of a job.

+ */ + inline NodePropertyOverride& WithEcsPropertiesOverride(const EcsPropertiesOverride& value) { SetEcsPropertiesOverride(value); return *this;} + + /** + *

An object that contains the properties that you want to replace for the + * existing Amazon ECS resources of a job.

+ */ + inline NodePropertyOverride& WithEcsPropertiesOverride(EcsPropertiesOverride&& value) { SetEcsPropertiesOverride(std::move(value)); return *this;} + + + /** + *

An object that contains the instance types that you want to replace for the + * existing resources of a job.

+ */ + inline const Aws::Vector& GetInstanceTypes() const{ return m_instanceTypes; } + + /** + *

An object that contains the instance types that you want to replace for the + * existing resources of a job.

+ */ + inline bool InstanceTypesHasBeenSet() const { return m_instanceTypesHasBeenSet; } + + /** + *

An object that contains the instance types that you want to replace for the + * existing resources of a job.

+ */ + inline void SetInstanceTypes(const Aws::Vector& value) { m_instanceTypesHasBeenSet = true; m_instanceTypes = value; } + + /** + *

An object that contains the instance types that you want to replace for the + * existing resources of a job.

+ */ + inline void SetInstanceTypes(Aws::Vector&& value) { m_instanceTypesHasBeenSet = true; m_instanceTypes = std::move(value); } + + /** + *

An object that contains the instance types that you want to replace for the + * existing resources of a job.

+ */ + inline NodePropertyOverride& WithInstanceTypes(const Aws::Vector& value) { SetInstanceTypes(value); return *this;} + + /** + *

An object that contains the instance types that you want to replace for the + * existing resources of a job.

+ */ + inline NodePropertyOverride& WithInstanceTypes(Aws::Vector&& value) { SetInstanceTypes(std::move(value)); return *this;} + + /** + *

An object that contains the instance types that you want to replace for the + * existing resources of a job.

+ */ + inline NodePropertyOverride& AddInstanceTypes(const Aws::String& value) { m_instanceTypesHasBeenSet = true; m_instanceTypes.push_back(value); return *this; } + + /** + *

An object that contains the instance types that you want to replace for the + * existing resources of a job.

+ */ + inline NodePropertyOverride& AddInstanceTypes(Aws::String&& value) { m_instanceTypesHasBeenSet = true; m_instanceTypes.push_back(std::move(value)); return *this; } + + /** + *

An object that contains the instance types that you want to replace for the + * existing resources of a job.

+ */ + inline NodePropertyOverride& AddInstanceTypes(const char* value) { m_instanceTypesHasBeenSet = true; m_instanceTypes.push_back(value); return *this; } + private: Aws::String m_targetNodes; @@ -157,6 +253,12 @@ namespace Model ContainerOverrides m_containerOverrides; bool m_containerOverridesHasBeenSet = false; + + EcsPropertiesOverride m_ecsPropertiesOverride; + bool m_ecsPropertiesOverrideHasBeenSet = false; + + Aws::Vector m_instanceTypes; + bool m_instanceTypesHasBeenSet = false; }; } // namespace Model diff --git a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/NodeRangeProperty.h b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/NodeRangeProperty.h index 42e38128deb..f99afa2f09f 100644 --- a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/NodeRangeProperty.h +++ b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/NodeRangeProperty.h @@ -7,6 +7,8 @@ #include #include #include +#include +#include #include namespace Aws @@ -25,8 +27,8 @@ namespace Model { /** - *

An object that represents the properties of the node range for a multi-node - * parallel job.

See Also:

This is an object that represents the properties of the node range for a + * multi-node parallel job.

See Also:

AWS * API Reference

*/ @@ -166,6 +168,116 @@ namespace Model */ inline NodeRangeProperty& WithContainer(ContainerProperties&& value) { SetContainer(std::move(value)); return *this;} + + /** + *

The instance types of the underlying host infrastructure of a multi-node + * parallel job.

This parameter isn't applicable to jobs that are + * running on Fargate resources.

In addition, this list object is currently + * limited to one element.

+ */ + inline const Aws::Vector& GetInstanceTypes() const{ return m_instanceTypes; } + + /** + *

The instance types of the underlying host infrastructure of a multi-node + * parallel job.

This parameter isn't applicable to jobs that are + * running on Fargate resources.

In addition, this list object is currently + * limited to one element.

+ */ + inline bool InstanceTypesHasBeenSet() const { return m_instanceTypesHasBeenSet; } + + /** + *

The instance types of the underlying host infrastructure of a multi-node + * parallel job.

This parameter isn't applicable to jobs that are + * running on Fargate resources.

In addition, this list object is currently + * limited to one element.

+ */ + inline void SetInstanceTypes(const Aws::Vector& value) { m_instanceTypesHasBeenSet = true; m_instanceTypes = value; } + + /** + *

The instance types of the underlying host infrastructure of a multi-node + * parallel job.

This parameter isn't applicable to jobs that are + * running on Fargate resources.

In addition, this list object is currently + * limited to one element.

+ */ + inline void SetInstanceTypes(Aws::Vector&& value) { m_instanceTypesHasBeenSet = true; m_instanceTypes = std::move(value); } + + /** + *

The instance types of the underlying host infrastructure of a multi-node + * parallel job.

This parameter isn't applicable to jobs that are + * running on Fargate resources.

In addition, this list object is currently + * limited to one element.

+ */ + inline NodeRangeProperty& WithInstanceTypes(const Aws::Vector& value) { SetInstanceTypes(value); return *this;} + + /** + *

The instance types of the underlying host infrastructure of a multi-node + * parallel job.

This parameter isn't applicable to jobs that are + * running on Fargate resources.

In addition, this list object is currently + * limited to one element.

+ */ + inline NodeRangeProperty& WithInstanceTypes(Aws::Vector&& value) { SetInstanceTypes(std::move(value)); return *this;} + + /** + *

The instance types of the underlying host infrastructure of a multi-node + * parallel job.

This parameter isn't applicable to jobs that are + * running on Fargate resources.

In addition, this list object is currently + * limited to one element.

+ */ + inline NodeRangeProperty& AddInstanceTypes(const Aws::String& value) { m_instanceTypesHasBeenSet = true; m_instanceTypes.push_back(value); return *this; } + + /** + *

The instance types of the underlying host infrastructure of a multi-node + * parallel job.

This parameter isn't applicable to jobs that are + * running on Fargate resources.

In addition, this list object is currently + * limited to one element.

+ */ + inline NodeRangeProperty& AddInstanceTypes(Aws::String&& value) { m_instanceTypesHasBeenSet = true; m_instanceTypes.push_back(std::move(value)); return *this; } + + /** + *

The instance types of the underlying host infrastructure of a multi-node + * parallel job.

This parameter isn't applicable to jobs that are + * running on Fargate resources.

In addition, this list object is currently + * limited to one element.

+ */ + inline NodeRangeProperty& AddInstanceTypes(const char* value) { m_instanceTypesHasBeenSet = true; m_instanceTypes.push_back(value); return *this; } + + + /** + *

This is an object that represents the properties of the node range for a + * multi-node parallel job.

+ */ + inline const EcsProperties& GetEcsProperties() const{ return m_ecsProperties; } + + /** + *

This is an object that represents the properties of the node range for a + * multi-node parallel job.

+ */ + inline bool EcsPropertiesHasBeenSet() const { return m_ecsPropertiesHasBeenSet; } + + /** + *

This is an object that represents the properties of the node range for a + * multi-node parallel job.

+ */ + inline void SetEcsProperties(const EcsProperties& value) { m_ecsPropertiesHasBeenSet = true; m_ecsProperties = value; } + + /** + *

This is an object that represents the properties of the node range for a + * multi-node parallel job.

+ */ + inline void SetEcsProperties(EcsProperties&& value) { m_ecsPropertiesHasBeenSet = true; m_ecsProperties = std::move(value); } + + /** + *

This is an object that represents the properties of the node range for a + * multi-node parallel job.

+ */ + inline NodeRangeProperty& WithEcsProperties(const EcsProperties& value) { SetEcsProperties(value); return *this;} + + /** + *

This is an object that represents the properties of the node range for a + * multi-node parallel job.

+ */ + inline NodeRangeProperty& WithEcsProperties(EcsProperties&& value) { SetEcsProperties(std::move(value)); return *this;} + private: Aws::String m_targetNodes; @@ -173,6 +285,12 @@ namespace Model ContainerProperties m_container; bool m_containerHasBeenSet = false; + + Aws::Vector m_instanceTypes; + bool m_instanceTypesHasBeenSet = false; + + EcsProperties m_ecsProperties; + bool m_ecsPropertiesHasBeenSet = false; }; } // namespace Model diff --git a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/RegisterJobDefinitionRequest.h b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/RegisterJobDefinitionRequest.h index 6ffa6c0b403..5f915ce5aba 100644 --- a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/RegisterJobDefinitionRequest.h +++ b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/RegisterJobDefinitionRequest.h @@ -15,6 +15,7 @@ #include #include #include +#include #include #include @@ -107,8 +108,12 @@ namespace Model * jobs, see Creating * a multi-node parallel job definition in the Batch User Guide.

- *

If the job is run on Fargate resources, then multinode - * isn't supported.

+ *
  • If the value is container, then one of the following + * is required: containerProperties, ecsProperties, or + * eksProperties.

  • If the value is + * multinode, then nodeProperties is required.

  • + *

If the job is run on Fargate resources, then + * multinode isn't supported.

*/ inline const JobDefinitionType& GetType() const{ return m_type; } @@ -117,8 +122,12 @@ namespace Model * jobs, see Creating * a multi-node parallel job definition in the Batch User Guide.

- *

If the job is run on Fargate resources, then multinode - * isn't supported.

+ *
  • If the value is container, then one of the following + * is required: containerProperties, ecsProperties, or + * eksProperties.

  • If the value is + * multinode, then nodeProperties is required.

  • + *

If the job is run on Fargate resources, then + * multinode isn't supported.

*/ inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; } @@ -127,8 +136,12 @@ namespace Model * jobs, see Creating * a multi-node parallel job definition in the Batch User Guide.

- *

If the job is run on Fargate resources, then multinode - * isn't supported.

+ *
  • If the value is container, then one of the following + * is required: containerProperties, ecsProperties, or + * eksProperties.

  • If the value is + * multinode, then nodeProperties is required.

  • + *

If the job is run on Fargate resources, then + * multinode isn't supported.

*/ inline void SetType(const JobDefinitionType& value) { m_typeHasBeenSet = true; m_type = value; } @@ -137,8 +150,12 @@ namespace Model * jobs, see Creating * a multi-node parallel job definition in the Batch User Guide.

- *

If the job is run on Fargate resources, then multinode - * isn't supported.

+ *
  • If the value is container, then one of the following + * is required: containerProperties, ecsProperties, or + * eksProperties.

  • If the value is + * multinode, then nodeProperties is required.

  • + *

If the job is run on Fargate resources, then + * multinode isn't supported.

*/ inline void SetType(JobDefinitionType&& value) { m_typeHasBeenSet = true; m_type = std::move(value); } @@ -147,8 +164,12 @@ namespace Model * jobs, see Creating * a multi-node parallel job definition in the Batch User Guide.

- *

If the job is run on Fargate resources, then multinode - * isn't supported.

+ *
  • If the value is container, then one of the following + * is required: containerProperties, ecsProperties, or + * eksProperties.

  • If the value is + * multinode, then nodeProperties is required.

  • + *

If the job is run on Fargate resources, then + * multinode isn't supported.

*/ inline RegisterJobDefinitionRequest& WithType(const JobDefinitionType& value) { SetType(value); return *this;} @@ -157,8 +178,12 @@ namespace Model * jobs, see Creating * a multi-node parallel job definition in the Batch User Guide.

- *

If the job is run on Fargate resources, then multinode - * isn't supported.

+ *
  • If the value is container, then one of the following + * is required: containerProperties, ecsProperties, or + * eksProperties.

  • If the value is + * multinode, then nodeProperties is required.

  • + *

If the job is run on Fargate resources, then + * multinode isn't supported.

*/ inline RegisterJobDefinitionRequest& WithType(JobDefinitionType&& value) { SetType(std::move(value)); return *this;} @@ -306,66 +331,66 @@ namespace Model /** - *

An object with various properties specific to Amazon ECS based single-node + *

An object with properties specific to Amazon ECS-based single-node * container-based jobs. If the job definition's type parameter is * container, then you must specify either * containerProperties or nodeProperties. This must not - * be specified for Amazon EKS based job definitions.

If the job runs + * be specified for Amazon EKS-based job definitions.

If the job runs * on Fargate resources, then you must not specify nodeProperties; use * only containerProperties.

*/ inline const ContainerProperties& GetContainerProperties() const{ return m_containerProperties; } /** - *

An object with various properties specific to Amazon ECS based single-node + *

An object with properties specific to Amazon ECS-based single-node * container-based jobs. If the job definition's type parameter is * container, then you must specify either * containerProperties or nodeProperties. This must not - * be specified for Amazon EKS based job definitions.

If the job runs + * be specified for Amazon EKS-based job definitions.

If the job runs * on Fargate resources, then you must not specify nodeProperties; use * only containerProperties.

*/ inline bool ContainerPropertiesHasBeenSet() const { return m_containerPropertiesHasBeenSet; } /** - *

An object with various properties specific to Amazon ECS based single-node + *

An object with properties specific to Amazon ECS-based single-node * container-based jobs. If the job definition's type parameter is * container, then you must specify either * containerProperties or nodeProperties. This must not - * be specified for Amazon EKS based job definitions.

If the job runs + * be specified for Amazon EKS-based job definitions.

If the job runs * on Fargate resources, then you must not specify nodeProperties; use * only containerProperties.

*/ inline void SetContainerProperties(const ContainerProperties& value) { m_containerPropertiesHasBeenSet = true; m_containerProperties = value; } /** - *

An object with various properties specific to Amazon ECS based single-node + *

An object with properties specific to Amazon ECS-based single-node * container-based jobs. If the job definition's type parameter is * container, then you must specify either * containerProperties or nodeProperties. This must not - * be specified for Amazon EKS based job definitions.

If the job runs + * be specified for Amazon EKS-based job definitions.

If the job runs * on Fargate resources, then you must not specify nodeProperties; use * only containerProperties.

*/ inline void SetContainerProperties(ContainerProperties&& value) { m_containerPropertiesHasBeenSet = true; m_containerProperties = std::move(value); } /** - *

An object with various properties specific to Amazon ECS based single-node + *

An object with properties specific to Amazon ECS-based single-node * container-based jobs. If the job definition's type parameter is * container, then you must specify either * containerProperties or nodeProperties. This must not - * be specified for Amazon EKS based job definitions.

If the job runs + * be specified for Amazon EKS-based job definitions.

If the job runs * on Fargate resources, then you must not specify nodeProperties; use * only containerProperties.

*/ inline RegisterJobDefinitionRequest& WithContainerProperties(const ContainerProperties& value) { SetContainerProperties(value); return *this;} /** - *

An object with various properties specific to Amazon ECS based single-node + *

An object with properties specific to Amazon ECS-based single-node * container-based jobs. If the job definition's type parameter is * container, then you must specify either * containerProperties or nodeProperties. This must not - * be specified for Amazon EKS based job definitions.

If the job runs + * be specified for Amazon EKS-based job definitions.

If the job runs * on Fargate resources, then you must not specify nodeProperties; use * only containerProperties.

*/ @@ -373,92 +398,80 @@ namespace Model /** - *

An object with various properties specific to multi-node parallel jobs. If - * you specify node properties for a job, it becomes a multi-node parallel job. For + *

An object with properties specific to multi-node parallel jobs. If you + * specify node properties for a job, it becomes a multi-node parallel job. For * more information, see Multi-node - * Parallel Jobs in the Batch User Guide. If the job definition's - * type parameter is container, then you must specify - * either containerProperties or nodeProperties.

- *

If the job runs on Fargate resources, then you must not specify - * nodeProperties; use containerProperties instead.

- *

If the job runs on Amazon EKS resources, then you must not - * specify nodeProperties.

+ * Parallel Jobs in the Batch User Guide.

If the job runs + * on Fargate resources, then you must not specify nodeProperties; use + * containerProperties instead.

If the job runs + * on Amazon EKS resources, then you must not specify + * nodeProperties.

*/ inline const NodeProperties& GetNodeProperties() const{ return m_nodeProperties; } /** - *

An object with various properties specific to multi-node parallel jobs. If - * you specify node properties for a job, it becomes a multi-node parallel job. For + *

An object with properties specific to multi-node parallel jobs. If you + * specify node properties for a job, it becomes a multi-node parallel job. For * more information, see Multi-node - * Parallel Jobs in the Batch User Guide. If the job definition's - * type parameter is container, then you must specify - * either containerProperties or nodeProperties.

- *

If the job runs on Fargate resources, then you must not specify - * nodeProperties; use containerProperties instead.

- *

If the job runs on Amazon EKS resources, then you must not - * specify nodeProperties.

+ * Parallel Jobs in the Batch User Guide.

If the job runs + * on Fargate resources, then you must not specify nodeProperties; use + * containerProperties instead.

If the job runs + * on Amazon EKS resources, then you must not specify + * nodeProperties.

*/ inline bool NodePropertiesHasBeenSet() const { return m_nodePropertiesHasBeenSet; } /** - *

An object with various properties specific to multi-node parallel jobs. If - * you specify node properties for a job, it becomes a multi-node parallel job. For + *

An object with properties specific to multi-node parallel jobs. If you + * specify node properties for a job, it becomes a multi-node parallel job. For * more information, see Multi-node - * Parallel Jobs in the Batch User Guide. If the job definition's - * type parameter is container, then you must specify - * either containerProperties or nodeProperties.

- *

If the job runs on Fargate resources, then you must not specify - * nodeProperties; use containerProperties instead.

- *

If the job runs on Amazon EKS resources, then you must not - * specify nodeProperties.

+ * Parallel Jobs in the Batch User Guide.

If the job runs + * on Fargate resources, then you must not specify nodeProperties; use + * containerProperties instead.

If the job runs + * on Amazon EKS resources, then you must not specify + * nodeProperties.

*/ inline void SetNodeProperties(const NodeProperties& value) { m_nodePropertiesHasBeenSet = true; m_nodeProperties = value; } /** - *

An object with various properties specific to multi-node parallel jobs. If - * you specify node properties for a job, it becomes a multi-node parallel job. For + *

An object with properties specific to multi-node parallel jobs. If you + * specify node properties for a job, it becomes a multi-node parallel job. For * more information, see Multi-node - * Parallel Jobs in the Batch User Guide. If the job definition's - * type parameter is container, then you must specify - * either containerProperties or nodeProperties.

- *

If the job runs on Fargate resources, then you must not specify - * nodeProperties; use containerProperties instead.

- *

If the job runs on Amazon EKS resources, then you must not - * specify nodeProperties.

+ * Parallel Jobs in the Batch User Guide.

If the job runs + * on Fargate resources, then you must not specify nodeProperties; use + * containerProperties instead.

If the job runs + * on Amazon EKS resources, then you must not specify + * nodeProperties.

*/ inline void SetNodeProperties(NodeProperties&& value) { m_nodePropertiesHasBeenSet = true; m_nodeProperties = std::move(value); } /** - *

An object with various properties specific to multi-node parallel jobs. If - * you specify node properties for a job, it becomes a multi-node parallel job. For + *

An object with properties specific to multi-node parallel jobs. If you + * specify node properties for a job, it becomes a multi-node parallel job. For * more information, see Multi-node - * Parallel Jobs in the Batch User Guide. If the job definition's - * type parameter is container, then you must specify - * either containerProperties or nodeProperties.

- *

If the job runs on Fargate resources, then you must not specify - * nodeProperties; use containerProperties instead.

- *

If the job runs on Amazon EKS resources, then you must not - * specify nodeProperties.

+ * Parallel Jobs in the Batch User Guide.

If the job runs + * on Fargate resources, then you must not specify nodeProperties; use + * containerProperties instead.

If the job runs + * on Amazon EKS resources, then you must not specify + * nodeProperties.

*/ inline RegisterJobDefinitionRequest& WithNodeProperties(const NodeProperties& value) { SetNodeProperties(value); return *this;} /** - *

An object with various properties specific to multi-node parallel jobs. If - * you specify node properties for a job, it becomes a multi-node parallel job. For + *

An object with properties specific to multi-node parallel jobs. If you + * specify node properties for a job, it becomes a multi-node parallel job. For * more information, see Multi-node - * Parallel Jobs in the Batch User Guide. If the job definition's - * type parameter is container, then you must specify - * either containerProperties or nodeProperties.

- *

If the job runs on Fargate resources, then you must not specify - * nodeProperties; use containerProperties instead.

- *

If the job runs on Amazon EKS resources, then you must not - * specify nodeProperties.

+ * Parallel Jobs in the Batch User Guide.

If the job runs + * on Fargate resources, then you must not specify nodeProperties; use + * containerProperties instead.

If the job runs + * on Amazon EKS resources, then you must not specify + * nodeProperties.

*/ inline RegisterJobDefinitionRequest& WithNodeProperties(NodeProperties&& value) { SetNodeProperties(std::move(value)); return *this;} @@ -826,41 +839,78 @@ namespace Model /** - *

An object with various properties that are specific to Amazon EKS based jobs. - * This must not be specified for Amazon ECS based job definitions.

+ *

An object with properties that are specific to Amazon EKS-based jobs. This + * must not be specified for Amazon ECS based job definitions.

*/ inline const EksProperties& GetEksProperties() const{ return m_eksProperties; } /** - *

An object with various properties that are specific to Amazon EKS based jobs. - * This must not be specified for Amazon ECS based job definitions.

+ *

An object with properties that are specific to Amazon EKS-based jobs. This + * must not be specified for Amazon ECS based job definitions.

*/ inline bool EksPropertiesHasBeenSet() const { return m_eksPropertiesHasBeenSet; } /** - *

An object with various properties that are specific to Amazon EKS based jobs. - * This must not be specified for Amazon ECS based job definitions.

+ *

An object with properties that are specific to Amazon EKS-based jobs. This + * must not be specified for Amazon ECS based job definitions.

*/ inline void SetEksProperties(const EksProperties& value) { m_eksPropertiesHasBeenSet = true; m_eksProperties = value; } /** - *

An object with various properties that are specific to Amazon EKS based jobs. - * This must not be specified for Amazon ECS based job definitions.

+ *

An object with properties that are specific to Amazon EKS-based jobs. This + * must not be specified for Amazon ECS based job definitions.

*/ inline void SetEksProperties(EksProperties&& value) { m_eksPropertiesHasBeenSet = true; m_eksProperties = std::move(value); } /** - *

An object with various properties that are specific to Amazon EKS based jobs. - * This must not be specified for Amazon ECS based job definitions.

+ *

An object with properties that are specific to Amazon EKS-based jobs. This + * must not be specified for Amazon ECS based job definitions.

*/ inline RegisterJobDefinitionRequest& WithEksProperties(const EksProperties& value) { SetEksProperties(value); return *this;} /** - *

An object with various properties that are specific to Amazon EKS based jobs. - * This must not be specified for Amazon ECS based job definitions.

+ *

An object with properties that are specific to Amazon EKS-based jobs. This + * must not be specified for Amazon ECS based job definitions.

*/ inline RegisterJobDefinitionRequest& WithEksProperties(EksProperties&& value) { SetEksProperties(std::move(value)); return *this;} + + /** + *

An object with properties that are specific to Amazon ECS-based jobs. This + * must not be specified for Amazon EKS-based job definitions.

+ */ + inline const EcsProperties& GetEcsProperties() const{ return m_ecsProperties; } + + /** + *

An object with properties that are specific to Amazon ECS-based jobs. This + * must not be specified for Amazon EKS-based job definitions.

+ */ + inline bool EcsPropertiesHasBeenSet() const { return m_ecsPropertiesHasBeenSet; } + + /** + *

An object with properties that are specific to Amazon ECS-based jobs. This + * must not be specified for Amazon EKS-based job definitions.

+ */ + inline void SetEcsProperties(const EcsProperties& value) { m_ecsPropertiesHasBeenSet = true; m_ecsProperties = value; } + + /** + *

An object with properties that are specific to Amazon ECS-based jobs. This + * must not be specified for Amazon EKS-based job definitions.

+ */ + inline void SetEcsProperties(EcsProperties&& value) { m_ecsPropertiesHasBeenSet = true; m_ecsProperties = std::move(value); } + + /** + *

An object with properties that are specific to Amazon ECS-based jobs. This + * must not be specified for Amazon EKS-based job definitions.

+ */ + inline RegisterJobDefinitionRequest& WithEcsProperties(const EcsProperties& value) { SetEcsProperties(value); return *this;} + + /** + *

An object with properties that are specific to Amazon ECS-based jobs. This + * must not be specified for Amazon EKS-based job definitions.

+ */ + inline RegisterJobDefinitionRequest& WithEcsProperties(EcsProperties&& value) { SetEcsProperties(std::move(value)); return *this;} + private: Aws::String m_jobDefinitionName; @@ -898,6 +948,9 @@ namespace Model EksProperties m_eksProperties; bool m_eksPropertiesHasBeenSet = false; + + EcsProperties m_ecsProperties; + bool m_ecsPropertiesHasBeenSet = false; }; } // namespace Model diff --git a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/ResourceRequirement.h b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/ResourceRequirement.h index 34e86f2f99f..f5e165a58b7 100644 --- a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/ResourceRequirement.h +++ b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/ResourceRequirement.h @@ -49,9 +49,9 @@ namespace Model * job is launched on.

GPUs aren't available for jobs that are * running on Fargate resources.

type="MEMORY"
*

The memory hard limit (in MiB) present to the container. This parameter is - * supported for jobs that are running on EC2 resources. If your container attempts - * to exceed the memory specified, the container is terminated. This parameter maps - * to Memory in the Memory in the Create a * container section of the Docker Remote API and the @@ -96,9 +96,9 @@ namespace Model * href="https://docs.docker.com/engine/api/v1.23/">Docker Remote API and the * --cpu-shares option to docker run. Each vCPU - * is equivalent to 1,024 CPU shares. For EC2 resources, you must specify at least - * one vCPU. This is required but can be specified in several places; it must be - * specified for each node at least once.

The default for the Fargate + * is equivalent to 1,024 CPU shares. For Amazon EC2 resources, you must specify at + * least one vCPU. This is required but can be specified in several places; it must + * be specified for each node at least once.

The default for the Fargate * On-Demand vCPU resource count quota is 6 vCPUs. For more information about * Fargate quotas, see Fargate @@ -131,9 +131,9 @@ namespace Model * job is launched on.

GPUs aren't available for jobs that are * running on Fargate resources.

type="MEMORY"
*

The memory hard limit (in MiB) present to the container. This parameter is - * supported for jobs that are running on EC2 resources. If your container attempts - * to exceed the memory specified, the container is terminated. This parameter maps - * to Memory in the Memory in the Create a * container section of the Docker Remote API and the @@ -178,9 +178,9 @@ namespace Model * href="https://docs.docker.com/engine/api/v1.23/">Docker Remote API and the * --cpu-shares option to docker run. Each vCPU - * is equivalent to 1,024 CPU shares. For EC2 resources, you must specify at least - * one vCPU. This is required but can be specified in several places; it must be - * specified for each node at least once.

The default for the Fargate + * is equivalent to 1,024 CPU shares. For Amazon EC2 resources, you must specify at + * least one vCPU. This is required but can be specified in several places; it must + * be specified for each node at least once.

The default for the Fargate * On-Demand vCPU resource count quota is 6 vCPUs. For more information about * Fargate quotas, see Fargate @@ -213,9 +213,9 @@ namespace Model * job is launched on.

GPUs aren't available for jobs that are * running on Fargate resources.

type="MEMORY"
*

The memory hard limit (in MiB) present to the container. This parameter is - * supported for jobs that are running on EC2 resources. If your container attempts - * to exceed the memory specified, the container is terminated. This parameter maps - * to Memory in the Memory in the Create a * container section of the Docker Remote API and the @@ -260,9 +260,9 @@ namespace Model * href="https://docs.docker.com/engine/api/v1.23/">Docker Remote API and the * --cpu-shares option to docker run. Each vCPU - * is equivalent to 1,024 CPU shares. For EC2 resources, you must specify at least - * one vCPU. This is required but can be specified in several places; it must be - * specified for each node at least once.

The default for the Fargate + * is equivalent to 1,024 CPU shares. For Amazon EC2 resources, you must specify at + * least one vCPU. This is required but can be specified in several places; it must + * be specified for each node at least once.

The default for the Fargate * On-Demand vCPU resource count quota is 6 vCPUs. For more information about * Fargate quotas, see Fargate @@ -295,9 +295,9 @@ namespace Model * job is launched on.

GPUs aren't available for jobs that are * running on Fargate resources.

type="MEMORY"
*

The memory hard limit (in MiB) present to the container. This parameter is - * supported for jobs that are running on EC2 resources. If your container attempts - * to exceed the memory specified, the container is terminated. This parameter maps - * to Memory in the Memory in the Create a * container section of the Docker Remote API and the @@ -342,9 +342,9 @@ namespace Model * href="https://docs.docker.com/engine/api/v1.23/">Docker Remote API and the * --cpu-shares option to docker run. Each vCPU - * is equivalent to 1,024 CPU shares. For EC2 resources, you must specify at least - * one vCPU. This is required but can be specified in several places; it must be - * specified for each node at least once.

The default for the Fargate + * is equivalent to 1,024 CPU shares. For Amazon EC2 resources, you must specify at + * least one vCPU. This is required but can be specified in several places; it must + * be specified for each node at least once.

The default for the Fargate * On-Demand vCPU resource count quota is 6 vCPUs. For more information about * Fargate quotas, see Fargate @@ -377,9 +377,9 @@ namespace Model * job is launched on.

GPUs aren't available for jobs that are * running on Fargate resources.

type="MEMORY"
*

The memory hard limit (in MiB) present to the container. This parameter is - * supported for jobs that are running on EC2 resources. If your container attempts - * to exceed the memory specified, the container is terminated. This parameter maps - * to Memory in the Memory in the Create a * container section of the Docker Remote API and the @@ -424,9 +424,9 @@ namespace Model * href="https://docs.docker.com/engine/api/v1.23/">Docker Remote API and the * --cpu-shares option to docker run. Each vCPU - * is equivalent to 1,024 CPU shares. For EC2 resources, you must specify at least - * one vCPU. This is required but can be specified in several places; it must be - * specified for each node at least once.

The default for the Fargate + * is equivalent to 1,024 CPU shares. For Amazon EC2 resources, you must specify at + * least one vCPU. This is required but can be specified in several places; it must + * be specified for each node at least once.

The default for the Fargate * On-Demand vCPU resource count quota is 6 vCPUs. For more information about * Fargate quotas, see Fargate @@ -459,9 +459,9 @@ namespace Model * job is launched on.

GPUs aren't available for jobs that are * running on Fargate resources.

type="MEMORY"
*

The memory hard limit (in MiB) present to the container. This parameter is - * supported for jobs that are running on EC2 resources. If your container attempts - * to exceed the memory specified, the container is terminated. This parameter maps - * to Memory in the Memory in the Create a * container section of the Docker Remote API and the @@ -506,9 +506,9 @@ namespace Model * href="https://docs.docker.com/engine/api/v1.23/">Docker Remote API and the * --cpu-shares option to docker run. Each vCPU - * is equivalent to 1,024 CPU shares. For EC2 resources, you must specify at least - * one vCPU. This is required but can be specified in several places; it must be - * specified for each node at least once.

The default for the Fargate + * is equivalent to 1,024 CPU shares. For Amazon EC2 resources, you must specify at + * least one vCPU. This is required but can be specified in several places; it must + * be specified for each node at least once.

The default for the Fargate * On-Demand vCPU resource count quota is 6 vCPUs. For more information about * Fargate quotas, see Fargate @@ -541,9 +541,9 @@ namespace Model * job is launched on.

GPUs aren't available for jobs that are * running on Fargate resources.

type="MEMORY"
*

The memory hard limit (in MiB) present to the container. This parameter is - * supported for jobs that are running on EC2 resources. If your container attempts - * to exceed the memory specified, the container is terminated. This parameter maps - * to Memory in the Memory in the Create a * container section of the Docker Remote API and the @@ -588,9 +588,9 @@ namespace Model * href="https://docs.docker.com/engine/api/v1.23/">Docker Remote API and the * --cpu-shares option to docker run. Each vCPU - * is equivalent to 1,024 CPU shares. For EC2 resources, you must specify at least - * one vCPU. This is required but can be specified in several places; it must be - * specified for each node at least once.

The default for the Fargate + * is equivalent to 1,024 CPU shares. For Amazon EC2 resources, you must specify at + * least one vCPU. This is required but can be specified in several places; it must + * be specified for each node at least once.

The default for the Fargate * On-Demand vCPU resource count quota is 6 vCPUs. For more information about * Fargate quotas, see Fargate @@ -623,9 +623,9 @@ namespace Model * job is launched on.

GPUs aren't available for jobs that are * running on Fargate resources.

type="MEMORY"
*

The memory hard limit (in MiB) present to the container. This parameter is - * supported for jobs that are running on EC2 resources. If your container attempts - * to exceed the memory specified, the container is terminated. This parameter maps - * to Memory in the Memory in the Create a * container section of the Docker Remote API and the @@ -670,9 +670,9 @@ namespace Model * href="https://docs.docker.com/engine/api/v1.23/">Docker Remote API and the * --cpu-shares option to docker run. Each vCPU - * is equivalent to 1,024 CPU shares. For EC2 resources, you must specify at least - * one vCPU. This is required but can be specified in several places; it must be - * specified for each node at least once.

The default for the Fargate + * is equivalent to 1,024 CPU shares. For Amazon EC2 resources, you must specify at + * least one vCPU. This is required but can be specified in several places; it must + * be specified for each node at least once.

The default for the Fargate * On-Demand vCPU resource count quota is 6 vCPUs. For more information about * Fargate quotas, see Fargate diff --git a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/SubmitJobRequest.h b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/SubmitJobRequest.h index b1c1b786764..16cbe20bad7 100644 --- a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/SubmitJobRequest.h +++ b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/SubmitJobRequest.h @@ -15,6 +15,7 @@ #include #include #include +#include #include #include @@ -604,9 +605,9 @@ namespace Model /** - *

An object with various properties that override the defaults for the job - * definition that specify the name of a container in the specified job definition - * and the overrides it should receive. You can override the default command for a + *

An object with properties that override the defaults for the job definition + * that specify the name of a container in the specified job definition and the + * overrides it should receive. You can override the default command for a * container, which is specified in the job definition or the Docker image, with a * command override. You can also override existing environment * variables on a container or add new environment variables to it with an @@ -615,9 +616,9 @@ namespace Model inline const ContainerOverrides& GetContainerOverrides() const{ return m_containerOverrides; } /** - *

An object with various properties that override the defaults for the job - * definition that specify the name of a container in the specified job definition - * and the overrides it should receive. You can override the default command for a + *

An object with properties that override the defaults for the job definition + * that specify the name of a container in the specified job definition and the + * overrides it should receive. You can override the default command for a * container, which is specified in the job definition or the Docker image, with a * command override. You can also override existing environment * variables on a container or add new environment variables to it with an @@ -626,9 +627,9 @@ namespace Model inline bool ContainerOverridesHasBeenSet() const { return m_containerOverridesHasBeenSet; } /** - *

An object with various properties that override the defaults for the job - * definition that specify the name of a container in the specified job definition - * and the overrides it should receive. You can override the default command for a + *

An object with properties that override the defaults for the job definition + * that specify the name of a container in the specified job definition and the + * overrides it should receive. You can override the default command for a * container, which is specified in the job definition or the Docker image, with a * command override. You can also override existing environment * variables on a container or add new environment variables to it with an @@ -637,9 +638,9 @@ namespace Model inline void SetContainerOverrides(const ContainerOverrides& value) { m_containerOverridesHasBeenSet = true; m_containerOverrides = value; } /** - *

An object with various properties that override the defaults for the job - * definition that specify the name of a container in the specified job definition - * and the overrides it should receive. You can override the default command for a + *

An object with properties that override the defaults for the job definition + * that specify the name of a container in the specified job definition and the + * overrides it should receive. You can override the default command for a * container, which is specified in the job definition or the Docker image, with a * command override. You can also override existing environment * variables on a container or add new environment variables to it with an @@ -648,9 +649,9 @@ namespace Model inline void SetContainerOverrides(ContainerOverrides&& value) { m_containerOverridesHasBeenSet = true; m_containerOverrides = std::move(value); } /** - *

An object with various properties that override the defaults for the job - * definition that specify the name of a container in the specified job definition - * and the overrides it should receive. You can override the default command for a + *

An object with properties that override the defaults for the job definition + * that specify the name of a container in the specified job definition and the + * overrides it should receive. You can override the default command for a * container, which is specified in the job definition or the Docker image, with a * command override. You can also override existing environment * variables on a container or add new environment variables to it with an @@ -659,9 +660,9 @@ namespace Model inline SubmitJobRequest& WithContainerOverrides(const ContainerOverrides& value) { SetContainerOverrides(value); return *this;} /** - *

An object with various properties that override the defaults for the job - * definition that specify the name of a container in the specified job definition - * and the overrides it should receive. You can override the default command for a + *

An object with properties that override the defaults for the job definition + * that specify the name of a container in the specified job definition and the + * overrides it should receive. You can override the default command for a * container, which is specified in the job definition or the Docker image, with a * command override. You can also override existing environment * variables on a container or add new environment variables to it with an @@ -1018,47 +1019,78 @@ namespace Model /** - *

An object that can only be specified for jobs that are run on Amazon EKS - * resources with various properties that override defaults for the job - * definition.

+ *

An object, with properties that override defaults for the job definition, can + * only be specified for jobs that are run on Amazon EKS resources.

*/ inline const EksPropertiesOverride& GetEksPropertiesOverride() const{ return m_eksPropertiesOverride; } /** - *

An object that can only be specified for jobs that are run on Amazon EKS - * resources with various properties that override defaults for the job - * definition.

+ *

An object, with properties that override defaults for the job definition, can + * only be specified for jobs that are run on Amazon EKS resources.

*/ inline bool EksPropertiesOverrideHasBeenSet() const { return m_eksPropertiesOverrideHasBeenSet; } /** - *

An object that can only be specified for jobs that are run on Amazon EKS - * resources with various properties that override defaults for the job - * definition.

+ *

An object, with properties that override defaults for the job definition, can + * only be specified for jobs that are run on Amazon EKS resources.

*/ inline void SetEksPropertiesOverride(const EksPropertiesOverride& value) { m_eksPropertiesOverrideHasBeenSet = true; m_eksPropertiesOverride = value; } /** - *

An object that can only be specified for jobs that are run on Amazon EKS - * resources with various properties that override defaults for the job - * definition.

+ *

An object, with properties that override defaults for the job definition, can + * only be specified for jobs that are run on Amazon EKS resources.

*/ inline void SetEksPropertiesOverride(EksPropertiesOverride&& value) { m_eksPropertiesOverrideHasBeenSet = true; m_eksPropertiesOverride = std::move(value); } /** - *

An object that can only be specified for jobs that are run on Amazon EKS - * resources with various properties that override defaults for the job - * definition.

+ *

An object, with properties that override defaults for the job definition, can + * only be specified for jobs that are run on Amazon EKS resources.

*/ inline SubmitJobRequest& WithEksPropertiesOverride(const EksPropertiesOverride& value) { SetEksPropertiesOverride(value); return *this;} /** - *

An object that can only be specified for jobs that are run on Amazon EKS - * resources with various properties that override defaults for the job - * definition.

+ *

An object, with properties that override defaults for the job definition, can + * only be specified for jobs that are run on Amazon EKS resources.

*/ inline SubmitJobRequest& WithEksPropertiesOverride(EksPropertiesOverride&& value) { SetEksPropertiesOverride(std::move(value)); return *this;} + + /** + *

An object, with properties that override defaults for the job definition, can + * only be specified for jobs that are run on Amazon ECS resources.

+ */ + inline const EcsPropertiesOverride& GetEcsPropertiesOverride() const{ return m_ecsPropertiesOverride; } + + /** + *

An object, with properties that override defaults for the job definition, can + * only be specified for jobs that are run on Amazon ECS resources.

+ */ + inline bool EcsPropertiesOverrideHasBeenSet() const { return m_ecsPropertiesOverrideHasBeenSet; } + + /** + *

An object, with properties that override defaults for the job definition, can + * only be specified for jobs that are run on Amazon ECS resources.

+ */ + inline void SetEcsPropertiesOverride(const EcsPropertiesOverride& value) { m_ecsPropertiesOverrideHasBeenSet = true; m_ecsPropertiesOverride = value; } + + /** + *

An object, with properties that override defaults for the job definition, can + * only be specified for jobs that are run on Amazon ECS resources.

+ */ + inline void SetEcsPropertiesOverride(EcsPropertiesOverride&& value) { m_ecsPropertiesOverrideHasBeenSet = true; m_ecsPropertiesOverride = std::move(value); } + + /** + *

An object, with properties that override defaults for the job definition, can + * only be specified for jobs that are run on Amazon ECS resources.

+ */ + inline SubmitJobRequest& WithEcsPropertiesOverride(const EcsPropertiesOverride& value) { SetEcsPropertiesOverride(value); return *this;} + + /** + *

An object, with properties that override defaults for the job definition, can + * only be specified for jobs that are run on Amazon ECS resources.

+ */ + inline SubmitJobRequest& WithEcsPropertiesOverride(EcsPropertiesOverride&& value) { SetEcsPropertiesOverride(std::move(value)); return *this;} + private: Aws::String m_jobName; @@ -1105,6 +1137,9 @@ namespace Model EksPropertiesOverride m_eksPropertiesOverride; bool m_eksPropertiesOverrideHasBeenSet = false; + + EcsPropertiesOverride m_ecsPropertiesOverride; + bool m_ecsPropertiesOverrideHasBeenSet = false; }; } // namespace Model diff --git a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/TaskContainerDependency.h b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/TaskContainerDependency.h new file mode 100644 index 00000000000..e4e0d9ed551 --- /dev/null +++ b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/TaskContainerDependency.h @@ -0,0 +1,212 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include +#include + +namespace Aws +{ +namespace Utils +{ +namespace Json +{ + class JsonValue; + class JsonView; +} // namespace Json +} // namespace Utils +namespace Batch +{ +namespace Model +{ + + /** + *

A list of containers that this task depends on.

See Also:

AWS + * API Reference

+ */ + class TaskContainerDependency + { + public: + AWS_BATCH_API TaskContainerDependency(); + AWS_BATCH_API TaskContainerDependency(Aws::Utils::Json::JsonView jsonValue); + AWS_BATCH_API TaskContainerDependency& operator=(Aws::Utils::Json::JsonView jsonValue); + AWS_BATCH_API Aws::Utils::Json::JsonValue Jsonize() const; + + + /** + *

A unique identifier for the container.

+ */ + inline const Aws::String& GetContainerName() const{ return m_containerName; } + + /** + *

A unique identifier for the container.

+ */ + inline bool ContainerNameHasBeenSet() const { return m_containerNameHasBeenSet; } + + /** + *

A unique identifier for the container.

+ */ + inline void SetContainerName(const Aws::String& value) { m_containerNameHasBeenSet = true; m_containerName = value; } + + /** + *

A unique identifier for the container.

+ */ + inline void SetContainerName(Aws::String&& value) { m_containerNameHasBeenSet = true; m_containerName = std::move(value); } + + /** + *

A unique identifier for the container.

+ */ + inline void SetContainerName(const char* value) { m_containerNameHasBeenSet = true; m_containerName.assign(value); } + + /** + *

A unique identifier for the container.

+ */ + inline TaskContainerDependency& WithContainerName(const Aws::String& value) { SetContainerName(value); return *this;} + + /** + *

A unique identifier for the container.

+ */ + inline TaskContainerDependency& WithContainerName(Aws::String&& value) { SetContainerName(std::move(value)); return *this;} + + /** + *

A unique identifier for the container.

+ */ + inline TaskContainerDependency& WithContainerName(const char* value) { SetContainerName(value); return *this;} + + + /** + *

The dependency condition of the container. The following are the available + * conditions and their behavior:

  • START - This + * condition emulates the behavior of links and volumes today. It validates that a + * dependent container is started before permitting other containers to start.

    + *
  • COMPLETE - This condition validates that a dependent + * container runs to completion (exits) before permitting other containers to + * start. This can be useful for nonessential containers that run a script and then + * exit. This condition can't be set on an essential container.

  • + * SUCCESS - This condition is the same as COMPLETE, but + * it also requires that the container exits with a zero status. This condition + * can't be set on an essential container.

+ */ + inline const Aws::String& GetCondition() const{ return m_condition; } + + /** + *

The dependency condition of the container. The following are the available + * conditions and their behavior:

  • START - This + * condition emulates the behavior of links and volumes today. It validates that a + * dependent container is started before permitting other containers to start.

    + *
  • COMPLETE - This condition validates that a dependent + * container runs to completion (exits) before permitting other containers to + * start. This can be useful for nonessential containers that run a script and then + * exit. This condition can't be set on an essential container.

  • + * SUCCESS - This condition is the same as COMPLETE, but + * it also requires that the container exits with a zero status. This condition + * can't be set on an essential container.

+ */ + inline bool ConditionHasBeenSet() const { return m_conditionHasBeenSet; } + + /** + *

The dependency condition of the container. The following are the available + * conditions and their behavior:

  • START - This + * condition emulates the behavior of links and volumes today. It validates that a + * dependent container is started before permitting other containers to start.

    + *
  • COMPLETE - This condition validates that a dependent + * container runs to completion (exits) before permitting other containers to + * start. This can be useful for nonessential containers that run a script and then + * exit. This condition can't be set on an essential container.

  • + * SUCCESS - This condition is the same as COMPLETE, but + * it also requires that the container exits with a zero status. This condition + * can't be set on an essential container.

+ */ + inline void SetCondition(const Aws::String& value) { m_conditionHasBeenSet = true; m_condition = value; } + + /** + *

The dependency condition of the container. The following are the available + * conditions and their behavior:

  • START - This + * condition emulates the behavior of links and volumes today. It validates that a + * dependent container is started before permitting other containers to start.

    + *
  • COMPLETE - This condition validates that a dependent + * container runs to completion (exits) before permitting other containers to + * start. This can be useful for nonessential containers that run a script and then + * exit. This condition can't be set on an essential container.

  • + * SUCCESS - This condition is the same as COMPLETE, but + * it also requires that the container exits with a zero status. This condition + * can't be set on an essential container.

+ */ + inline void SetCondition(Aws::String&& value) { m_conditionHasBeenSet = true; m_condition = std::move(value); } + + /** + *

The dependency condition of the container. The following are the available + * conditions and their behavior:

  • START - This + * condition emulates the behavior of links and volumes today. It validates that a + * dependent container is started before permitting other containers to start.

    + *
  • COMPLETE - This condition validates that a dependent + * container runs to completion (exits) before permitting other containers to + * start. This can be useful for nonessential containers that run a script and then + * exit. This condition can't be set on an essential container.

  • + * SUCCESS - This condition is the same as COMPLETE, but + * it also requires that the container exits with a zero status. This condition + * can't be set on an essential container.

+ */ + inline void SetCondition(const char* value) { m_conditionHasBeenSet = true; m_condition.assign(value); } + + /** + *

The dependency condition of the container. The following are the available + * conditions and their behavior:

  • START - This + * condition emulates the behavior of links and volumes today. It validates that a + * dependent container is started before permitting other containers to start.

    + *
  • COMPLETE - This condition validates that a dependent + * container runs to completion (exits) before permitting other containers to + * start. This can be useful for nonessential containers that run a script and then + * exit. This condition can't be set on an essential container.

  • + * SUCCESS - This condition is the same as COMPLETE, but + * it also requires that the container exits with a zero status. This condition + * can't be set on an essential container.

+ */ + inline TaskContainerDependency& WithCondition(const Aws::String& value) { SetCondition(value); return *this;} + + /** + *

The dependency condition of the container. The following are the available + * conditions and their behavior:

  • START - This + * condition emulates the behavior of links and volumes today. It validates that a + * dependent container is started before permitting other containers to start.

    + *
  • COMPLETE - This condition validates that a dependent + * container runs to completion (exits) before permitting other containers to + * start. This can be useful for nonessential containers that run a script and then + * exit. This condition can't be set on an essential container.

  • + * SUCCESS - This condition is the same as COMPLETE, but + * it also requires that the container exits with a zero status. This condition + * can't be set on an essential container.

+ */ + inline TaskContainerDependency& WithCondition(Aws::String&& value) { SetCondition(std::move(value)); return *this;} + + /** + *

The dependency condition of the container. The following are the available + * conditions and their behavior:

  • START - This + * condition emulates the behavior of links and volumes today. It validates that a + * dependent container is started before permitting other containers to start.

    + *
  • COMPLETE - This condition validates that a dependent + * container runs to completion (exits) before permitting other containers to + * start. This can be useful for nonessential containers that run a script and then + * exit. This condition can't be set on an essential container.

  • + * SUCCESS - This condition is the same as COMPLETE, but + * it also requires that the container exits with a zero status. This condition + * can't be set on an essential container.

+ */ + inline TaskContainerDependency& WithCondition(const char* value) { SetCondition(value); return *this;} + + private: + + Aws::String m_containerName; + bool m_containerNameHasBeenSet = false; + + Aws::String m_condition; + bool m_conditionHasBeenSet = false; + }; + +} // namespace Model +} // namespace Batch +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/TaskContainerDetails.h b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/TaskContainerDetails.h new file mode 100644 index 00000000000..ed2e21cee52 --- /dev/null +++ b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/TaskContainerDetails.h @@ -0,0 +1,1741 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +namespace Aws +{ +namespace Utils +{ +namespace Json +{ + class JsonValue; + class JsonView; +} // namespace Json +} // namespace Utils +namespace Batch +{ +namespace Model +{ + + /** + *

The details for the container in this task attempt.

See Also:

+ * AWS + * API Reference

+ */ + class TaskContainerDetails + { + public: + AWS_BATCH_API TaskContainerDetails(); + AWS_BATCH_API TaskContainerDetails(Aws::Utils::Json::JsonView jsonValue); + AWS_BATCH_API TaskContainerDetails& operator=(Aws::Utils::Json::JsonView jsonValue); + AWS_BATCH_API Aws::Utils::Json::JsonValue Jsonize() const; + + + /** + *

The command that's passed to the container. This parameter maps to + * Cmd in the Create a + * container section of the Docker Remote API and the + * COMMAND parameter to docker run. For more + * information, see https://docs.docker.com/engine/reference/builder/#cmd.

+ */ + inline const Aws::Vector& GetCommand() const{ return m_command; } + + /** + *

The command that's passed to the container. This parameter maps to + * Cmd in the Create a + * container section of the Docker Remote API and the + * COMMAND parameter to docker run. For more + * information, see https://docs.docker.com/engine/reference/builder/#cmd.

+ */ + inline bool CommandHasBeenSet() const { return m_commandHasBeenSet; } + + /** + *

The command that's passed to the container. This parameter maps to + * Cmd in the Create a + * container section of the Docker Remote API and the + * COMMAND parameter to docker run. For more + * information, see https://docs.docker.com/engine/reference/builder/#cmd.

+ */ + inline void SetCommand(const Aws::Vector& value) { m_commandHasBeenSet = true; m_command = value; } + + /** + *

The command that's passed to the container. This parameter maps to + * Cmd in the Create a + * container section of the Docker Remote API and the + * COMMAND parameter to docker run. For more + * information, see https://docs.docker.com/engine/reference/builder/#cmd.

+ */ + inline void SetCommand(Aws::Vector&& value) { m_commandHasBeenSet = true; m_command = std::move(value); } + + /** + *

The command that's passed to the container. This parameter maps to + * Cmd in the Create a + * container section of the Docker Remote API and the + * COMMAND parameter to docker run. For more + * information, see https://docs.docker.com/engine/reference/builder/#cmd.

+ */ + inline TaskContainerDetails& WithCommand(const Aws::Vector& value) { SetCommand(value); return *this;} + + /** + *

The command that's passed to the container. This parameter maps to + * Cmd in the Create a + * container section of the Docker Remote API and the + * COMMAND parameter to docker run. For more + * information, see https://docs.docker.com/engine/reference/builder/#cmd.

+ */ + inline TaskContainerDetails& WithCommand(Aws::Vector&& value) { SetCommand(std::move(value)); return *this;} + + /** + *

The command that's passed to the container. This parameter maps to + * Cmd in the Create a + * container section of the Docker Remote API and the + * COMMAND parameter to docker run. For more + * information, see https://docs.docker.com/engine/reference/builder/#cmd.

+ */ + inline TaskContainerDetails& AddCommand(const Aws::String& value) { m_commandHasBeenSet = true; m_command.push_back(value); return *this; } + + /** + *

The command that's passed to the container. This parameter maps to + * Cmd in the Create a + * container section of the Docker Remote API and the + * COMMAND parameter to docker run. For more + * information, see https://docs.docker.com/engine/reference/builder/#cmd.

+ */ + inline TaskContainerDetails& AddCommand(Aws::String&& value) { m_commandHasBeenSet = true; m_command.push_back(std::move(value)); return *this; } + + /** + *

The command that's passed to the container. This parameter maps to + * Cmd in the Create a + * container section of the Docker Remote API and the + * COMMAND parameter to docker run. For more + * information, see https://docs.docker.com/engine/reference/builder/#cmd.

+ */ + inline TaskContainerDetails& AddCommand(const char* value) { m_commandHasBeenSet = true; m_command.push_back(value); return *this; } + + + /** + *

A list of containers that this container depends on.

+ */ + inline const Aws::Vector& GetDependsOn() const{ return m_dependsOn; } + + /** + *

A list of containers that this container depends on.

+ */ + inline bool DependsOnHasBeenSet() const { return m_dependsOnHasBeenSet; } + + /** + *

A list of containers that this container depends on.

+ */ + inline void SetDependsOn(const Aws::Vector& value) { m_dependsOnHasBeenSet = true; m_dependsOn = value; } + + /** + *

A list of containers that this container depends on.

+ */ + inline void SetDependsOn(Aws::Vector&& value) { m_dependsOnHasBeenSet = true; m_dependsOn = std::move(value); } + + /** + *

A list of containers that this container depends on.

+ */ + inline TaskContainerDetails& WithDependsOn(const Aws::Vector& value) { SetDependsOn(value); return *this;} + + /** + *

A list of containers that this container depends on.

+ */ + inline TaskContainerDetails& WithDependsOn(Aws::Vector&& value) { SetDependsOn(std::move(value)); return *this;} + + /** + *

A list of containers that this container depends on.

+ */ + inline TaskContainerDetails& AddDependsOn(const TaskContainerDependency& value) { m_dependsOnHasBeenSet = true; m_dependsOn.push_back(value); return *this; } + + /** + *

A list of containers that this container depends on.

+ */ + inline TaskContainerDetails& AddDependsOn(TaskContainerDependency&& value) { m_dependsOnHasBeenSet = true; m_dependsOn.push_back(std::move(value)); return *this; } + + + /** + *

The environment variables to pass to a container. This parameter maps to + * Env in the Create a + * container section of the Docker Remote API and the + * --env option to docker run.

+ *

We don't recommend using plaintext environment variables for + * sensitive information, such as credential data.

+ */ + inline const Aws::Vector& GetEnvironment() const{ return m_environment; } + + /** + *

The environment variables to pass to a container. This parameter maps to + * Env in the Create a + * container section of the Docker Remote API and the + * --env option to docker run.

+ *

We don't recommend using plaintext environment variables for + * sensitive information, such as credential data.

+ */ + inline bool EnvironmentHasBeenSet() const { return m_environmentHasBeenSet; } + + /** + *

The environment variables to pass to a container. This parameter maps to + * Env in the Create a + * container section of the Docker Remote API and the + * --env option to docker run.

+ *

We don't recommend using plaintext environment variables for + * sensitive information, such as credential data.

+ */ + inline void SetEnvironment(const Aws::Vector& value) { m_environmentHasBeenSet = true; m_environment = value; } + + /** + *

The environment variables to pass to a container. This parameter maps to + * Env in the Create a + * container section of the Docker Remote API and the + * --env option to docker run.

+ *

We don't recommend using plaintext environment variables for + * sensitive information, such as credential data.

+ */ + inline void SetEnvironment(Aws::Vector&& value) { m_environmentHasBeenSet = true; m_environment = std::move(value); } + + /** + *

The environment variables to pass to a container. This parameter maps to + * Env in the Create a + * container section of the Docker Remote API and the + * --env option to docker run.

+ *

We don't recommend using plaintext environment variables for + * sensitive information, such as credential data.

+ */ + inline TaskContainerDetails& WithEnvironment(const Aws::Vector& value) { SetEnvironment(value); return *this;} + + /** + *

The environment variables to pass to a container. This parameter maps to + * Env in the Create a + * container section of the Docker Remote API and the + * --env option to docker run.

+ *

We don't recommend using plaintext environment variables for + * sensitive information, such as credential data.

+ */ + inline TaskContainerDetails& WithEnvironment(Aws::Vector&& value) { SetEnvironment(std::move(value)); return *this;} + + /** + *

The environment variables to pass to a container. This parameter maps to + * Env in the Create a + * container section of the Docker Remote API and the + * --env option to docker run.

+ *

We don't recommend using plaintext environment variables for + * sensitive information, such as credential data.

+ */ + inline TaskContainerDetails& AddEnvironment(const KeyValuePair& value) { m_environmentHasBeenSet = true; m_environment.push_back(value); return *this; } + + /** + *

The environment variables to pass to a container. This parameter maps to + * Env in the Create a + * container section of the Docker Remote API and the + * --env option to docker run.

+ *

We don't recommend using plaintext environment variables for + * sensitive information, such as credential data.

+ */ + inline TaskContainerDetails& AddEnvironment(KeyValuePair&& value) { m_environmentHasBeenSet = true; m_environment.push_back(std::move(value)); return *this; } + + + /** + *

If the essential parameter of a container is marked as true, and + * that container fails or stops for any reason, all other containers that are part + * of the task are stopped. If the essential parameter of a container + * is marked as false, its failure doesn't affect the rest of the containers in a + * task. If this parameter is omitted, a container is assumed to be essential.

+ *

All tasks must have at least one essential container. If you have an + * application that's composed of multiple containers, group containers that are + * used for a common purpose into components, and separate the different components + * into multiple task definitions. For more information, see Application + * Architecture in the Amazon Elastic Container Service Developer + * Guide.

+ */ + inline bool GetEssential() const{ return m_essential; } + + /** + *

If the essential parameter of a container is marked as true, and + * that container fails or stops for any reason, all other containers that are part + * of the task are stopped. If the essential parameter of a container + * is marked as false, its failure doesn't affect the rest of the containers in a + * task. If this parameter is omitted, a container is assumed to be essential.

+ *

All tasks must have at least one essential container. If you have an + * application that's composed of multiple containers, group containers that are + * used for a common purpose into components, and separate the different components + * into multiple task definitions. For more information, see Application + * Architecture in the Amazon Elastic Container Service Developer + * Guide.

+ */ + inline bool EssentialHasBeenSet() const { return m_essentialHasBeenSet; } + + /** + *

If the essential parameter of a container is marked as true, and + * that container fails or stops for any reason, all other containers that are part + * of the task are stopped. If the essential parameter of a container + * is marked as false, its failure doesn't affect the rest of the containers in a + * task. If this parameter is omitted, a container is assumed to be essential.

+ *

All tasks must have at least one essential container. If you have an + * application that's composed of multiple containers, group containers that are + * used for a common purpose into components, and separate the different components + * into multiple task definitions. For more information, see Application + * Architecture in the Amazon Elastic Container Service Developer + * Guide.

+ */ + inline void SetEssential(bool value) { m_essentialHasBeenSet = true; m_essential = value; } + + /** + *

If the essential parameter of a container is marked as true, and + * that container fails or stops for any reason, all other containers that are part + * of the task are stopped. If the essential parameter of a container + * is marked as false, its failure doesn't affect the rest of the containers in a + * task. If this parameter is omitted, a container is assumed to be essential.

+ *

All tasks must have at least one essential container. If you have an + * application that's composed of multiple containers, group containers that are + * used for a common purpose into components, and separate the different components + * into multiple task definitions. For more information, see Application + * Architecture in the Amazon Elastic Container Service Developer + * Guide.

+ */ + inline TaskContainerDetails& WithEssential(bool value) { SetEssential(value); return *this;} + + + /** + *

The image used to start a container. This string is passed directly to the + * Docker daemon. By default, images in the Docker Hub registry are available. + * Other repositories are specified with either + * repository-url/image:tag or + * repository-url/image@digest. Up to 255 letters (uppercase and + * lowercase), numbers, hyphens, underscores, colons, periods, forward slashes, and + * number signs are allowed. This parameter maps to Image in the Create + * a container section of the Docker Remote API and the + * IMAGE parameter of the + * docker run .

+ */ + inline const Aws::String& GetImage() const{ return m_image; } + + /** + *

The image used to start a container. This string is passed directly to the + * Docker daemon. By default, images in the Docker Hub registry are available. + * Other repositories are specified with either + * repository-url/image:tag or + * repository-url/image@digest. Up to 255 letters (uppercase and + * lowercase), numbers, hyphens, underscores, colons, periods, forward slashes, and + * number signs are allowed. This parameter maps to Image in the Create + * a container section of the Docker Remote API and the + * IMAGE parameter of the + * docker run .

+ */ + inline bool ImageHasBeenSet() const { return m_imageHasBeenSet; } + + /** + *

The image used to start a container. This string is passed directly to the + * Docker daemon. By default, images in the Docker Hub registry are available. + * Other repositories are specified with either + * repository-url/image:tag or + * repository-url/image@digest. Up to 255 letters (uppercase and + * lowercase), numbers, hyphens, underscores, colons, periods, forward slashes, and + * number signs are allowed. This parameter maps to Image in the Create + * a container section of the Docker Remote API and the + * IMAGE parameter of the + * docker run .

+ */ + inline void SetImage(const Aws::String& value) { m_imageHasBeenSet = true; m_image = value; } + + /** + *

The image used to start a container. This string is passed directly to the + * Docker daemon. By default, images in the Docker Hub registry are available. + * Other repositories are specified with either + * repository-url/image:tag or + * repository-url/image@digest. Up to 255 letters (uppercase and + * lowercase), numbers, hyphens, underscores, colons, periods, forward slashes, and + * number signs are allowed. This parameter maps to Image in the Create + * a container section of the Docker Remote API and the + * IMAGE parameter of the + * docker run .

+ */ + inline void SetImage(Aws::String&& value) { m_imageHasBeenSet = true; m_image = std::move(value); } + + /** + *

The image used to start a container. This string is passed directly to the + * Docker daemon. By default, images in the Docker Hub registry are available. + * Other repositories are specified with either + * repository-url/image:tag or + * repository-url/image@digest. Up to 255 letters (uppercase and + * lowercase), numbers, hyphens, underscores, colons, periods, forward slashes, and + * number signs are allowed. This parameter maps to Image in the Create + * a container section of the Docker Remote API and the + * IMAGE parameter of the + * docker run .

+ */ + inline void SetImage(const char* value) { m_imageHasBeenSet = true; m_image.assign(value); } + + /** + *

The image used to start a container. This string is passed directly to the + * Docker daemon. By default, images in the Docker Hub registry are available. + * Other repositories are specified with either + * repository-url/image:tag or + * repository-url/image@digest. Up to 255 letters (uppercase and + * lowercase), numbers, hyphens, underscores, colons, periods, forward slashes, and + * number signs are allowed. This parameter maps to Image in the Create + * a container section of the Docker Remote API and the + * IMAGE parameter of the + * docker run .

+ */ + inline TaskContainerDetails& WithImage(const Aws::String& value) { SetImage(value); return *this;} + + /** + *

The image used to start a container. This string is passed directly to the + * Docker daemon. By default, images in the Docker Hub registry are available. + * Other repositories are specified with either + * repository-url/image:tag or + * repository-url/image@digest. Up to 255 letters (uppercase and + * lowercase), numbers, hyphens, underscores, colons, periods, forward slashes, and + * number signs are allowed. This parameter maps to Image in the Create + * a container section of the Docker Remote API and the + * IMAGE parameter of the + * docker run .

+ */ + inline TaskContainerDetails& WithImage(Aws::String&& value) { SetImage(std::move(value)); return *this;} + + /** + *

The image used to start a container. This string is passed directly to the + * Docker daemon. By default, images in the Docker Hub registry are available. + * Other repositories are specified with either + * repository-url/image:tag or + * repository-url/image@digest. Up to 255 letters (uppercase and + * lowercase), numbers, hyphens, underscores, colons, periods, forward slashes, and + * number signs are allowed. This parameter maps to Image in the Create + * a container section of the Docker Remote API and the + * IMAGE parameter of the + * docker run .

+ */ + inline TaskContainerDetails& WithImage(const char* value) { SetImage(value); return *this;} + + + /** + *

Linux-specific modifications that are applied to the container, such as Linux + * kernel capabilities. For more information, see KernelCapabilities.

+ *

This parameter is not supported for Windows containers.

+ */ + inline const LinuxParameters& GetLinuxParameters() const{ return m_linuxParameters; } + + /** + *

Linux-specific modifications that are applied to the container, such as Linux + * kernel capabilities. For more information, see KernelCapabilities.

+ *

This parameter is not supported for Windows containers.

+ */ + inline bool LinuxParametersHasBeenSet() const { return m_linuxParametersHasBeenSet; } + + /** + *

Linux-specific modifications that are applied to the container, such as Linux + * kernel capabilities. For more information, see KernelCapabilities.

+ *

This parameter is not supported for Windows containers.

+ */ + inline void SetLinuxParameters(const LinuxParameters& value) { m_linuxParametersHasBeenSet = true; m_linuxParameters = value; } + + /** + *

Linux-specific modifications that are applied to the container, such as Linux + * kernel capabilities. For more information, see KernelCapabilities.

+ *

This parameter is not supported for Windows containers.

+ */ + inline void SetLinuxParameters(LinuxParameters&& value) { m_linuxParametersHasBeenSet = true; m_linuxParameters = std::move(value); } + + /** + *

Linux-specific modifications that are applied to the container, such as Linux + * kernel capabilities. For more information, see KernelCapabilities.

+ *

This parameter is not supported for Windows containers.

+ */ + inline TaskContainerDetails& WithLinuxParameters(const LinuxParameters& value) { SetLinuxParameters(value); return *this;} + + /** + *

Linux-specific modifications that are applied to the container, such as Linux + * kernel capabilities. For more information, see KernelCapabilities.

+ *

This parameter is not supported for Windows containers.

+ */ + inline TaskContainerDetails& WithLinuxParameters(LinuxParameters&& value) { SetLinuxParameters(std::move(value)); return *this;} + + + /** + *

The log configuration specification for the container.

This parameter + * maps to LogConfig in the Create + * a container section of the Docker Remote API and the + * --log-driver option to docker + * run.

By default, containers use the same logging driver that the + * Docker daemon uses. However the container can use a different logging driver + * than the Docker daemon by specifying a log driver with this parameter in the + * container definition. To use a different logging driver for a container, the log + * system must be configured properly on the container instance (or on a different + * log server for remote logging options). For more information about the options + * for different supported log drivers, see Configure logging + * drivers in the Docker documentation.

Amazon ECS + * currently supports a subset of the logging drivers available to the Docker + * daemon (shown in the LogConfiguration data type). Additional log + * drivers may be available in future releases of the Amazon ECS container + * agent.

This parameter requires version 1.18 of the Docker Remote + * API or greater on your container instance. To check the Docker Remote API + * version on your container instance, log in to your container instance and run + * the following command: sudo docker version --format + * '{{.Server.APIVersion}}'

The Amazon ECS container agent + * running on a container instance must register the logging drivers available on + * that instance with the ECS_AVAILABLE_LOGGING_DRIVERS environment + * variable before containers placed on that instance can use these log + * configuration options. For more information, see Amazon + * ECS container agent configuration in the Amazon Elastic Container Service + * Developer Guide.

+ */ + inline const LogConfiguration& GetLogConfiguration() const{ return m_logConfiguration; } + + /** + *

The log configuration specification for the container.

This parameter + * maps to LogConfig in the Create + * a container section of the Docker Remote API and the + * --log-driver option to docker + * run.

By default, containers use the same logging driver that the + * Docker daemon uses. However the container can use a different logging driver + * than the Docker daemon by specifying a log driver with this parameter in the + * container definition. To use a different logging driver for a container, the log + * system must be configured properly on the container instance (or on a different + * log server for remote logging options). For more information about the options + * for different supported log drivers, see Configure logging + * drivers in the Docker documentation.

Amazon ECS + * currently supports a subset of the logging drivers available to the Docker + * daemon (shown in the LogConfiguration data type). Additional log + * drivers may be available in future releases of the Amazon ECS container + * agent.

This parameter requires version 1.18 of the Docker Remote + * API or greater on your container instance. To check the Docker Remote API + * version on your container instance, log in to your container instance and run + * the following command: sudo docker version --format + * '{{.Server.APIVersion}}'

The Amazon ECS container agent + * running on a container instance must register the logging drivers available on + * that instance with the ECS_AVAILABLE_LOGGING_DRIVERS environment + * variable before containers placed on that instance can use these log + * configuration options. For more information, see Amazon + * ECS container agent configuration in the Amazon Elastic Container Service + * Developer Guide.

+ */ + inline bool LogConfigurationHasBeenSet() const { return m_logConfigurationHasBeenSet; } + + /** + *

The log configuration specification for the container.

This parameter + * maps to LogConfig in the Create + * a container section of the Docker Remote API and the + * --log-driver option to docker + * run.

By default, containers use the same logging driver that the + * Docker daemon uses. However the container can use a different logging driver + * than the Docker daemon by specifying a log driver with this parameter in the + * container definition. To use a different logging driver for a container, the log + * system must be configured properly on the container instance (or on a different + * log server for remote logging options). For more information about the options + * for different supported log drivers, see Configure logging + * drivers in the Docker documentation.

Amazon ECS + * currently supports a subset of the logging drivers available to the Docker + * daemon (shown in the LogConfiguration data type). Additional log + * drivers may be available in future releases of the Amazon ECS container + * agent.

This parameter requires version 1.18 of the Docker Remote + * API or greater on your container instance. To check the Docker Remote API + * version on your container instance, log in to your container instance and run + * the following command: sudo docker version --format + * '{{.Server.APIVersion}}'

The Amazon ECS container agent + * running on a container instance must register the logging drivers available on + * that instance with the ECS_AVAILABLE_LOGGING_DRIVERS environment + * variable before containers placed on that instance can use these log + * configuration options. For more information, see Amazon + * ECS container agent configuration in the Amazon Elastic Container Service + * Developer Guide.

+ */ + inline void SetLogConfiguration(const LogConfiguration& value) { m_logConfigurationHasBeenSet = true; m_logConfiguration = value; } + + /** + *

The log configuration specification for the container.

This parameter + * maps to LogConfig in the Create + * a container section of the Docker Remote API and the + * --log-driver option to docker + * run.

By default, containers use the same logging driver that the + * Docker daemon uses. However the container can use a different logging driver + * than the Docker daemon by specifying a log driver with this parameter in the + * container definition. To use a different logging driver for a container, the log + * system must be configured properly on the container instance (or on a different + * log server for remote logging options). For more information about the options + * for different supported log drivers, see Configure logging + * drivers in the Docker documentation.

Amazon ECS + * currently supports a subset of the logging drivers available to the Docker + * daemon (shown in the LogConfiguration data type). Additional log + * drivers may be available in future releases of the Amazon ECS container + * agent.

This parameter requires version 1.18 of the Docker Remote + * API or greater on your container instance. To check the Docker Remote API + * version on your container instance, log in to your container instance and run + * the following command: sudo docker version --format + * '{{.Server.APIVersion}}'

The Amazon ECS container agent + * running on a container instance must register the logging drivers available on + * that instance with the ECS_AVAILABLE_LOGGING_DRIVERS environment + * variable before containers placed on that instance can use these log + * configuration options. For more information, see Amazon + * ECS container agent configuration in the Amazon Elastic Container Service + * Developer Guide.

+ */ + inline void SetLogConfiguration(LogConfiguration&& value) { m_logConfigurationHasBeenSet = true; m_logConfiguration = std::move(value); } + + /** + *

The log configuration specification for the container.

This parameter + * maps to LogConfig in the Create + * a container section of the Docker Remote API and the + * --log-driver option to docker + * run.

By default, containers use the same logging driver that the + * Docker daemon uses. However the container can use a different logging driver + * than the Docker daemon by specifying a log driver with this parameter in the + * container definition. To use a different logging driver for a container, the log + * system must be configured properly on the container instance (or on a different + * log server for remote logging options). For more information about the options + * for different supported log drivers, see Configure logging + * drivers in the Docker documentation.

Amazon ECS + * currently supports a subset of the logging drivers available to the Docker + * daemon (shown in the LogConfiguration data type). Additional log + * drivers may be available in future releases of the Amazon ECS container + * agent.

This parameter requires version 1.18 of the Docker Remote + * API or greater on your container instance. To check the Docker Remote API + * version on your container instance, log in to your container instance and run + * the following command: sudo docker version --format + * '{{.Server.APIVersion}}'

The Amazon ECS container agent + * running on a container instance must register the logging drivers available on + * that instance with the ECS_AVAILABLE_LOGGING_DRIVERS environment + * variable before containers placed on that instance can use these log + * configuration options. For more information, see Amazon + * ECS container agent configuration in the Amazon Elastic Container Service + * Developer Guide.

+ */ + inline TaskContainerDetails& WithLogConfiguration(const LogConfiguration& value) { SetLogConfiguration(value); return *this;} + + /** + *

The log configuration specification for the container.

This parameter + * maps to LogConfig in the Create + * a container section of the Docker Remote API and the + * --log-driver option to docker + * run.

By default, containers use the same logging driver that the + * Docker daemon uses. However the container can use a different logging driver + * than the Docker daemon by specifying a log driver with this parameter in the + * container definition. To use a different logging driver for a container, the log + * system must be configured properly on the container instance (or on a different + * log server for remote logging options). For more information about the options + * for different supported log drivers, see Configure logging + * drivers in the Docker documentation.

Amazon ECS + * currently supports a subset of the logging drivers available to the Docker + * daemon (shown in the LogConfiguration data type). Additional log + * drivers may be available in future releases of the Amazon ECS container + * agent.

This parameter requires version 1.18 of the Docker Remote + * API or greater on your container instance. To check the Docker Remote API + * version on your container instance, log in to your container instance and run + * the following command: sudo docker version --format + * '{{.Server.APIVersion}}'

The Amazon ECS container agent + * running on a container instance must register the logging drivers available on + * that instance with the ECS_AVAILABLE_LOGGING_DRIVERS environment + * variable before containers placed on that instance can use these log + * configuration options. For more information, see Amazon + * ECS container agent configuration in the Amazon Elastic Container Service + * Developer Guide.

+ */ + inline TaskContainerDetails& WithLogConfiguration(LogConfiguration&& value) { SetLogConfiguration(std::move(value)); return *this;} + + + /** + *

The mount points for data volumes in your container.

This parameter + * maps to Volumes in the Create + * a container section of the Docker Remote API and the + * --volume option to docker + * run.

Windows containers can mount whole directories on the same drive + * as $env:ProgramData. Windows containers can't mount directories on + * a different drive, and mount point can't be across drives.

+ */ + inline const Aws::Vector& GetMountPoints() const{ return m_mountPoints; } + + /** + *

The mount points for data volumes in your container.

This parameter + * maps to Volumes in the Create + * a container section of the Docker Remote API and the + * --volume option to docker + * run.

Windows containers can mount whole directories on the same drive + * as $env:ProgramData. Windows containers can't mount directories on + * a different drive, and mount point can't be across drives.

+ */ + inline bool MountPointsHasBeenSet() const { return m_mountPointsHasBeenSet; } + + /** + *

The mount points for data volumes in your container.

This parameter + * maps to Volumes in the Create + * a container section of the Docker Remote API and the + * --volume option to docker + * run.

Windows containers can mount whole directories on the same drive + * as $env:ProgramData. Windows containers can't mount directories on + * a different drive, and mount point can't be across drives.

+ */ + inline void SetMountPoints(const Aws::Vector& value) { m_mountPointsHasBeenSet = true; m_mountPoints = value; } + + /** + *

The mount points for data volumes in your container.

This parameter + * maps to Volumes in the Create + * a container section of the Docker Remote API and the + * --volume option to docker + * run.

Windows containers can mount whole directories on the same drive + * as $env:ProgramData. Windows containers can't mount directories on + * a different drive, and mount point can't be across drives.

+ */ + inline void SetMountPoints(Aws::Vector&& value) { m_mountPointsHasBeenSet = true; m_mountPoints = std::move(value); } + + /** + *

The mount points for data volumes in your container.

This parameter + * maps to Volumes in the Create + * a container section of the Docker Remote API and the + * --volume option to docker + * run.

Windows containers can mount whole directories on the same drive + * as $env:ProgramData. Windows containers can't mount directories on + * a different drive, and mount point can't be across drives.

+ */ + inline TaskContainerDetails& WithMountPoints(const Aws::Vector& value) { SetMountPoints(value); return *this;} + + /** + *

The mount points for data volumes in your container.

This parameter + * maps to Volumes in the Create + * a container section of the Docker Remote API and the + * --volume option to docker + * run.

Windows containers can mount whole directories on the same drive + * as $env:ProgramData. Windows containers can't mount directories on + * a different drive, and mount point can't be across drives.

+ */ + inline TaskContainerDetails& WithMountPoints(Aws::Vector&& value) { SetMountPoints(std::move(value)); return *this;} + + /** + *

The mount points for data volumes in your container.

This parameter + * maps to Volumes in the Create + * a container section of the Docker Remote API and the + * --volume option to docker + * run.

Windows containers can mount whole directories on the same drive + * as $env:ProgramData. Windows containers can't mount directories on + * a different drive, and mount point can't be across drives.

+ */ + inline TaskContainerDetails& AddMountPoints(const MountPoint& value) { m_mountPointsHasBeenSet = true; m_mountPoints.push_back(value); return *this; } + + /** + *

The mount points for data volumes in your container.

This parameter + * maps to Volumes in the Create + * a container section of the Docker Remote API and the + * --volume option to docker + * run.

Windows containers can mount whole directories on the same drive + * as $env:ProgramData. Windows containers can't mount directories on + * a different drive, and mount point can't be across drives.

+ */ + inline TaskContainerDetails& AddMountPoints(MountPoint&& value) { m_mountPointsHasBeenSet = true; m_mountPoints.push_back(std::move(value)); return *this; } + + + /** + *

The name of a container.

+ */ + inline const Aws::String& GetName() const{ return m_name; } + + /** + *

The name of a container.

+ */ + inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } + + /** + *

The name of a container.

+ */ + inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } + + /** + *

The name of a container.

+ */ + inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } + + /** + *

The name of a container.

+ */ + inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } + + /** + *

The name of a container.

+ */ + inline TaskContainerDetails& WithName(const Aws::String& value) { SetName(value); return *this;} + + /** + *

The name of a container.

+ */ + inline TaskContainerDetails& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} + + /** + *

The name of a container.

+ */ + inline TaskContainerDetails& WithName(const char* value) { SetName(value); return *this;} + + + /** + *

When this parameter is true, the container is given elevated + * privileges on the host container instance (similar to the root + * user). This parameter maps to Privileged in the Create + * a container section of the Docker Remote API and the + * --privileged option to docker + * run.

This parameter is not supported for Windows containers or + * tasks run on Fargate.

+ */ + inline bool GetPrivileged() const{ return m_privileged; } + + /** + *

When this parameter is true, the container is given elevated + * privileges on the host container instance (similar to the root + * user). This parameter maps to Privileged in the Create + * a container section of the Docker Remote API and the + * --privileged option to docker + * run.

This parameter is not supported for Windows containers or + * tasks run on Fargate.

+ */ + inline bool PrivilegedHasBeenSet() const { return m_privilegedHasBeenSet; } + + /** + *

When this parameter is true, the container is given elevated + * privileges on the host container instance (similar to the root + * user). This parameter maps to Privileged in the Create + * a container section of the Docker Remote API and the + * --privileged option to docker + * run.

This parameter is not supported for Windows containers or + * tasks run on Fargate.

+ */ + inline void SetPrivileged(bool value) { m_privilegedHasBeenSet = true; m_privileged = value; } + + /** + *

When this parameter is true, the container is given elevated + * privileges on the host container instance (similar to the root + * user). This parameter maps to Privileged in the Create + * a container section of the Docker Remote API and the + * --privileged option to docker + * run.

This parameter is not supported for Windows containers or + * tasks run on Fargate.

+ */ + inline TaskContainerDetails& WithPrivileged(bool value) { SetPrivileged(value); return *this;} + + + /** + *

When this parameter is true, the container is given read-only access to its + * root file system. This parameter maps to ReadonlyRootfs in the Create + * a container section of the Docker Remote API and the + * --read-only option to docker + * run.

This parameter is not supported for Windows + * containers.

+ */ + inline bool GetReadonlyRootFilesystem() const{ return m_readonlyRootFilesystem; } + + /** + *

When this parameter is true, the container is given read-only access to its + * root file system. This parameter maps to ReadonlyRootfs in the Create + * a container section of the Docker Remote API and the + * --read-only option to docker + * run.

This parameter is not supported for Windows + * containers.

+ */ + inline bool ReadonlyRootFilesystemHasBeenSet() const { return m_readonlyRootFilesystemHasBeenSet; } + + /** + *

When this parameter is true, the container is given read-only access to its + * root file system. This parameter maps to ReadonlyRootfs in the Create + * a container section of the Docker Remote API and the + * --read-only option to docker + * run.

This parameter is not supported for Windows + * containers.

+ */ + 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. This parameter maps to ReadonlyRootfs in the Create + * a container section of the Docker Remote API and the + * --read-only option to docker + * run.

This parameter is not supported for Windows + * containers.

+ */ + inline TaskContainerDetails& WithReadonlyRootFilesystem(bool value) { SetReadonlyRootFilesystem(value); return *this;} + + + /** + *

The private repository authentication credentials to use.

+ */ + inline const RepositoryCredentials& GetRepositoryCredentials() const{ return m_repositoryCredentials; } + + /** + *

The private repository authentication credentials to use.

+ */ + inline bool RepositoryCredentialsHasBeenSet() const { return m_repositoryCredentialsHasBeenSet; } + + /** + *

The private repository authentication credentials to use.

+ */ + inline void SetRepositoryCredentials(const RepositoryCredentials& value) { m_repositoryCredentialsHasBeenSet = true; m_repositoryCredentials = value; } + + /** + *

The private repository authentication credentials to use.

+ */ + inline void SetRepositoryCredentials(RepositoryCredentials&& value) { m_repositoryCredentialsHasBeenSet = true; m_repositoryCredentials = std::move(value); } + + /** + *

The private repository authentication credentials to use.

+ */ + inline TaskContainerDetails& WithRepositoryCredentials(const RepositoryCredentials& value) { SetRepositoryCredentials(value); return *this;} + + /** + *

The private repository authentication credentials to use.

+ */ + inline TaskContainerDetails& WithRepositoryCredentials(RepositoryCredentials&& value) { SetRepositoryCredentials(std::move(value)); return *this;} + + + /** + *

The type and amount of a resource to assign to a container. The only + * supported resource is a GPU.

+ */ + inline const Aws::Vector& GetResourceRequirements() const{ return m_resourceRequirements; } + + /** + *

The type and amount of a resource to assign to a container. The only + * supported resource is a GPU.

+ */ + inline bool ResourceRequirementsHasBeenSet() const { return m_resourceRequirementsHasBeenSet; } + + /** + *

The type and amount of a resource to assign to a container. The only + * supported resource is a GPU.

+ */ + inline void SetResourceRequirements(const Aws::Vector& value) { m_resourceRequirementsHasBeenSet = true; m_resourceRequirements = value; } + + /** + *

The type and amount of a resource to assign to a container. The only + * supported resource is a GPU.

+ */ + inline void SetResourceRequirements(Aws::Vector&& value) { m_resourceRequirementsHasBeenSet = true; m_resourceRequirements = std::move(value); } + + /** + *

The type and amount of a resource to assign to a container. The only + * supported resource is a GPU.

+ */ + inline TaskContainerDetails& WithResourceRequirements(const Aws::Vector& value) { SetResourceRequirements(value); return *this;} + + /** + *

The type and amount of a resource to assign to a container. The only + * supported resource is a GPU.

+ */ + inline TaskContainerDetails& WithResourceRequirements(Aws::Vector&& value) { SetResourceRequirements(std::move(value)); return *this;} + + /** + *

The type and amount of a resource to assign to a container. The only + * supported resource is a GPU.

+ */ + inline TaskContainerDetails& AddResourceRequirements(const ResourceRequirement& value) { m_resourceRequirementsHasBeenSet = true; m_resourceRequirements.push_back(value); return *this; } + + /** + *

The type and amount of a resource to assign to a container. The only + * supported resource is a GPU.

+ */ + inline TaskContainerDetails& AddResourceRequirements(ResourceRequirement&& value) { m_resourceRequirementsHasBeenSet = true; m_resourceRequirements.push_back(std::move(value)); return *this; } + + + /** + *

The secrets to pass to the container. For more information, see Specifying + * Sensitive Data in the Amazon Elastic Container Service Developer Guide.

+ */ + inline const Aws::Vector& GetSecrets() const{ return m_secrets; } + + /** + *

The secrets to pass to the container. For more information, see Specifying + * Sensitive Data in the Amazon Elastic Container Service Developer Guide.

+ */ + inline bool SecretsHasBeenSet() const { return m_secretsHasBeenSet; } + + /** + *

The secrets to pass to the container. For more information, see Specifying + * Sensitive Data in the Amazon Elastic Container Service Developer Guide.

+ */ + inline void SetSecrets(const Aws::Vector& value) { m_secretsHasBeenSet = true; m_secrets = value; } + + /** + *

The secrets to pass to the container. For more information, see Specifying + * Sensitive Data in the Amazon Elastic Container Service Developer Guide.

+ */ + inline void SetSecrets(Aws::Vector&& value) { m_secretsHasBeenSet = true; m_secrets = std::move(value); } + + /** + *

The secrets to pass to the container. For more information, see Specifying + * Sensitive Data in the Amazon Elastic Container Service Developer Guide.

+ */ + inline TaskContainerDetails& WithSecrets(const Aws::Vector& value) { SetSecrets(value); return *this;} + + /** + *

The secrets to pass to the container. For more information, see Specifying + * Sensitive Data in the Amazon Elastic Container Service Developer Guide.

+ */ + inline TaskContainerDetails& WithSecrets(Aws::Vector&& value) { SetSecrets(std::move(value)); return *this;} + + /** + *

The secrets to pass to the container. For more information, see Specifying + * Sensitive Data in the Amazon Elastic Container Service Developer Guide.

+ */ + inline TaskContainerDetails& AddSecrets(const Secret& value) { m_secretsHasBeenSet = true; m_secrets.push_back(value); return *this; } + + /** + *

The secrets to pass to the container. For more information, see Specifying + * Sensitive Data in the Amazon Elastic Container Service Developer Guide.

+ */ + inline TaskContainerDetails& AddSecrets(Secret&& value) { m_secretsHasBeenSet = true; m_secrets.push_back(std::move(value)); return *this; } + + + /** + *

A list of ulimits to set in the container. If a + * ulimit value is specified in a task definition, it overrides the + * default values set by Docker. This parameter maps to Ulimits in the + * Create + * a container section of the Docker Remote API and the + * --ulimit option to docker + * run.

Amazon ECS tasks hosted on Fargate use the default resource + * limit values set by the operating system with the exception of the nofile + * resource limit parameter which Fargate overrides. The nofile + * resource limit sets a restriction on the number of open files that a container + * can use. The default nofile soft limit is 1024 and the + * default hard limit is 65535.

This parameter requires version + * 1.18 of the Docker Remote API or greater on your container instance. To check + * the Docker Remote API version on your container instance, log in to your + * container instance and run the following command: sudo docker version + * --format '{{.Server.APIVersion}}'

This parameter is + * not supported for Windows containers.

+ */ + inline const Aws::Vector& GetUlimits() const{ return m_ulimits; } + + /** + *

A list of ulimits to set in the container. If a + * ulimit value is specified in a task definition, it overrides the + * default values set by Docker. This parameter maps to Ulimits in the + * Create + * a container section of the Docker Remote API and the + * --ulimit option to docker + * run.

Amazon ECS tasks hosted on Fargate use the default resource + * limit values set by the operating system with the exception of the nofile + * resource limit parameter which Fargate overrides. The nofile + * resource limit sets a restriction on the number of open files that a container + * can use. The default nofile soft limit is 1024 and the + * default hard limit is 65535.

This parameter requires version + * 1.18 of the Docker Remote API or greater on your container instance. To check + * the Docker Remote API version on your container instance, log in to your + * container instance and run the following command: sudo docker version + * --format '{{.Server.APIVersion}}'

This parameter is + * not supported for Windows containers.

+ */ + inline bool UlimitsHasBeenSet() const { return m_ulimitsHasBeenSet; } + + /** + *

A list of ulimits to set in the container. If a + * ulimit value is specified in a task definition, it overrides the + * default values set by Docker. This parameter maps to Ulimits in the + * Create + * a container section of the Docker Remote API and the + * --ulimit option to docker + * run.

Amazon ECS tasks hosted on Fargate use the default resource + * limit values set by the operating system with the exception of the nofile + * resource limit parameter which Fargate overrides. The nofile + * resource limit sets a restriction on the number of open files that a container + * can use. The default nofile soft limit is 1024 and the + * default hard limit is 65535.

This parameter requires version + * 1.18 of the Docker Remote API or greater on your container instance. To check + * the Docker Remote API version on your container instance, log in to your + * container instance and run the following command: sudo docker version + * --format '{{.Server.APIVersion}}'

This parameter is + * not supported for Windows containers.

+ */ + inline void SetUlimits(const Aws::Vector& value) { m_ulimitsHasBeenSet = true; m_ulimits = value; } + + /** + *

A list of ulimits to set in the container. If a + * ulimit value is specified in a task definition, it overrides the + * default values set by Docker. This parameter maps to Ulimits in the + * Create + * a container section of the Docker Remote API and the + * --ulimit option to docker + * run.

Amazon ECS tasks hosted on Fargate use the default resource + * limit values set by the operating system with the exception of the nofile + * resource limit parameter which Fargate overrides. The nofile + * resource limit sets a restriction on the number of open files that a container + * can use. The default nofile soft limit is 1024 and the + * default hard limit is 65535.

This parameter requires version + * 1.18 of the Docker Remote API or greater on your container instance. To check + * the Docker Remote API version on your container instance, log in to your + * container instance and run the following command: sudo docker version + * --format '{{.Server.APIVersion}}'

This parameter is + * not supported for Windows containers.

+ */ + inline void SetUlimits(Aws::Vector&& value) { m_ulimitsHasBeenSet = true; m_ulimits = std::move(value); } + + /** + *

A list of ulimits to set in the container. If a + * ulimit value is specified in a task definition, it overrides the + * default values set by Docker. This parameter maps to Ulimits in the + * Create + * a container section of the Docker Remote API and the + * --ulimit option to docker + * run.

Amazon ECS tasks hosted on Fargate use the default resource + * limit values set by the operating system with the exception of the nofile + * resource limit parameter which Fargate overrides. The nofile + * resource limit sets a restriction on the number of open files that a container + * can use. The default nofile soft limit is 1024 and the + * default hard limit is 65535.

This parameter requires version + * 1.18 of the Docker Remote API or greater on your container instance. To check + * the Docker Remote API version on your container instance, log in to your + * container instance and run the following command: sudo docker version + * --format '{{.Server.APIVersion}}'

This parameter is + * not supported for Windows containers.

+ */ + inline TaskContainerDetails& WithUlimits(const Aws::Vector& value) { SetUlimits(value); return *this;} + + /** + *

A list of ulimits to set in the container. If a + * ulimit value is specified in a task definition, it overrides the + * default values set by Docker. This parameter maps to Ulimits in the + * Create + * a container section of the Docker Remote API and the + * --ulimit option to docker + * run.

Amazon ECS tasks hosted on Fargate use the default resource + * limit values set by the operating system with the exception of the nofile + * resource limit parameter which Fargate overrides. The nofile + * resource limit sets a restriction on the number of open files that a container + * can use. The default nofile soft limit is 1024 and the + * default hard limit is 65535.

This parameter requires version + * 1.18 of the Docker Remote API or greater on your container instance. To check + * the Docker Remote API version on your container instance, log in to your + * container instance and run the following command: sudo docker version + * --format '{{.Server.APIVersion}}'

This parameter is + * not supported for Windows containers.

+ */ + inline TaskContainerDetails& WithUlimits(Aws::Vector&& value) { SetUlimits(std::move(value)); return *this;} + + /** + *

A list of ulimits to set in the container. If a + * ulimit value is specified in a task definition, it overrides the + * default values set by Docker. This parameter maps to Ulimits in the + * Create + * a container section of the Docker Remote API and the + * --ulimit option to docker + * run.

Amazon ECS tasks hosted on Fargate use the default resource + * limit values set by the operating system with the exception of the nofile + * resource limit parameter which Fargate overrides. The nofile + * resource limit sets a restriction on the number of open files that a container + * can use. The default nofile soft limit is 1024 and the + * default hard limit is 65535.

This parameter requires version + * 1.18 of the Docker Remote API or greater on your container instance. To check + * the Docker Remote API version on your container instance, log in to your + * container instance and run the following command: sudo docker version + * --format '{{.Server.APIVersion}}'

This parameter is + * not supported for Windows containers.

+ */ + inline TaskContainerDetails& AddUlimits(const Ulimit& value) { m_ulimitsHasBeenSet = true; m_ulimits.push_back(value); return *this; } + + /** + *

A list of ulimits to set in the container. If a + * ulimit value is specified in a task definition, it overrides the + * default values set by Docker. This parameter maps to Ulimits in the + * Create + * a container section of the Docker Remote API and the + * --ulimit option to docker + * run.

Amazon ECS tasks hosted on Fargate use the default resource + * limit values set by the operating system with the exception of the nofile + * resource limit parameter which Fargate overrides. The nofile + * resource limit sets a restriction on the number of open files that a container + * can use. The default nofile soft limit is 1024 and the + * default hard limit is 65535.

This parameter requires version + * 1.18 of the Docker Remote API or greater on your container instance. To check + * the Docker Remote API version on your container instance, log in to your + * container instance and run the following command: sudo docker version + * --format '{{.Server.APIVersion}}'

This parameter is + * not supported for Windows containers.

+ */ + inline TaskContainerDetails& AddUlimits(Ulimit&& value) { m_ulimitsHasBeenSet = true; m_ulimits.push_back(std::move(value)); return *this; } + + + /** + *

The user to use inside the container. This parameter maps to User in the + * Create a container section of the Docker Remote API and the --user option to + * docker run.

When running tasks using the host network + * mode, don't run containers using the root user (UID 0). We + * recommend using a non-root user for better security.

You can + * specify the user using the following formats. If specifying a UID + * or GID, you must specify it as a positive integer.

  • + * user

  • user:group

  • + *

    uid

  • uid:gid

  • + *

    user:gi

  • uid:group

  • + *

This parameter is not supported for + * Windows containers.

+ */ + inline const Aws::String& GetUser() const{ return m_user; } + + /** + *

The user to use inside the container. This parameter maps to User in the + * Create a container section of the Docker Remote API and the --user option to + * docker run.

When running tasks using the host network + * mode, don't run containers using the root user (UID 0). We + * recommend using a non-root user for better security.

You can + * specify the user using the following formats. If specifying a UID + * or GID, you must specify it as a positive integer.

  • + * user

  • user:group

  • + *

    uid

  • uid:gid

  • + *

    user:gi

  • uid:group

  • + *

This parameter is not supported for + * Windows containers.

+ */ + inline bool UserHasBeenSet() const { return m_userHasBeenSet; } + + /** + *

The user to use inside the container. This parameter maps to User in the + * Create a container section of the Docker Remote API and the --user option to + * docker run.

When running tasks using the host network + * mode, don't run containers using the root user (UID 0). We + * recommend using a non-root user for better security.

You can + * specify the user using the following formats. If specifying a UID + * or GID, you must specify it as a positive integer.

  • + * user

  • user:group

  • + *

    uid

  • uid:gid

  • + *

    user:gi

  • uid:group

  • + *

This parameter is not supported for + * Windows containers.

+ */ + inline void SetUser(const Aws::String& value) { m_userHasBeenSet = true; m_user = value; } + + /** + *

The user to use inside the container. This parameter maps to User in the + * Create a container section of the Docker Remote API and the --user option to + * docker run.

When running tasks using the host network + * mode, don't run containers using the root user (UID 0). We + * recommend using a non-root user for better security.

You can + * specify the user using the following formats. If specifying a UID + * or GID, you must specify it as a positive integer.

  • + * user

  • user:group

  • + *

    uid

  • uid:gid

  • + *

    user:gi

  • uid:group

  • + *

This parameter is not supported for + * Windows containers.

+ */ + inline void SetUser(Aws::String&& value) { m_userHasBeenSet = true; m_user = std::move(value); } + + /** + *

The user to use inside the container. This parameter maps to User in the + * Create a container section of the Docker Remote API and the --user option to + * docker run.

When running tasks using the host network + * mode, don't run containers using the root user (UID 0). We + * recommend using a non-root user for better security.

You can + * specify the user using the following formats. If specifying a UID + * or GID, you must specify it as a positive integer.

  • + * user

  • user:group

  • + *

    uid

  • uid:gid

  • + *

    user:gi

  • uid:group

  • + *

This parameter is not supported for + * Windows containers.

+ */ + inline void SetUser(const char* value) { m_userHasBeenSet = true; m_user.assign(value); } + + /** + *

The user to use inside the container. This parameter maps to User in the + * Create a container section of the Docker Remote API and the --user option to + * docker run.

When running tasks using the host network + * mode, don't run containers using the root user (UID 0). We + * recommend using a non-root user for better security.

You can + * specify the user using the following formats. If specifying a UID + * or GID, you must specify it as a positive integer.

  • + * user

  • user:group

  • + *

    uid

  • uid:gid

  • + *

    user:gi

  • uid:group

  • + *

This parameter is not supported for + * Windows containers.

+ */ + inline TaskContainerDetails& WithUser(const Aws::String& value) { SetUser(value); return *this;} + + /** + *

The user to use inside the container. This parameter maps to User in the + * Create a container section of the Docker Remote API and the --user option to + * docker run.

When running tasks using the host network + * mode, don't run containers using the root user (UID 0). We + * recommend using a non-root user for better security.

You can + * specify the user using the following formats. If specifying a UID + * or GID, you must specify it as a positive integer.

  • + * user

  • user:group

  • + *

    uid

  • uid:gid

  • + *

    user:gi

  • uid:group

  • + *

This parameter is not supported for + * Windows containers.

+ */ + inline TaskContainerDetails& WithUser(Aws::String&& value) { SetUser(std::move(value)); return *this;} + + /** + *

The user to use inside the container. This parameter maps to User in the + * Create a container section of the Docker Remote API and the --user option to + * docker run.

When running tasks using the host network + * mode, don't run containers using the root user (UID 0). We + * recommend using a non-root user for better security.

You can + * specify the user using the following formats. If specifying a UID + * or GID, you must specify it as a positive integer.

  • + * user

  • user:group

  • + *

    uid

  • uid:gid

  • + *

    user:gi

  • uid:group

  • + *

This parameter is not supported for + * Windows containers.

+ */ + inline TaskContainerDetails& WithUser(const char* value) { SetUser(value); return *this;} + + + /** + *

The exit code returned upon completion.

+ */ + inline int GetExitCode() const{ return m_exitCode; } + + /** + *

The exit code returned upon completion.

+ */ + inline bool ExitCodeHasBeenSet() const { return m_exitCodeHasBeenSet; } + + /** + *

The exit code returned upon completion.

+ */ + inline void SetExitCode(int value) { m_exitCodeHasBeenSet = true; m_exitCode = value; } + + /** + *

The exit code returned upon completion.

+ */ + inline TaskContainerDetails& WithExitCode(int value) { SetExitCode(value); return *this;} + + + /** + *

A short (255 max characters) human-readable string to provide additional + * details for 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 for a running or stopped container.

+ */ + inline bool ReasonHasBeenSet() const { return m_reasonHasBeenSet; } + + /** + *

A short (255 max characters) human-readable string to provide additional + * details for 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 for 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 for 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 for a running or stopped container.

+ */ + inline TaskContainerDetails& WithReason(const Aws::String& value) { SetReason(value); return *this;} + + /** + *

A short (255 max characters) human-readable string to provide additional + * details for a running or stopped container.

+ */ + inline TaskContainerDetails& WithReason(Aws::String&& value) { SetReason(std::move(value)); return *this;} + + /** + *

A short (255 max characters) human-readable string to provide additional + * details for a running or stopped container.

+ */ + inline TaskContainerDetails& WithReason(const char* value) { SetReason(value); return *this;} + + + /** + *

The name of the CloudWatch Logs log stream that's associated with the + * container. The log group for Batch jobs is /aws/batch/job. Each container + * attempt receives a log stream name when they reach the RUNNING + * status.

+ */ + inline const Aws::String& GetLogStreamName() const{ return m_logStreamName; } + + /** + *

The name of the CloudWatch Logs log stream that's associated with the + * container. The log group for Batch jobs is /aws/batch/job. Each container + * attempt receives a log stream name when they reach the RUNNING + * status.

+ */ + inline bool LogStreamNameHasBeenSet() const { return m_logStreamNameHasBeenSet; } + + /** + *

The name of the CloudWatch Logs log stream that's associated with the + * container. The log group for Batch jobs is /aws/batch/job. Each container + * attempt receives a log stream name when they reach the RUNNING + * status.

+ */ + inline void SetLogStreamName(const Aws::String& value) { m_logStreamNameHasBeenSet = true; m_logStreamName = value; } + + /** + *

The name of the CloudWatch Logs log stream that's associated with the + * container. The log group for Batch jobs is /aws/batch/job. Each container + * attempt receives a log stream name when they reach the RUNNING + * status.

+ */ + inline void SetLogStreamName(Aws::String&& value) { m_logStreamNameHasBeenSet = true; m_logStreamName = std::move(value); } + + /** + *

The name of the CloudWatch Logs log stream that's associated with the + * container. The log group for Batch jobs is /aws/batch/job. Each container + * attempt receives a log stream name when they reach the RUNNING + * status.

+ */ + inline void SetLogStreamName(const char* value) { m_logStreamNameHasBeenSet = true; m_logStreamName.assign(value); } + + /** + *

The name of the CloudWatch Logs log stream that's associated with the + * container. The log group for Batch jobs is /aws/batch/job. Each container + * attempt receives a log stream name when they reach the RUNNING + * status.

+ */ + inline TaskContainerDetails& WithLogStreamName(const Aws::String& value) { SetLogStreamName(value); return *this;} + + /** + *

The name of the CloudWatch Logs log stream that's associated with the + * container. The log group for Batch jobs is /aws/batch/job. Each container + * attempt receives a log stream name when they reach the RUNNING + * status.

+ */ + inline TaskContainerDetails& WithLogStreamName(Aws::String&& value) { SetLogStreamName(std::move(value)); return *this;} + + /** + *

The name of the CloudWatch Logs log stream that's associated with the + * container. The log group for Batch jobs is /aws/batch/job. Each container + * attempt receives a log stream name when they reach the RUNNING + * status.

+ */ + inline TaskContainerDetails& WithLogStreamName(const char* value) { SetLogStreamName(value); return *this;} + + + /** + *

The network interfaces that are associated with the job.

+ */ + inline const Aws::Vector& GetNetworkInterfaces() const{ return m_networkInterfaces; } + + /** + *

The network interfaces that are associated with the job.

+ */ + inline bool NetworkInterfacesHasBeenSet() const { return m_networkInterfacesHasBeenSet; } + + /** + *

The network interfaces that are associated with the job.

+ */ + inline void SetNetworkInterfaces(const Aws::Vector& value) { m_networkInterfacesHasBeenSet = true; m_networkInterfaces = value; } + + /** + *

The network interfaces that are associated with the job.

+ */ + inline void SetNetworkInterfaces(Aws::Vector&& value) { m_networkInterfacesHasBeenSet = true; m_networkInterfaces = std::move(value); } + + /** + *

The network interfaces that are associated with the job.

+ */ + inline TaskContainerDetails& WithNetworkInterfaces(const Aws::Vector& value) { SetNetworkInterfaces(value); return *this;} + + /** + *

The network interfaces that are associated with the job.

+ */ + inline TaskContainerDetails& WithNetworkInterfaces(Aws::Vector&& value) { SetNetworkInterfaces(std::move(value)); return *this;} + + /** + *

The network interfaces that are associated with the job.

+ */ + inline TaskContainerDetails& AddNetworkInterfaces(const NetworkInterface& value) { m_networkInterfacesHasBeenSet = true; m_networkInterfaces.push_back(value); return *this; } + + /** + *

The network interfaces that are associated with the job.

+ */ + inline TaskContainerDetails& AddNetworkInterfaces(NetworkInterface&& value) { m_networkInterfacesHasBeenSet = true; m_networkInterfaces.push_back(std::move(value)); return *this; } + + private: + + Aws::Vector m_command; + bool m_commandHasBeenSet = false; + + Aws::Vector m_dependsOn; + bool m_dependsOnHasBeenSet = false; + + Aws::Vector m_environment; + bool m_environmentHasBeenSet = false; + + bool m_essential; + bool m_essentialHasBeenSet = false; + + Aws::String m_image; + bool m_imageHasBeenSet = false; + + LinuxParameters m_linuxParameters; + bool m_linuxParametersHasBeenSet = false; + + LogConfiguration m_logConfiguration; + bool m_logConfigurationHasBeenSet = false; + + Aws::Vector m_mountPoints; + bool m_mountPointsHasBeenSet = false; + + Aws::String m_name; + bool m_nameHasBeenSet = false; + + bool m_privileged; + bool m_privilegedHasBeenSet = false; + + bool m_readonlyRootFilesystem; + bool m_readonlyRootFilesystemHasBeenSet = false; + + RepositoryCredentials m_repositoryCredentials; + bool m_repositoryCredentialsHasBeenSet = false; + + Aws::Vector m_resourceRequirements; + bool m_resourceRequirementsHasBeenSet = false; + + Aws::Vector m_secrets; + bool m_secretsHasBeenSet = false; + + Aws::Vector m_ulimits; + bool m_ulimitsHasBeenSet = false; + + Aws::String m_user; + bool m_userHasBeenSet = false; + + int m_exitCode; + bool m_exitCodeHasBeenSet = false; + + Aws::String m_reason; + bool m_reasonHasBeenSet = false; + + Aws::String m_logStreamName; + bool m_logStreamNameHasBeenSet = false; + + Aws::Vector m_networkInterfaces; + bool m_networkInterfacesHasBeenSet = false; + }; + +} // namespace Model +} // namespace Batch +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/TaskContainerOverrides.h b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/TaskContainerOverrides.h new file mode 100644 index 00000000000..185565ecf11 --- /dev/null +++ b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/TaskContainerOverrides.h @@ -0,0 +1,313 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include +#include +#include +#include +#include + +namespace Aws +{ +namespace Utils +{ +namespace Json +{ + class JsonValue; + class JsonView; +} // namespace Json +} // namespace Utils +namespace Batch +{ +namespace Model +{ + + /** + *

The overrides that should be sent to a container.

For information + * about using Batch overrides when you connect event sources to targets, see BatchContainerOverrides.

See + * Also:

AWS + * API Reference

+ */ + class TaskContainerOverrides + { + public: + AWS_BATCH_API TaskContainerOverrides(); + AWS_BATCH_API TaskContainerOverrides(Aws::Utils::Json::JsonView jsonValue); + AWS_BATCH_API TaskContainerOverrides& operator=(Aws::Utils::Json::JsonView jsonValue); + AWS_BATCH_API Aws::Utils::Json::JsonValue Jsonize() const; + + + /** + *

The command to send to the container that overrides the default command from + * the Docker image or the job definition.

This parameter can't + * contain an empty string.

+ */ + inline const Aws::Vector& GetCommand() const{ return m_command; } + + /** + *

The command to send to the container that overrides the default command from + * the Docker image or the job definition.

This parameter can't + * contain an empty string.

+ */ + inline bool CommandHasBeenSet() const { return m_commandHasBeenSet; } + + /** + *

The command to send to the container that overrides the default command from + * the Docker image or the job definition.

This parameter can't + * contain an empty string.

+ */ + inline void SetCommand(const Aws::Vector& value) { m_commandHasBeenSet = true; m_command = value; } + + /** + *

The command to send to the container that overrides the default command from + * the Docker image or the job definition.

This parameter can't + * contain an empty string.

+ */ + inline void SetCommand(Aws::Vector&& value) { m_commandHasBeenSet = true; m_command = std::move(value); } + + /** + *

The command to send to the container that overrides the default command from + * the Docker image or the job definition.

This parameter can't + * contain an empty string.

+ */ + inline TaskContainerOverrides& WithCommand(const Aws::Vector& value) { SetCommand(value); return *this;} + + /** + *

The command to send to the container that overrides the default command from + * the Docker image or the job definition.

This parameter can't + * contain an empty string.

+ */ + inline TaskContainerOverrides& WithCommand(Aws::Vector&& value) { SetCommand(std::move(value)); return *this;} + + /** + *

The command to send to the container that overrides the default command from + * the Docker image or the job definition.

This parameter can't + * contain an empty string.

+ */ + inline TaskContainerOverrides& AddCommand(const Aws::String& value) { m_commandHasBeenSet = true; m_command.push_back(value); return *this; } + + /** + *

The command to send to the container that overrides the default command from + * the Docker image or the job definition.

This parameter can't + * contain an empty string.

+ */ + inline TaskContainerOverrides& AddCommand(Aws::String&& value) { m_commandHasBeenSet = true; m_command.push_back(std::move(value)); return *this; } + + /** + *

The command to send to the container that overrides the default command from + * the Docker image or the job definition.

This parameter can't + * contain an empty string.

+ */ + inline TaskContainerOverrides& AddCommand(const char* value) { m_commandHasBeenSet = true; m_command.push_back(value); return *this; } + + + /** + *

The environment variables to send to the container. You can add new + * environment variables, which are added to the container at launch, or you can + * override the existing environment variables from the Docker image or the job + * definition.

Environment variables cannot start with + * AWS_BATCH. This naming convention is reserved for variables that + * Batch sets.

+ */ + inline const Aws::Vector& GetEnvironment() const{ return m_environment; } + + /** + *

The environment variables to send to the container. You can add new + * environment variables, which are added to the container at launch, or you can + * override the existing environment variables from the Docker image or the job + * definition.

Environment variables cannot start with + * AWS_BATCH. This naming convention is reserved for variables that + * Batch sets.

+ */ + inline bool EnvironmentHasBeenSet() const { return m_environmentHasBeenSet; } + + /** + *

The environment variables to send to the container. You can add new + * environment variables, which are added to the container at launch, or you can + * override the existing environment variables from the Docker image or the job + * definition.

Environment variables cannot start with + * AWS_BATCH. This naming convention is reserved for variables that + * Batch sets.

+ */ + inline void SetEnvironment(const Aws::Vector& value) { m_environmentHasBeenSet = true; m_environment = value; } + + /** + *

The environment variables to send to the container. You can add new + * environment variables, which are added to the container at launch, or you can + * override the existing environment variables from the Docker image or the job + * definition.

Environment variables cannot start with + * AWS_BATCH. This naming convention is reserved for variables that + * Batch sets.

+ */ + inline void SetEnvironment(Aws::Vector&& value) { m_environmentHasBeenSet = true; m_environment = std::move(value); } + + /** + *

The environment variables to send to the container. You can add new + * environment variables, which are added to the container at launch, or you can + * override the existing environment variables from the Docker image or the job + * definition.

Environment variables cannot start with + * AWS_BATCH. This naming convention is reserved for variables that + * Batch sets.

+ */ + inline TaskContainerOverrides& WithEnvironment(const Aws::Vector& value) { SetEnvironment(value); return *this;} + + /** + *

The environment variables to send to the container. You can add new + * environment variables, which are added to the container at launch, or you can + * override the existing environment variables from the Docker image or the job + * definition.

Environment variables cannot start with + * AWS_BATCH. This naming convention is reserved for variables that + * Batch sets.

+ */ + inline TaskContainerOverrides& WithEnvironment(Aws::Vector&& value) { SetEnvironment(std::move(value)); return *this;} + + /** + *

The environment variables to send to the container. You can add new + * environment variables, which are added to the container at launch, or you can + * override the existing environment variables from the Docker image or the job + * definition.

Environment variables cannot start with + * AWS_BATCH. This naming convention is reserved for variables that + * Batch sets.

+ */ + inline TaskContainerOverrides& AddEnvironment(const KeyValuePair& value) { m_environmentHasBeenSet = true; m_environment.push_back(value); return *this; } + + /** + *

The environment variables to send to the container. You can add new + * environment variables, which are added to the container at launch, or you can + * override the existing environment variables from the Docker image or the job + * definition.

Environment variables cannot start with + * AWS_BATCH. This naming convention is reserved for variables that + * Batch sets.

+ */ + inline TaskContainerOverrides& AddEnvironment(KeyValuePair&& value) { m_environmentHasBeenSet = true; m_environment.push_back(std::move(value)); return *this; } + + + /** + *

A pointer to the container that you want to override. The container's name + * provides a unique identifier for the container being used.

+ */ + inline const Aws::String& GetName() const{ return m_name; } + + /** + *

A pointer to the container that you want to override. The container's name + * provides a unique identifier for the container being used.

+ */ + inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } + + /** + *

A pointer to the container that you want to override. The container's name + * provides a unique identifier for the container being used.

+ */ + inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } + + /** + *

A pointer to the container that you want to override. The container's name + * provides a unique identifier for the container being used.

+ */ + inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } + + /** + *

A pointer to the container that you want to override. The container's name + * provides a unique identifier for the container being used.

+ */ + inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } + + /** + *

A pointer to the container that you want to override. The container's name + * provides a unique identifier for the container being used.

+ */ + inline TaskContainerOverrides& WithName(const Aws::String& value) { SetName(value); return *this;} + + /** + *

A pointer to the container that you want to override. The container's name + * provides a unique identifier for the container being used.

+ */ + inline TaskContainerOverrides& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} + + /** + *

A pointer to the container that you want to override. The container's name + * provides a unique identifier for the container being used.

+ */ + inline TaskContainerOverrides& WithName(const char* value) { SetName(value); return *this;} + + + /** + *

The type and amount of resources to assign to a container. This overrides the + * settings in the job definition. The supported resources include + * GPU, MEMORY, and VCPU.

+ */ + inline const Aws::Vector& GetResourceRequirements() const{ return m_resourceRequirements; } + + /** + *

The type and amount of resources to assign to a container. This overrides the + * settings in the job definition. The supported resources include + * GPU, MEMORY, and VCPU.

+ */ + inline bool ResourceRequirementsHasBeenSet() const { return m_resourceRequirementsHasBeenSet; } + + /** + *

The type and amount of resources to assign to a container. This overrides the + * settings in the job definition. The supported resources include + * GPU, MEMORY, and VCPU.

+ */ + inline void SetResourceRequirements(const Aws::Vector& value) { m_resourceRequirementsHasBeenSet = true; m_resourceRequirements = value; } + + /** + *

The type and amount of resources to assign to a container. This overrides the + * settings in the job definition. The supported resources include + * GPU, MEMORY, and VCPU.

+ */ + inline void SetResourceRequirements(Aws::Vector&& value) { m_resourceRequirementsHasBeenSet = true; m_resourceRequirements = std::move(value); } + + /** + *

The type and amount of resources to assign to a container. This overrides the + * settings in the job definition. The supported resources include + * GPU, MEMORY, and VCPU.

+ */ + inline TaskContainerOverrides& WithResourceRequirements(const Aws::Vector& value) { SetResourceRequirements(value); return *this;} + + /** + *

The type and amount of resources to assign to a container. This overrides the + * settings in the job definition. The supported resources include + * GPU, MEMORY, and VCPU.

+ */ + inline TaskContainerOverrides& WithResourceRequirements(Aws::Vector&& value) { SetResourceRequirements(std::move(value)); return *this;} + + /** + *

The type and amount of resources to assign to a container. This overrides the + * settings in the job definition. The supported resources include + * GPU, MEMORY, and VCPU.

+ */ + inline TaskContainerOverrides& AddResourceRequirements(const ResourceRequirement& value) { m_resourceRequirementsHasBeenSet = true; m_resourceRequirements.push_back(value); return *this; } + + /** + *

The type and amount of resources to assign to a container. This overrides the + * settings in the job definition. The supported resources include + * GPU, MEMORY, and VCPU.

+ */ + inline TaskContainerOverrides& AddResourceRequirements(ResourceRequirement&& value) { m_resourceRequirementsHasBeenSet = true; m_resourceRequirements.push_back(std::move(value)); return *this; } + + private: + + Aws::Vector m_command; + bool m_commandHasBeenSet = false; + + Aws::Vector m_environment; + bool m_environmentHasBeenSet = false; + + Aws::String m_name; + bool m_nameHasBeenSet = false; + + Aws::Vector m_resourceRequirements; + bool m_resourceRequirementsHasBeenSet = false; + }; + +} // namespace Model +} // namespace Batch +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/TaskContainerProperties.h b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/TaskContainerProperties.h new file mode 100644 index 00000000000..7adafc564c6 --- /dev/null +++ b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/TaskContainerProperties.h @@ -0,0 +1,1580 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +namespace Aws +{ +namespace Utils +{ +namespace Json +{ + class JsonValue; + class JsonView; +} // namespace Json +} // namespace Utils +namespace Batch +{ +namespace Model +{ + + /** + *

Container properties are used for Amazon ECS-based job definitions. These + * properties to describe the container that's launched as part of a + * job.

See Also:

AWS + * API Reference

+ */ + class TaskContainerProperties + { + public: + AWS_BATCH_API TaskContainerProperties(); + AWS_BATCH_API TaskContainerProperties(Aws::Utils::Json::JsonView jsonValue); + AWS_BATCH_API TaskContainerProperties& operator=(Aws::Utils::Json::JsonView jsonValue); + AWS_BATCH_API Aws::Utils::Json::JsonValue Jsonize() const; + + + /** + *

The command that's passed to the container. This parameter maps to + * Cmd in the Create a + * container section of the Docker Remote API and the + * COMMAND parameter to docker run. For more + * information, see Dockerfile + * reference: CMD.

+ */ + inline const Aws::Vector& GetCommand() const{ return m_command; } + + /** + *

The command that's passed to the container. This parameter maps to + * Cmd in the Create a + * container section of the Docker Remote API and the + * COMMAND parameter to docker run. For more + * information, see Dockerfile + * reference: CMD.

+ */ + inline bool CommandHasBeenSet() const { return m_commandHasBeenSet; } + + /** + *

The command that's passed to the container. This parameter maps to + * Cmd in the Create a + * container section of the Docker Remote API and the + * COMMAND parameter to docker run. For more + * information, see Dockerfile + * reference: CMD.

+ */ + inline void SetCommand(const Aws::Vector& value) { m_commandHasBeenSet = true; m_command = value; } + + /** + *

The command that's passed to the container. This parameter maps to + * Cmd in the Create a + * container section of the Docker Remote API and the + * COMMAND parameter to docker run. For more + * information, see Dockerfile + * reference: CMD.

+ */ + inline void SetCommand(Aws::Vector&& value) { m_commandHasBeenSet = true; m_command = std::move(value); } + + /** + *

The command that's passed to the container. This parameter maps to + * Cmd in the Create a + * container section of the Docker Remote API and the + * COMMAND parameter to docker run. For more + * information, see Dockerfile + * reference: CMD.

+ */ + inline TaskContainerProperties& WithCommand(const Aws::Vector& value) { SetCommand(value); return *this;} + + /** + *

The command that's passed to the container. This parameter maps to + * Cmd in the Create a + * container section of the Docker Remote API and the + * COMMAND parameter to docker run. For more + * information, see Dockerfile + * reference: CMD.

+ */ + inline TaskContainerProperties& WithCommand(Aws::Vector&& value) { SetCommand(std::move(value)); return *this;} + + /** + *

The command that's passed to the container. This parameter maps to + * Cmd in the Create a + * container section of the Docker Remote API and the + * COMMAND parameter to docker run. For more + * information, see Dockerfile + * reference: CMD.

+ */ + inline TaskContainerProperties& AddCommand(const Aws::String& value) { m_commandHasBeenSet = true; m_command.push_back(value); return *this; } + + /** + *

The command that's passed to the container. This parameter maps to + * Cmd in the Create a + * container section of the Docker Remote API and the + * COMMAND parameter to docker run. For more + * information, see Dockerfile + * reference: CMD.

+ */ + inline TaskContainerProperties& AddCommand(Aws::String&& value) { m_commandHasBeenSet = true; m_command.push_back(std::move(value)); return *this; } + + /** + *

The command that's passed to the container. This parameter maps to + * Cmd in the Create a + * container section of the Docker Remote API and the + * COMMAND parameter to docker run. For more + * information, see Dockerfile + * reference: CMD.

+ */ + inline TaskContainerProperties& AddCommand(const char* value) { m_commandHasBeenSet = true; m_command.push_back(value); return *this; } + + + /** + *

A list of containers that this container depends on.

+ */ + inline const Aws::Vector& GetDependsOn() const{ return m_dependsOn; } + + /** + *

A list of containers that this container depends on.

+ */ + inline bool DependsOnHasBeenSet() const { return m_dependsOnHasBeenSet; } + + /** + *

A list of containers that this container depends on.

+ */ + inline void SetDependsOn(const Aws::Vector& value) { m_dependsOnHasBeenSet = true; m_dependsOn = value; } + + /** + *

A list of containers that this container depends on.

+ */ + inline void SetDependsOn(Aws::Vector&& value) { m_dependsOnHasBeenSet = true; m_dependsOn = std::move(value); } + + /** + *

A list of containers that this container depends on.

+ */ + inline TaskContainerProperties& WithDependsOn(const Aws::Vector& value) { SetDependsOn(value); return *this;} + + /** + *

A list of containers that this container depends on.

+ */ + inline TaskContainerProperties& WithDependsOn(Aws::Vector&& value) { SetDependsOn(std::move(value)); return *this;} + + /** + *

A list of containers that this container depends on.

+ */ + inline TaskContainerProperties& AddDependsOn(const TaskContainerDependency& value) { m_dependsOnHasBeenSet = true; m_dependsOn.push_back(value); return *this; } + + /** + *

A list of containers that this container depends on.

+ */ + inline TaskContainerProperties& AddDependsOn(TaskContainerDependency&& value) { m_dependsOnHasBeenSet = true; m_dependsOn.push_back(std::move(value)); return *this; } + + + /** + *

The environment variables to pass to a container. This parameter maps to Env + * inthe Create a + * container section of the Docker Remote API and the + * --env parameter to docker run.

+ *

We don't recommend using plaintext environment variables for + * sensitive information, such as credential data.

+ *

Environment variables cannot start with AWS_BATCH. This naming + * convention is reserved for variables that Batch sets.

+ */ + inline const Aws::Vector& GetEnvironment() const{ return m_environment; } + + /** + *

The environment variables to pass to a container. This parameter maps to Env + * inthe Create a + * container section of the Docker Remote API and the + * --env parameter to docker run.

+ *

We don't recommend using plaintext environment variables for + * sensitive information, such as credential data.

+ *

Environment variables cannot start with AWS_BATCH. This naming + * convention is reserved for variables that Batch sets.

+ */ + inline bool EnvironmentHasBeenSet() const { return m_environmentHasBeenSet; } + + /** + *

The environment variables to pass to a container. This parameter maps to Env + * inthe Create a + * container section of the Docker Remote API and the + * --env parameter to docker run.

+ *

We don't recommend using plaintext environment variables for + * sensitive information, such as credential data.

+ *

Environment variables cannot start with AWS_BATCH. This naming + * convention is reserved for variables that Batch sets.

+ */ + inline void SetEnvironment(const Aws::Vector& value) { m_environmentHasBeenSet = true; m_environment = value; } + + /** + *

The environment variables to pass to a container. This parameter maps to Env + * inthe Create a + * container section of the Docker Remote API and the + * --env parameter to docker run.

+ *

We don't recommend using plaintext environment variables for + * sensitive information, such as credential data.

+ *

Environment variables cannot start with AWS_BATCH. This naming + * convention is reserved for variables that Batch sets.

+ */ + inline void SetEnvironment(Aws::Vector&& value) { m_environmentHasBeenSet = true; m_environment = std::move(value); } + + /** + *

The environment variables to pass to a container. This parameter maps to Env + * inthe Create a + * container section of the Docker Remote API and the + * --env parameter to docker run.

+ *

We don't recommend using plaintext environment variables for + * sensitive information, such as credential data.

+ *

Environment variables cannot start with AWS_BATCH. This naming + * convention is reserved for variables that Batch sets.

+ */ + inline TaskContainerProperties& WithEnvironment(const Aws::Vector& value) { SetEnvironment(value); return *this;} + + /** + *

The environment variables to pass to a container. This parameter maps to Env + * inthe Create a + * container section of the Docker Remote API and the + * --env parameter to docker run.

+ *

We don't recommend using plaintext environment variables for + * sensitive information, such as credential data.

+ *

Environment variables cannot start with AWS_BATCH. This naming + * convention is reserved for variables that Batch sets.

+ */ + inline TaskContainerProperties& WithEnvironment(Aws::Vector&& value) { SetEnvironment(std::move(value)); return *this;} + + /** + *

The environment variables to pass to a container. This parameter maps to Env + * inthe Create a + * container section of the Docker Remote API and the + * --env parameter to docker run.

+ *

We don't recommend using plaintext environment variables for + * sensitive information, such as credential data.

+ *

Environment variables cannot start with AWS_BATCH. This naming + * convention is reserved for variables that Batch sets.

+ */ + inline TaskContainerProperties& AddEnvironment(const KeyValuePair& value) { m_environmentHasBeenSet = true; m_environment.push_back(value); return *this; } + + /** + *

The environment variables to pass to a container. This parameter maps to Env + * inthe Create a + * container section of the Docker Remote API and the + * --env parameter to docker run.

+ *

We don't recommend using plaintext environment variables for + * sensitive information, such as credential data.

+ *

Environment variables cannot start with AWS_BATCH. This naming + * convention is reserved for variables that Batch sets.

+ */ + inline TaskContainerProperties& AddEnvironment(KeyValuePair&& value) { m_environmentHasBeenSet = true; m_environment.push_back(std::move(value)); return *this; } + + + /** + *

If the essential parameter of a container is marked as true, and + * that container fails or stops for any reason, all other containers that are part + * of the task are stopped. If the essential parameter of a container + * is marked as false, its failure doesn't affect the rest of the containers in a + * task. If this parameter is omitted, a container is assumed to be essential.

+ *

All tasks must have at least one essential container. If you have an + * application that's composed of multiple containers, group containers that are + * used for a common purpose into components, and separate the different components + * into multiple task definitions. For more information, see Application + * Architecture in the Amazon Elastic Container Service Developer + * Guide.

+ */ + inline bool GetEssential() const{ return m_essential; } + + /** + *

If the essential parameter of a container is marked as true, and + * that container fails or stops for any reason, all other containers that are part + * of the task are stopped. If the essential parameter of a container + * is marked as false, its failure doesn't affect the rest of the containers in a + * task. If this parameter is omitted, a container is assumed to be essential.

+ *

All tasks must have at least one essential container. If you have an + * application that's composed of multiple containers, group containers that are + * used for a common purpose into components, and separate the different components + * into multiple task definitions. For more information, see Application + * Architecture in the Amazon Elastic Container Service Developer + * Guide.

+ */ + inline bool EssentialHasBeenSet() const { return m_essentialHasBeenSet; } + + /** + *

If the essential parameter of a container is marked as true, and + * that container fails or stops for any reason, all other containers that are part + * of the task are stopped. If the essential parameter of a container + * is marked as false, its failure doesn't affect the rest of the containers in a + * task. If this parameter is omitted, a container is assumed to be essential.

+ *

All tasks must have at least one essential container. If you have an + * application that's composed of multiple containers, group containers that are + * used for a common purpose into components, and separate the different components + * into multiple task definitions. For more information, see Application + * Architecture in the Amazon Elastic Container Service Developer + * Guide.

+ */ + inline void SetEssential(bool value) { m_essentialHasBeenSet = true; m_essential = value; } + + /** + *

If the essential parameter of a container is marked as true, and + * that container fails or stops for any reason, all other containers that are part + * of the task are stopped. If the essential parameter of a container + * is marked as false, its failure doesn't affect the rest of the containers in a + * task. If this parameter is omitted, a container is assumed to be essential.

+ *

All tasks must have at least one essential container. If you have an + * application that's composed of multiple containers, group containers that are + * used for a common purpose into components, and separate the different components + * into multiple task definitions. For more information, see Application + * Architecture in the Amazon Elastic Container Service Developer + * Guide.

+ */ + inline TaskContainerProperties& WithEssential(bool value) { SetEssential(value); return *this;} + + + /** + *

The image used to start a container. This string is passed directly to the + * Docker daemon. By default, images in the Docker Hub registry are available. + * Other repositories are specified with either + * repository-url/image:tag or + * repository-url/image@digest. Up to 255 letters (uppercase and + * lowercase), numbers, hyphens, underscores, colons, periods, forward slashes, and + * number signs are allowed. This parameter maps to Image in the Create + * a container section of the Docker Remote API and the + * IMAGE parameter of the + * docker run .

+ */ + inline const Aws::String& GetImage() const{ return m_image; } + + /** + *

The image used to start a container. This string is passed directly to the + * Docker daemon. By default, images in the Docker Hub registry are available. + * Other repositories are specified with either + * repository-url/image:tag or + * repository-url/image@digest. Up to 255 letters (uppercase and + * lowercase), numbers, hyphens, underscores, colons, periods, forward slashes, and + * number signs are allowed. This parameter maps to Image in the Create + * a container section of the Docker Remote API and the + * IMAGE parameter of the + * docker run .

+ */ + inline bool ImageHasBeenSet() const { return m_imageHasBeenSet; } + + /** + *

The image used to start a container. This string is passed directly to the + * Docker daemon. By default, images in the Docker Hub registry are available. + * Other repositories are specified with either + * repository-url/image:tag or + * repository-url/image@digest. Up to 255 letters (uppercase and + * lowercase), numbers, hyphens, underscores, colons, periods, forward slashes, and + * number signs are allowed. This parameter maps to Image in the Create + * a container section of the Docker Remote API and the + * IMAGE parameter of the + * docker run .

+ */ + inline void SetImage(const Aws::String& value) { m_imageHasBeenSet = true; m_image = value; } + + /** + *

The image used to start a container. This string is passed directly to the + * Docker daemon. By default, images in the Docker Hub registry are available. + * Other repositories are specified with either + * repository-url/image:tag or + * repository-url/image@digest. Up to 255 letters (uppercase and + * lowercase), numbers, hyphens, underscores, colons, periods, forward slashes, and + * number signs are allowed. This parameter maps to Image in the Create + * a container section of the Docker Remote API and the + * IMAGE parameter of the + * docker run .

+ */ + inline void SetImage(Aws::String&& value) { m_imageHasBeenSet = true; m_image = std::move(value); } + + /** + *

The image used to start a container. This string is passed directly to the + * Docker daemon. By default, images in the Docker Hub registry are available. + * Other repositories are specified with either + * repository-url/image:tag or + * repository-url/image@digest. Up to 255 letters (uppercase and + * lowercase), numbers, hyphens, underscores, colons, periods, forward slashes, and + * number signs are allowed. This parameter maps to Image in the Create + * a container section of the Docker Remote API and the + * IMAGE parameter of the + * docker run .

+ */ + inline void SetImage(const char* value) { m_imageHasBeenSet = true; m_image.assign(value); } + + /** + *

The image used to start a container. This string is passed directly to the + * Docker daemon. By default, images in the Docker Hub registry are available. + * Other repositories are specified with either + * repository-url/image:tag or + * repository-url/image@digest. Up to 255 letters (uppercase and + * lowercase), numbers, hyphens, underscores, colons, periods, forward slashes, and + * number signs are allowed. This parameter maps to Image in the Create + * a container section of the Docker Remote API and the + * IMAGE parameter of the + * docker run .

+ */ + inline TaskContainerProperties& WithImage(const Aws::String& value) { SetImage(value); return *this;} + + /** + *

The image used to start a container. This string is passed directly to the + * Docker daemon. By default, images in the Docker Hub registry are available. + * Other repositories are specified with either + * repository-url/image:tag or + * repository-url/image@digest. Up to 255 letters (uppercase and + * lowercase), numbers, hyphens, underscores, colons, periods, forward slashes, and + * number signs are allowed. This parameter maps to Image in the Create + * a container section of the Docker Remote API and the + * IMAGE parameter of the + * docker run .

+ */ + inline TaskContainerProperties& WithImage(Aws::String&& value) { SetImage(std::move(value)); return *this;} + + /** + *

The image used to start a container. This string is passed directly to the + * Docker daemon. By default, images in the Docker Hub registry are available. + * Other repositories are specified with either + * repository-url/image:tag or + * repository-url/image@digest. Up to 255 letters (uppercase and + * lowercase), numbers, hyphens, underscores, colons, periods, forward slashes, and + * number signs are allowed. This parameter maps to Image in the Create + * a container section of the Docker Remote API and the + * IMAGE parameter of the + * docker run .

+ */ + inline TaskContainerProperties& WithImage(const char* value) { SetImage(value); return *this;} + + + /** + *

Linux-specific modifications that are applied to the container, such as Linux + * kernel capabilities. For more information, see KernelCapabilities.

+ */ + inline const LinuxParameters& GetLinuxParameters() const{ return m_linuxParameters; } + + /** + *

Linux-specific modifications that are applied to the container, such as Linux + * kernel capabilities. For more information, see KernelCapabilities.

+ */ + inline bool LinuxParametersHasBeenSet() const { return m_linuxParametersHasBeenSet; } + + /** + *

Linux-specific modifications that are applied to the container, such as Linux + * kernel capabilities. For more information, see KernelCapabilities.

+ */ + inline void SetLinuxParameters(const LinuxParameters& value) { m_linuxParametersHasBeenSet = true; m_linuxParameters = value; } + + /** + *

Linux-specific modifications that are applied to the container, such as Linux + * kernel capabilities. For more information, see KernelCapabilities.

+ */ + inline void SetLinuxParameters(LinuxParameters&& value) { m_linuxParametersHasBeenSet = true; m_linuxParameters = std::move(value); } + + /** + *

Linux-specific modifications that are applied to the container, such as Linux + * kernel capabilities. For more information, see KernelCapabilities.

+ */ + inline TaskContainerProperties& WithLinuxParameters(const LinuxParameters& value) { SetLinuxParameters(value); return *this;} + + /** + *

Linux-specific modifications that are applied to the container, such as Linux + * kernel capabilities. For more information, see KernelCapabilities.

+ */ + inline TaskContainerProperties& WithLinuxParameters(LinuxParameters&& value) { SetLinuxParameters(std::move(value)); return *this;} + + + /** + *

The log configuration specification for the container.

This parameter + * maps to LogConfig in the Create + * a container section of the Docker Remote API and the + * --log-driver option to docker + * run.

By default, containers use the same logging driver that the + * Docker daemon uses. However the container can use a different logging driver + * than the Docker daemon by specifying a log driver with this parameter in the + * container definition. To use a different logging driver for a container, the log + * system must be configured properly on the container instance (or on a different + * log server for remote logging options). For more information about the options + * for different supported log drivers, see Configure logging + * drivers in the Docker documentation.

Amazon ECS + * currently supports a subset of the logging drivers available to the Docker + * daemon (shown in the LogConfiguration data type). Additional log + * drivers may be available in future releases of the Amazon ECS container + * agent.

This parameter requires version 1.18 of the Docker Remote + * API or greater on your container instance. To check the Docker Remote API + * version on your container instance, log in to your container instance and run + * the following command: sudo docker version --format + * '{{.Server.APIVersion}}'

The Amazon ECS container agent + * running on a container instance must register the logging drivers available on + * that instance with the ECS_AVAILABLE_LOGGING_DRIVERS environment + * variable before containers placed on that instance can use these log + * configuration options. For more information, see Amazon + * ECS container agent configuration in the Amazon Elastic Container Service + * Developer Guide.

+ */ + inline const LogConfiguration& GetLogConfiguration() const{ return m_logConfiguration; } + + /** + *

The log configuration specification for the container.

This parameter + * maps to LogConfig in the Create + * a container section of the Docker Remote API and the + * --log-driver option to docker + * run.

By default, containers use the same logging driver that the + * Docker daemon uses. However the container can use a different logging driver + * than the Docker daemon by specifying a log driver with this parameter in the + * container definition. To use a different logging driver for a container, the log + * system must be configured properly on the container instance (or on a different + * log server for remote logging options). For more information about the options + * for different supported log drivers, see Configure logging + * drivers in the Docker documentation.

Amazon ECS + * currently supports a subset of the logging drivers available to the Docker + * daemon (shown in the LogConfiguration data type). Additional log + * drivers may be available in future releases of the Amazon ECS container + * agent.

This parameter requires version 1.18 of the Docker Remote + * API or greater on your container instance. To check the Docker Remote API + * version on your container instance, log in to your container instance and run + * the following command: sudo docker version --format + * '{{.Server.APIVersion}}'

The Amazon ECS container agent + * running on a container instance must register the logging drivers available on + * that instance with the ECS_AVAILABLE_LOGGING_DRIVERS environment + * variable before containers placed on that instance can use these log + * configuration options. For more information, see Amazon + * ECS container agent configuration in the Amazon Elastic Container Service + * Developer Guide.

+ */ + inline bool LogConfigurationHasBeenSet() const { return m_logConfigurationHasBeenSet; } + + /** + *

The log configuration specification for the container.

This parameter + * maps to LogConfig in the Create + * a container section of the Docker Remote API and the + * --log-driver option to docker + * run.

By default, containers use the same logging driver that the + * Docker daemon uses. However the container can use a different logging driver + * than the Docker daemon by specifying a log driver with this parameter in the + * container definition. To use a different logging driver for a container, the log + * system must be configured properly on the container instance (or on a different + * log server for remote logging options). For more information about the options + * for different supported log drivers, see Configure logging + * drivers in the Docker documentation.

Amazon ECS + * currently supports a subset of the logging drivers available to the Docker + * daemon (shown in the LogConfiguration data type). Additional log + * drivers may be available in future releases of the Amazon ECS container + * agent.

This parameter requires version 1.18 of the Docker Remote + * API or greater on your container instance. To check the Docker Remote API + * version on your container instance, log in to your container instance and run + * the following command: sudo docker version --format + * '{{.Server.APIVersion}}'

The Amazon ECS container agent + * running on a container instance must register the logging drivers available on + * that instance with the ECS_AVAILABLE_LOGGING_DRIVERS environment + * variable before containers placed on that instance can use these log + * configuration options. For more information, see Amazon + * ECS container agent configuration in the Amazon Elastic Container Service + * Developer Guide.

+ */ + inline void SetLogConfiguration(const LogConfiguration& value) { m_logConfigurationHasBeenSet = true; m_logConfiguration = value; } + + /** + *

The log configuration specification for the container.

This parameter + * maps to LogConfig in the Create + * a container section of the Docker Remote API and the + * --log-driver option to docker + * run.

By default, containers use the same logging driver that the + * Docker daemon uses. However the container can use a different logging driver + * than the Docker daemon by specifying a log driver with this parameter in the + * container definition. To use a different logging driver for a container, the log + * system must be configured properly on the container instance (or on a different + * log server for remote logging options). For more information about the options + * for different supported log drivers, see Configure logging + * drivers in the Docker documentation.

Amazon ECS + * currently supports a subset of the logging drivers available to the Docker + * daemon (shown in the LogConfiguration data type). Additional log + * drivers may be available in future releases of the Amazon ECS container + * agent.

This parameter requires version 1.18 of the Docker Remote + * API or greater on your container instance. To check the Docker Remote API + * version on your container instance, log in to your container instance and run + * the following command: sudo docker version --format + * '{{.Server.APIVersion}}'

The Amazon ECS container agent + * running on a container instance must register the logging drivers available on + * that instance with the ECS_AVAILABLE_LOGGING_DRIVERS environment + * variable before containers placed on that instance can use these log + * configuration options. For more information, see Amazon + * ECS container agent configuration in the Amazon Elastic Container Service + * Developer Guide.

+ */ + inline void SetLogConfiguration(LogConfiguration&& value) { m_logConfigurationHasBeenSet = true; m_logConfiguration = std::move(value); } + + /** + *

The log configuration specification for the container.

This parameter + * maps to LogConfig in the Create + * a container section of the Docker Remote API and the + * --log-driver option to docker + * run.

By default, containers use the same logging driver that the + * Docker daemon uses. However the container can use a different logging driver + * than the Docker daemon by specifying a log driver with this parameter in the + * container definition. To use a different logging driver for a container, the log + * system must be configured properly on the container instance (or on a different + * log server for remote logging options). For more information about the options + * for different supported log drivers, see Configure logging + * drivers in the Docker documentation.

Amazon ECS + * currently supports a subset of the logging drivers available to the Docker + * daemon (shown in the LogConfiguration data type). Additional log + * drivers may be available in future releases of the Amazon ECS container + * agent.

This parameter requires version 1.18 of the Docker Remote + * API or greater on your container instance. To check the Docker Remote API + * version on your container instance, log in to your container instance and run + * the following command: sudo docker version --format + * '{{.Server.APIVersion}}'

The Amazon ECS container agent + * running on a container instance must register the logging drivers available on + * that instance with the ECS_AVAILABLE_LOGGING_DRIVERS environment + * variable before containers placed on that instance can use these log + * configuration options. For more information, see Amazon + * ECS container agent configuration in the Amazon Elastic Container Service + * Developer Guide.

+ */ + inline TaskContainerProperties& WithLogConfiguration(const LogConfiguration& value) { SetLogConfiguration(value); return *this;} + + /** + *

The log configuration specification for the container.

This parameter + * maps to LogConfig in the Create + * a container section of the Docker Remote API and the + * --log-driver option to docker + * run.

By default, containers use the same logging driver that the + * Docker daemon uses. However the container can use a different logging driver + * than the Docker daemon by specifying a log driver with this parameter in the + * container definition. To use a different logging driver for a container, the log + * system must be configured properly on the container instance (or on a different + * log server for remote logging options). For more information about the options + * for different supported log drivers, see Configure logging + * drivers in the Docker documentation.

Amazon ECS + * currently supports a subset of the logging drivers available to the Docker + * daemon (shown in the LogConfiguration data type). Additional log + * drivers may be available in future releases of the Amazon ECS container + * agent.

This parameter requires version 1.18 of the Docker Remote + * API or greater on your container instance. To check the Docker Remote API + * version on your container instance, log in to your container instance and run + * the following command: sudo docker version --format + * '{{.Server.APIVersion}}'

The Amazon ECS container agent + * running on a container instance must register the logging drivers available on + * that instance with the ECS_AVAILABLE_LOGGING_DRIVERS environment + * variable before containers placed on that instance can use these log + * configuration options. For more information, see Amazon + * ECS container agent configuration in the Amazon Elastic Container Service + * Developer Guide.

+ */ + inline TaskContainerProperties& WithLogConfiguration(LogConfiguration&& value) { SetLogConfiguration(std::move(value)); return *this;} + + + /** + *

The mount points for data volumes in your container.

This parameter + * maps to Volumes in the Create + * a container section of the Docker Remote API and the + * --volume option to docker + * run.

Windows containers can mount whole directories on the same drive + * as $env:ProgramData. Windows containers can't mount directories on + * a different drive, and mount point can't be across drives.

+ */ + inline const Aws::Vector& GetMountPoints() const{ return m_mountPoints; } + + /** + *

The mount points for data volumes in your container.

This parameter + * maps to Volumes in the Create + * a container section of the Docker Remote API and the + * --volume option to docker + * run.

Windows containers can mount whole directories on the same drive + * as $env:ProgramData. Windows containers can't mount directories on + * a different drive, and mount point can't be across drives.

+ */ + inline bool MountPointsHasBeenSet() const { return m_mountPointsHasBeenSet; } + + /** + *

The mount points for data volumes in your container.

This parameter + * maps to Volumes in the Create + * a container section of the Docker Remote API and the + * --volume option to docker + * run.

Windows containers can mount whole directories on the same drive + * as $env:ProgramData. Windows containers can't mount directories on + * a different drive, and mount point can't be across drives.

+ */ + inline void SetMountPoints(const Aws::Vector& value) { m_mountPointsHasBeenSet = true; m_mountPoints = value; } + + /** + *

The mount points for data volumes in your container.

This parameter + * maps to Volumes in the Create + * a container section of the Docker Remote API and the + * --volume option to docker + * run.

Windows containers can mount whole directories on the same drive + * as $env:ProgramData. Windows containers can't mount directories on + * a different drive, and mount point can't be across drives.

+ */ + inline void SetMountPoints(Aws::Vector&& value) { m_mountPointsHasBeenSet = true; m_mountPoints = std::move(value); } + + /** + *

The mount points for data volumes in your container.

This parameter + * maps to Volumes in the Create + * a container section of the Docker Remote API and the + * --volume option to docker + * run.

Windows containers can mount whole directories on the same drive + * as $env:ProgramData. Windows containers can't mount directories on + * a different drive, and mount point can't be across drives.

+ */ + inline TaskContainerProperties& WithMountPoints(const Aws::Vector& value) { SetMountPoints(value); return *this;} + + /** + *

The mount points for data volumes in your container.

This parameter + * maps to Volumes in the Create + * a container section of the Docker Remote API and the + * --volume option to docker + * run.

Windows containers can mount whole directories on the same drive + * as $env:ProgramData. Windows containers can't mount directories on + * a different drive, and mount point can't be across drives.

+ */ + inline TaskContainerProperties& WithMountPoints(Aws::Vector&& value) { SetMountPoints(std::move(value)); return *this;} + + /** + *

The mount points for data volumes in your container.

This parameter + * maps to Volumes in the Create + * a container section of the Docker Remote API and the + * --volume option to docker + * run.

Windows containers can mount whole directories on the same drive + * as $env:ProgramData. Windows containers can't mount directories on + * a different drive, and mount point can't be across drives.

+ */ + inline TaskContainerProperties& AddMountPoints(const MountPoint& value) { m_mountPointsHasBeenSet = true; m_mountPoints.push_back(value); return *this; } + + /** + *

The mount points for data volumes in your container.

This parameter + * maps to Volumes in the Create + * a container section of the Docker Remote API and the + * --volume option to docker + * run.

Windows containers can mount whole directories on the same drive + * as $env:ProgramData. Windows containers can't mount directories on + * a different drive, and mount point can't be across drives.

+ */ + inline TaskContainerProperties& AddMountPoints(MountPoint&& value) { m_mountPointsHasBeenSet = true; m_mountPoints.push_back(std::move(value)); return *this; } + + + /** + *

The name of a container. The name can be used as a unique identifier to + * target your dependsOn and Overrides objects.

+ */ + inline const Aws::String& GetName() const{ return m_name; } + + /** + *

The name of a container. The name can be used as a unique identifier to + * target your dependsOn and Overrides objects.

+ */ + inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } + + /** + *

The name of a container. The name can be used as a unique identifier to + * target your dependsOn and Overrides objects.

+ */ + inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } + + /** + *

The name of a container. The name can be used as a unique identifier to + * target your dependsOn and Overrides objects.

+ */ + inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } + + /** + *

The name of a container. The name can be used as a unique identifier to + * target your dependsOn and Overrides objects.

+ */ + inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } + + /** + *

The name of a container. The name can be used as a unique identifier to + * target your dependsOn and Overrides objects.

+ */ + inline TaskContainerProperties& WithName(const Aws::String& value) { SetName(value); return *this;} + + /** + *

The name of a container. The name can be used as a unique identifier to + * target your dependsOn and Overrides objects.

+ */ + inline TaskContainerProperties& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} + + /** + *

The name of a container. The name can be used as a unique identifier to + * target your dependsOn and Overrides objects.

+ */ + inline TaskContainerProperties& WithName(const char* value) { SetName(value); return *this;} + + + /** + *

When this parameter is true, the container is given elevated + * privileges on the host container instance (similar to the root + * user). This parameter maps to Privileged in the Create + * a container section of the Docker Remote API and the + * --privileged option to docker + * run.

This parameter is not supported for Windows containers or + * tasks run on Fargate.

+ */ + inline bool GetPrivileged() const{ return m_privileged; } + + /** + *

When this parameter is true, the container is given elevated + * privileges on the host container instance (similar to the root + * user). This parameter maps to Privileged in the Create + * a container section of the Docker Remote API and the + * --privileged option to docker + * run.

This parameter is not supported for Windows containers or + * tasks run on Fargate.

+ */ + inline bool PrivilegedHasBeenSet() const { return m_privilegedHasBeenSet; } + + /** + *

When this parameter is true, the container is given elevated + * privileges on the host container instance (similar to the root + * user). This parameter maps to Privileged in the Create + * a container section of the Docker Remote API and the + * --privileged option to docker + * run.

This parameter is not supported for Windows containers or + * tasks run on Fargate.

+ */ + inline void SetPrivileged(bool value) { m_privilegedHasBeenSet = true; m_privileged = value; } + + /** + *

When this parameter is true, the container is given elevated + * privileges on the host container instance (similar to the root + * user). This parameter maps to Privileged in the Create + * a container section of the Docker Remote API and the + * --privileged option to docker + * run.

This parameter is not supported for Windows containers or + * tasks run on Fargate.

+ */ + inline TaskContainerProperties& WithPrivileged(bool value) { SetPrivileged(value); return *this;} + + + /** + *

When this parameter is true, the container is given read-only access to its + * root file system. This parameter maps to ReadonlyRootfs in the Create + * a container section of the Docker Remote API and the + * --read-only option to docker + * run.

This parameter is not supported for Windows + * containers.

+ */ + inline bool GetReadonlyRootFilesystem() const{ return m_readonlyRootFilesystem; } + + /** + *

When this parameter is true, the container is given read-only access to its + * root file system. This parameter maps to ReadonlyRootfs in the Create + * a container section of the Docker Remote API and the + * --read-only option to docker + * run.

This parameter is not supported for Windows + * containers.

+ */ + inline bool ReadonlyRootFilesystemHasBeenSet() const { return m_readonlyRootFilesystemHasBeenSet; } + + /** + *

When this parameter is true, the container is given read-only access to its + * root file system. This parameter maps to ReadonlyRootfs in the Create + * a container section of the Docker Remote API and the + * --read-only option to docker + * run.

This parameter is not supported for Windows + * containers.

+ */ + 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. This parameter maps to ReadonlyRootfs in the Create + * a container section of the Docker Remote API and the + * --read-only option to docker + * run.

This parameter is not supported for Windows + * containers.

+ */ + inline TaskContainerProperties& WithReadonlyRootFilesystem(bool value) { SetReadonlyRootFilesystem(value); return *this;} + + + /** + *

The private repository authentication credentials to use.

+ */ + inline const RepositoryCredentials& GetRepositoryCredentials() const{ return m_repositoryCredentials; } + + /** + *

The private repository authentication credentials to use.

+ */ + inline bool RepositoryCredentialsHasBeenSet() const { return m_repositoryCredentialsHasBeenSet; } + + /** + *

The private repository authentication credentials to use.

+ */ + inline void SetRepositoryCredentials(const RepositoryCredentials& value) { m_repositoryCredentialsHasBeenSet = true; m_repositoryCredentials = value; } + + /** + *

The private repository authentication credentials to use.

+ */ + inline void SetRepositoryCredentials(RepositoryCredentials&& value) { m_repositoryCredentialsHasBeenSet = true; m_repositoryCredentials = std::move(value); } + + /** + *

The private repository authentication credentials to use.

+ */ + inline TaskContainerProperties& WithRepositoryCredentials(const RepositoryCredentials& value) { SetRepositoryCredentials(value); return *this;} + + /** + *

The private repository authentication credentials to use.

+ */ + inline TaskContainerProperties& WithRepositoryCredentials(RepositoryCredentials&& value) { SetRepositoryCredentials(std::move(value)); return *this;} + + + /** + *

The type and amount of a resource to assign to a container. The only + * supported resource is a GPU.

+ */ + inline const Aws::Vector& GetResourceRequirements() const{ return m_resourceRequirements; } + + /** + *

The type and amount of a resource to assign to a container. The only + * supported resource is a GPU.

+ */ + inline bool ResourceRequirementsHasBeenSet() const { return m_resourceRequirementsHasBeenSet; } + + /** + *

The type and amount of a resource to assign to a container. The only + * supported resource is a GPU.

+ */ + inline void SetResourceRequirements(const Aws::Vector& value) { m_resourceRequirementsHasBeenSet = true; m_resourceRequirements = value; } + + /** + *

The type and amount of a resource to assign to a container. The only + * supported resource is a GPU.

+ */ + inline void SetResourceRequirements(Aws::Vector&& value) { m_resourceRequirementsHasBeenSet = true; m_resourceRequirements = std::move(value); } + + /** + *

The type and amount of a resource to assign to a container. The only + * supported resource is a GPU.

+ */ + inline TaskContainerProperties& WithResourceRequirements(const Aws::Vector& value) { SetResourceRequirements(value); return *this;} + + /** + *

The type and amount of a resource to assign to a container. The only + * supported resource is a GPU.

+ */ + inline TaskContainerProperties& WithResourceRequirements(Aws::Vector&& value) { SetResourceRequirements(std::move(value)); return *this;} + + /** + *

The type and amount of a resource to assign to a container. The only + * supported resource is a GPU.

+ */ + inline TaskContainerProperties& AddResourceRequirements(const ResourceRequirement& value) { m_resourceRequirementsHasBeenSet = true; m_resourceRequirements.push_back(value); return *this; } + + /** + *

The type and amount of a resource to assign to a container. The only + * supported resource is a GPU.

+ */ + inline TaskContainerProperties& AddResourceRequirements(ResourceRequirement&& value) { m_resourceRequirementsHasBeenSet = true; m_resourceRequirements.push_back(std::move(value)); return *this; } + + + /** + *

The secrets to pass to the container. For more information, see Specifying + * Sensitive Data in the Amazon Elastic Container Service Developer Guide.

+ */ + inline const Aws::Vector& GetSecrets() const{ return m_secrets; } + + /** + *

The secrets to pass to the container. For more information, see Specifying + * Sensitive Data in the Amazon Elastic Container Service Developer Guide.

+ */ + inline bool SecretsHasBeenSet() const { return m_secretsHasBeenSet; } + + /** + *

The secrets to pass to the container. For more information, see Specifying + * Sensitive Data in the Amazon Elastic Container Service Developer Guide.

+ */ + inline void SetSecrets(const Aws::Vector& value) { m_secretsHasBeenSet = true; m_secrets = value; } + + /** + *

The secrets to pass to the container. For more information, see Specifying + * Sensitive Data in the Amazon Elastic Container Service Developer Guide.

+ */ + inline void SetSecrets(Aws::Vector&& value) { m_secretsHasBeenSet = true; m_secrets = std::move(value); } + + /** + *

The secrets to pass to the container. For more information, see Specifying + * Sensitive Data in the Amazon Elastic Container Service Developer Guide.

+ */ + inline TaskContainerProperties& WithSecrets(const Aws::Vector& value) { SetSecrets(value); return *this;} + + /** + *

The secrets to pass to the container. For more information, see Specifying + * Sensitive Data in the Amazon Elastic Container Service Developer Guide.

+ */ + inline TaskContainerProperties& WithSecrets(Aws::Vector&& value) { SetSecrets(std::move(value)); return *this;} + + /** + *

The secrets to pass to the container. For more information, see Specifying + * Sensitive Data in the Amazon Elastic Container Service Developer Guide.

+ */ + inline TaskContainerProperties& AddSecrets(const Secret& value) { m_secretsHasBeenSet = true; m_secrets.push_back(value); return *this; } + + /** + *

The secrets to pass to the container. For more information, see Specifying + * Sensitive Data in the Amazon Elastic Container Service Developer Guide.

+ */ + inline TaskContainerProperties& AddSecrets(Secret&& value) { m_secretsHasBeenSet = true; m_secrets.push_back(std::move(value)); return *this; } + + + /** + *

A list of ulimits to set in the container. If a + * ulimit value is specified in a task definition, it overrides the + * default values set by Docker. This parameter maps to Ulimits in the + * Create + * a container section of the Docker Remote API and the + * --ulimit option to docker + * run.

Amazon ECS tasks hosted on Fargate use the default resource + * limit values set by the operating system with the exception of the nofile + * resource limit parameter which Fargate overrides. The nofile + * resource limit sets a restriction on the number of open files that a container + * can use. The default nofile soft limit is 1024 and the + * default hard limit is 65535.

This parameter requires version + * 1.18 of the Docker Remote API or greater on your container instance. To check + * the Docker Remote API version on your container instance, log in to your + * container instance and run the following command: sudo docker version + * --format '{{.Server.APIVersion}}'

This parameter is + * not supported for Windows containers.

+ */ + inline const Aws::Vector& GetUlimits() const{ return m_ulimits; } + + /** + *

A list of ulimits to set in the container. If a + * ulimit value is specified in a task definition, it overrides the + * default values set by Docker. This parameter maps to Ulimits in the + * Create + * a container section of the Docker Remote API and the + * --ulimit option to docker + * run.

Amazon ECS tasks hosted on Fargate use the default resource + * limit values set by the operating system with the exception of the nofile + * resource limit parameter which Fargate overrides. The nofile + * resource limit sets a restriction on the number of open files that a container + * can use. The default nofile soft limit is 1024 and the + * default hard limit is 65535.

This parameter requires version + * 1.18 of the Docker Remote API or greater on your container instance. To check + * the Docker Remote API version on your container instance, log in to your + * container instance and run the following command: sudo docker version + * --format '{{.Server.APIVersion}}'

This parameter is + * not supported for Windows containers.

+ */ + inline bool UlimitsHasBeenSet() const { return m_ulimitsHasBeenSet; } + + /** + *

A list of ulimits to set in the container. If a + * ulimit value is specified in a task definition, it overrides the + * default values set by Docker. This parameter maps to Ulimits in the + * Create + * a container section of the Docker Remote API and the + * --ulimit option to docker + * run.

Amazon ECS tasks hosted on Fargate use the default resource + * limit values set by the operating system with the exception of the nofile + * resource limit parameter which Fargate overrides. The nofile + * resource limit sets a restriction on the number of open files that a container + * can use. The default nofile soft limit is 1024 and the + * default hard limit is 65535.

This parameter requires version + * 1.18 of the Docker Remote API or greater on your container instance. To check + * the Docker Remote API version on your container instance, log in to your + * container instance and run the following command: sudo docker version + * --format '{{.Server.APIVersion}}'

This parameter is + * not supported for Windows containers.

+ */ + inline void SetUlimits(const Aws::Vector& value) { m_ulimitsHasBeenSet = true; m_ulimits = value; } + + /** + *

A list of ulimits to set in the container. If a + * ulimit value is specified in a task definition, it overrides the + * default values set by Docker. This parameter maps to Ulimits in the + * Create + * a container section of the Docker Remote API and the + * --ulimit option to docker + * run.

Amazon ECS tasks hosted on Fargate use the default resource + * limit values set by the operating system with the exception of the nofile + * resource limit parameter which Fargate overrides. The nofile + * resource limit sets a restriction on the number of open files that a container + * can use. The default nofile soft limit is 1024 and the + * default hard limit is 65535.

This parameter requires version + * 1.18 of the Docker Remote API or greater on your container instance. To check + * the Docker Remote API version on your container instance, log in to your + * container instance and run the following command: sudo docker version + * --format '{{.Server.APIVersion}}'

This parameter is + * not supported for Windows containers.

+ */ + inline void SetUlimits(Aws::Vector&& value) { m_ulimitsHasBeenSet = true; m_ulimits = std::move(value); } + + /** + *

A list of ulimits to set in the container. If a + * ulimit value is specified in a task definition, it overrides the + * default values set by Docker. This parameter maps to Ulimits in the + * Create + * a container section of the Docker Remote API and the + * --ulimit option to docker + * run.

Amazon ECS tasks hosted on Fargate use the default resource + * limit values set by the operating system with the exception of the nofile + * resource limit parameter which Fargate overrides. The nofile + * resource limit sets a restriction on the number of open files that a container + * can use. The default nofile soft limit is 1024 and the + * default hard limit is 65535.

This parameter requires version + * 1.18 of the Docker Remote API or greater on your container instance. To check + * the Docker Remote API version on your container instance, log in to your + * container instance and run the following command: sudo docker version + * --format '{{.Server.APIVersion}}'

This parameter is + * not supported for Windows containers.

+ */ + inline TaskContainerProperties& WithUlimits(const Aws::Vector& value) { SetUlimits(value); return *this;} + + /** + *

A list of ulimits to set in the container. If a + * ulimit value is specified in a task definition, it overrides the + * default values set by Docker. This parameter maps to Ulimits in the + * Create + * a container section of the Docker Remote API and the + * --ulimit option to docker + * run.

Amazon ECS tasks hosted on Fargate use the default resource + * limit values set by the operating system with the exception of the nofile + * resource limit parameter which Fargate overrides. The nofile + * resource limit sets a restriction on the number of open files that a container + * can use. The default nofile soft limit is 1024 and the + * default hard limit is 65535.

This parameter requires version + * 1.18 of the Docker Remote API or greater on your container instance. To check + * the Docker Remote API version on your container instance, log in to your + * container instance and run the following command: sudo docker version + * --format '{{.Server.APIVersion}}'

This parameter is + * not supported for Windows containers.

+ */ + inline TaskContainerProperties& WithUlimits(Aws::Vector&& value) { SetUlimits(std::move(value)); return *this;} + + /** + *

A list of ulimits to set in the container. If a + * ulimit value is specified in a task definition, it overrides the + * default values set by Docker. This parameter maps to Ulimits in the + * Create + * a container section of the Docker Remote API and the + * --ulimit option to docker + * run.

Amazon ECS tasks hosted on Fargate use the default resource + * limit values set by the operating system with the exception of the nofile + * resource limit parameter which Fargate overrides. The nofile + * resource limit sets a restriction on the number of open files that a container + * can use. The default nofile soft limit is 1024 and the + * default hard limit is 65535.

This parameter requires version + * 1.18 of the Docker Remote API or greater on your container instance. To check + * the Docker Remote API version on your container instance, log in to your + * container instance and run the following command: sudo docker version + * --format '{{.Server.APIVersion}}'

This parameter is + * not supported for Windows containers.

+ */ + inline TaskContainerProperties& AddUlimits(const Ulimit& value) { m_ulimitsHasBeenSet = true; m_ulimits.push_back(value); return *this; } + + /** + *

A list of ulimits to set in the container. If a + * ulimit value is specified in a task definition, it overrides the + * default values set by Docker. This parameter maps to Ulimits in the + * Create + * a container section of the Docker Remote API and the + * --ulimit option to docker + * run.

Amazon ECS tasks hosted on Fargate use the default resource + * limit values set by the operating system with the exception of the nofile + * resource limit parameter which Fargate overrides. The nofile + * resource limit sets a restriction on the number of open files that a container + * can use. The default nofile soft limit is 1024 and the + * default hard limit is 65535.

This parameter requires version + * 1.18 of the Docker Remote API or greater on your container instance. To check + * the Docker Remote API version on your container instance, log in to your + * container instance and run the following command: sudo docker version + * --format '{{.Server.APIVersion}}'

This parameter is + * not supported for Windows containers.

+ */ + inline TaskContainerProperties& AddUlimits(Ulimit&& value) { m_ulimitsHasBeenSet = true; m_ulimits.push_back(std::move(value)); return *this; } + + + /** + *

The user to use inside the container. This parameter maps to User in the + * Create a container section of the Docker Remote API and the --user option to + * docker run.

When running tasks using the host network + * mode, don't run containers using the root user (UID 0). We + * recommend using a non-root user for better security.

You can + * specify the user using the following formats. If specifying a UID + * or GID, you must specify it as a positive integer.

  • + * user

  • user:group

  • + *

    uid

  • uid:gid

  • + *

    user:gi

  • uid:group

  • + *

This parameter is not supported for Windows containers.

+ * + */ + inline const Aws::String& GetUser() const{ return m_user; } + + /** + *

The user to use inside the container. This parameter maps to User in the + * Create a container section of the Docker Remote API and the --user option to + * docker run.

When running tasks using the host network + * mode, don't run containers using the root user (UID 0). We + * recommend using a non-root user for better security.

You can + * specify the user using the following formats. If specifying a UID + * or GID, you must specify it as a positive integer.

  • + * user

  • user:group

  • + *

    uid

  • uid:gid

  • + *

    user:gi

  • uid:group

  • + *

This parameter is not supported for Windows containers.

+ * + */ + inline bool UserHasBeenSet() const { return m_userHasBeenSet; } + + /** + *

The user to use inside the container. This parameter maps to User in the + * Create a container section of the Docker Remote API and the --user option to + * docker run.

When running tasks using the host network + * mode, don't run containers using the root user (UID 0). We + * recommend using a non-root user for better security.

You can + * specify the user using the following formats. If specifying a UID + * or GID, you must specify it as a positive integer.

  • + * user

  • user:group

  • + *

    uid

  • uid:gid

  • + *

    user:gi

  • uid:group

  • + *

This parameter is not supported for Windows containers.

+ * + */ + inline void SetUser(const Aws::String& value) { m_userHasBeenSet = true; m_user = value; } + + /** + *

The user to use inside the container. This parameter maps to User in the + * Create a container section of the Docker Remote API and the --user option to + * docker run.

When running tasks using the host network + * mode, don't run containers using the root user (UID 0). We + * recommend using a non-root user for better security.

You can + * specify the user using the following formats. If specifying a UID + * or GID, you must specify it as a positive integer.

  • + * user

  • user:group

  • + *

    uid

  • uid:gid

  • + *

    user:gi

  • uid:group

  • + *

This parameter is not supported for Windows containers.

+ * + */ + inline void SetUser(Aws::String&& value) { m_userHasBeenSet = true; m_user = std::move(value); } + + /** + *

The user to use inside the container. This parameter maps to User in the + * Create a container section of the Docker Remote API and the --user option to + * docker run.

When running tasks using the host network + * mode, don't run containers using the root user (UID 0). We + * recommend using a non-root user for better security.

You can + * specify the user using the following formats. If specifying a UID + * or GID, you must specify it as a positive integer.

  • + * user

  • user:group

  • + *

    uid

  • uid:gid

  • + *

    user:gi

  • uid:group

  • + *

This parameter is not supported for Windows containers.

+ * + */ + inline void SetUser(const char* value) { m_userHasBeenSet = true; m_user.assign(value); } + + /** + *

The user to use inside the container. This parameter maps to User in the + * Create a container section of the Docker Remote API and the --user option to + * docker run.

When running tasks using the host network + * mode, don't run containers using the root user (UID 0). We + * recommend using a non-root user for better security.

You can + * specify the user using the following formats. If specifying a UID + * or GID, you must specify it as a positive integer.

  • + * user

  • user:group

  • + *

    uid

  • uid:gid

  • + *

    user:gi

  • uid:group

  • + *

This parameter is not supported for Windows containers.

+ * + */ + inline TaskContainerProperties& WithUser(const Aws::String& value) { SetUser(value); return *this;} + + /** + *

The user to use inside the container. This parameter maps to User in the + * Create a container section of the Docker Remote API and the --user option to + * docker run.

When running tasks using the host network + * mode, don't run containers using the root user (UID 0). We + * recommend using a non-root user for better security.

You can + * specify the user using the following formats. If specifying a UID + * or GID, you must specify it as a positive integer.

  • + * user

  • user:group

  • + *

    uid

  • uid:gid

  • + *

    user:gi

  • uid:group

  • + *

This parameter is not supported for Windows containers.

+ * + */ + inline TaskContainerProperties& WithUser(Aws::String&& value) { SetUser(std::move(value)); return *this;} + + /** + *

The user to use inside the container. This parameter maps to User in the + * Create a container section of the Docker Remote API and the --user option to + * docker run.

When running tasks using the host network + * mode, don't run containers using the root user (UID 0). We + * recommend using a non-root user for better security.

You can + * specify the user using the following formats. If specifying a UID + * or GID, you must specify it as a positive integer.

  • + * user

  • user:group

  • + *

    uid

  • uid:gid

  • + *

    user:gi

  • uid:group

  • + *

This parameter is not supported for Windows containers.

+ * + */ + inline TaskContainerProperties& WithUser(const char* value) { SetUser(value); return *this;} + + private: + + Aws::Vector m_command; + bool m_commandHasBeenSet = false; + + Aws::Vector m_dependsOn; + bool m_dependsOnHasBeenSet = false; + + Aws::Vector m_environment; + bool m_environmentHasBeenSet = false; + + bool m_essential; + bool m_essentialHasBeenSet = false; + + Aws::String m_image; + bool m_imageHasBeenSet = false; + + LinuxParameters m_linuxParameters; + bool m_linuxParametersHasBeenSet = false; + + LogConfiguration m_logConfiguration; + bool m_logConfigurationHasBeenSet = false; + + Aws::Vector m_mountPoints; + bool m_mountPointsHasBeenSet = false; + + Aws::String m_name; + bool m_nameHasBeenSet = false; + + bool m_privileged; + bool m_privilegedHasBeenSet = false; + + bool m_readonlyRootFilesystem; + bool m_readonlyRootFilesystemHasBeenSet = false; + + RepositoryCredentials m_repositoryCredentials; + bool m_repositoryCredentialsHasBeenSet = false; + + Aws::Vector m_resourceRequirements; + bool m_resourceRequirementsHasBeenSet = false; + + Aws::Vector m_secrets; + bool m_secretsHasBeenSet = false; + + Aws::Vector m_ulimits; + bool m_ulimitsHasBeenSet = false; + + Aws::String m_user; + bool m_userHasBeenSet = false; + }; + +} // namespace Model +} // namespace Batch +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/TaskPropertiesOverride.h b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/TaskPropertiesOverride.h new file mode 100644 index 00000000000..a297ee1fbb1 --- /dev/null +++ b/generated/src/aws-cpp-sdk-batch/include/aws/batch/model/TaskPropertiesOverride.h @@ -0,0 +1,90 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include +#include +#include + +namespace Aws +{ +namespace Utils +{ +namespace Json +{ + class JsonValue; + class JsonView; +} // namespace Json +} // namespace Utils +namespace Batch +{ +namespace Model +{ + + /** + *

An object that contains overrides for the task definition of a + * job.

See Also:

AWS + * API Reference

+ */ + class TaskPropertiesOverride + { + public: + AWS_BATCH_API TaskPropertiesOverride(); + AWS_BATCH_API TaskPropertiesOverride(Aws::Utils::Json::JsonView jsonValue); + AWS_BATCH_API TaskPropertiesOverride& operator=(Aws::Utils::Json::JsonView jsonValue); + AWS_BATCH_API Aws::Utils::Json::JsonValue Jsonize() const; + + + /** + *

The overrides for the container definition of a job.

+ */ + inline const Aws::Vector& GetContainers() const{ return m_containers; } + + /** + *

The overrides for the container definition of a job.

+ */ + inline bool ContainersHasBeenSet() const { return m_containersHasBeenSet; } + + /** + *

The overrides for the container definition of a job.

+ */ + inline void SetContainers(const Aws::Vector& value) { m_containersHasBeenSet = true; m_containers = value; } + + /** + *

The overrides for the container definition of a job.

+ */ + inline void SetContainers(Aws::Vector&& value) { m_containersHasBeenSet = true; m_containers = std::move(value); } + + /** + *

The overrides for the container definition of a job.

+ */ + inline TaskPropertiesOverride& WithContainers(const Aws::Vector& value) { SetContainers(value); return *this;} + + /** + *

The overrides for the container definition of a job.

+ */ + inline TaskPropertiesOverride& WithContainers(Aws::Vector&& value) { SetContainers(std::move(value)); return *this;} + + /** + *

The overrides for the container definition of a job.

+ */ + inline TaskPropertiesOverride& AddContainers(const TaskContainerOverrides& value) { m_containersHasBeenSet = true; m_containers.push_back(value); return *this; } + + /** + *

The overrides for the container definition of a job.

+ */ + inline TaskPropertiesOverride& AddContainers(TaskContainerOverrides&& value) { m_containersHasBeenSet = true; m_containers.push_back(std::move(value)); return *this; } + + private: + + Aws::Vector m_containers; + bool m_containersHasBeenSet = false; + }; + +} // namespace Model +} // namespace Batch +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-batch/source/model/EcsProperties.cpp b/generated/src/aws-cpp-sdk-batch/source/model/EcsProperties.cpp new file mode 100644 index 00000000000..49162c3f1ba --- /dev/null +++ b/generated/src/aws-cpp-sdk-batch/source/model/EcsProperties.cpp @@ -0,0 +1,67 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include + +#include + +using namespace Aws::Utils::Json; +using namespace Aws::Utils; + +namespace Aws +{ +namespace Batch +{ +namespace Model +{ + +EcsProperties::EcsProperties() : + m_taskPropertiesHasBeenSet(false) +{ +} + +EcsProperties::EcsProperties(JsonView jsonValue) : + m_taskPropertiesHasBeenSet(false) +{ + *this = jsonValue; +} + +EcsProperties& EcsProperties::operator =(JsonView jsonValue) +{ + if(jsonValue.ValueExists("taskProperties")) + { + Aws::Utils::Array taskPropertiesJsonList = jsonValue.GetArray("taskProperties"); + for(unsigned taskPropertiesIndex = 0; taskPropertiesIndex < taskPropertiesJsonList.GetLength(); ++taskPropertiesIndex) + { + m_taskProperties.push_back(taskPropertiesJsonList[taskPropertiesIndex].AsObject()); + } + m_taskPropertiesHasBeenSet = true; + } + + return *this; +} + +JsonValue EcsProperties::Jsonize() const +{ + JsonValue payload; + + if(m_taskPropertiesHasBeenSet) + { + Aws::Utils::Array taskPropertiesJsonList(m_taskProperties.size()); + for(unsigned taskPropertiesIndex = 0; taskPropertiesIndex < taskPropertiesJsonList.GetLength(); ++taskPropertiesIndex) + { + taskPropertiesJsonList[taskPropertiesIndex].AsObject(m_taskProperties[taskPropertiesIndex].Jsonize()); + } + payload.WithArray("taskProperties", std::move(taskPropertiesJsonList)); + + } + + return payload; +} + +} // namespace Model +} // namespace Batch +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-batch/source/model/EcsPropertiesDetail.cpp b/generated/src/aws-cpp-sdk-batch/source/model/EcsPropertiesDetail.cpp new file mode 100644 index 00000000000..94b9ab79a9b --- /dev/null +++ b/generated/src/aws-cpp-sdk-batch/source/model/EcsPropertiesDetail.cpp @@ -0,0 +1,67 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include + +#include + +using namespace Aws::Utils::Json; +using namespace Aws::Utils; + +namespace Aws +{ +namespace Batch +{ +namespace Model +{ + +EcsPropertiesDetail::EcsPropertiesDetail() : + m_taskPropertiesHasBeenSet(false) +{ +} + +EcsPropertiesDetail::EcsPropertiesDetail(JsonView jsonValue) : + m_taskPropertiesHasBeenSet(false) +{ + *this = jsonValue; +} + +EcsPropertiesDetail& EcsPropertiesDetail::operator =(JsonView jsonValue) +{ + if(jsonValue.ValueExists("taskProperties")) + { + Aws::Utils::Array taskPropertiesJsonList = jsonValue.GetArray("taskProperties"); + for(unsigned taskPropertiesIndex = 0; taskPropertiesIndex < taskPropertiesJsonList.GetLength(); ++taskPropertiesIndex) + { + m_taskProperties.push_back(taskPropertiesJsonList[taskPropertiesIndex].AsObject()); + } + m_taskPropertiesHasBeenSet = true; + } + + return *this; +} + +JsonValue EcsPropertiesDetail::Jsonize() const +{ + JsonValue payload; + + if(m_taskPropertiesHasBeenSet) + { + Aws::Utils::Array taskPropertiesJsonList(m_taskProperties.size()); + for(unsigned taskPropertiesIndex = 0; taskPropertiesIndex < taskPropertiesJsonList.GetLength(); ++taskPropertiesIndex) + { + taskPropertiesJsonList[taskPropertiesIndex].AsObject(m_taskProperties[taskPropertiesIndex].Jsonize()); + } + payload.WithArray("taskProperties", std::move(taskPropertiesJsonList)); + + } + + return payload; +} + +} // namespace Model +} // namespace Batch +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-batch/source/model/EcsPropertiesOverride.cpp b/generated/src/aws-cpp-sdk-batch/source/model/EcsPropertiesOverride.cpp new file mode 100644 index 00000000000..be0797f0c50 --- /dev/null +++ b/generated/src/aws-cpp-sdk-batch/source/model/EcsPropertiesOverride.cpp @@ -0,0 +1,67 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include + +#include + +using namespace Aws::Utils::Json; +using namespace Aws::Utils; + +namespace Aws +{ +namespace Batch +{ +namespace Model +{ + +EcsPropertiesOverride::EcsPropertiesOverride() : + m_taskPropertiesHasBeenSet(false) +{ +} + +EcsPropertiesOverride::EcsPropertiesOverride(JsonView jsonValue) : + m_taskPropertiesHasBeenSet(false) +{ + *this = jsonValue; +} + +EcsPropertiesOverride& EcsPropertiesOverride::operator =(JsonView jsonValue) +{ + if(jsonValue.ValueExists("taskProperties")) + { + Aws::Utils::Array taskPropertiesJsonList = jsonValue.GetArray("taskProperties"); + for(unsigned taskPropertiesIndex = 0; taskPropertiesIndex < taskPropertiesJsonList.GetLength(); ++taskPropertiesIndex) + { + m_taskProperties.push_back(taskPropertiesJsonList[taskPropertiesIndex].AsObject()); + } + m_taskPropertiesHasBeenSet = true; + } + + return *this; +} + +JsonValue EcsPropertiesOverride::Jsonize() const +{ + JsonValue payload; + + if(m_taskPropertiesHasBeenSet) + { + Aws::Utils::Array taskPropertiesJsonList(m_taskProperties.size()); + for(unsigned taskPropertiesIndex = 0; taskPropertiesIndex < taskPropertiesJsonList.GetLength(); ++taskPropertiesIndex) + { + taskPropertiesJsonList[taskPropertiesIndex].AsObject(m_taskProperties[taskPropertiesIndex].Jsonize()); + } + payload.WithArray("taskProperties", std::move(taskPropertiesJsonList)); + + } + + return payload; +} + +} // namespace Model +} // namespace Batch +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-batch/source/model/EcsTaskDetails.cpp b/generated/src/aws-cpp-sdk-batch/source/model/EcsTaskDetails.cpp new file mode 100644 index 00000000000..830b24d1936 --- /dev/null +++ b/generated/src/aws-cpp-sdk-batch/source/model/EcsTaskDetails.cpp @@ -0,0 +1,240 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include + +#include + +using namespace Aws::Utils::Json; +using namespace Aws::Utils; + +namespace Aws +{ +namespace Batch +{ +namespace Model +{ + +EcsTaskDetails::EcsTaskDetails() : + m_containersHasBeenSet(false), + m_containerInstanceArnHasBeenSet(false), + m_taskArnHasBeenSet(false), + m_ephemeralStorageHasBeenSet(false), + m_executionRoleArnHasBeenSet(false), + m_platformVersionHasBeenSet(false), + m_ipcModeHasBeenSet(false), + m_taskRoleArnHasBeenSet(false), + m_pidModeHasBeenSet(false), + m_networkConfigurationHasBeenSet(false), + m_runtimePlatformHasBeenSet(false), + m_volumesHasBeenSet(false) +{ +} + +EcsTaskDetails::EcsTaskDetails(JsonView jsonValue) : + m_containersHasBeenSet(false), + m_containerInstanceArnHasBeenSet(false), + m_taskArnHasBeenSet(false), + m_ephemeralStorageHasBeenSet(false), + m_executionRoleArnHasBeenSet(false), + m_platformVersionHasBeenSet(false), + m_ipcModeHasBeenSet(false), + m_taskRoleArnHasBeenSet(false), + m_pidModeHasBeenSet(false), + m_networkConfigurationHasBeenSet(false), + m_runtimePlatformHasBeenSet(false), + m_volumesHasBeenSet(false) +{ + *this = jsonValue; +} + +EcsTaskDetails& EcsTaskDetails::operator =(JsonView jsonValue) +{ + if(jsonValue.ValueExists("containers")) + { + Aws::Utils::Array containersJsonList = jsonValue.GetArray("containers"); + for(unsigned containersIndex = 0; containersIndex < containersJsonList.GetLength(); ++containersIndex) + { + m_containers.push_back(containersJsonList[containersIndex].AsObject()); + } + m_containersHasBeenSet = true; + } + + if(jsonValue.ValueExists("containerInstanceArn")) + { + m_containerInstanceArn = jsonValue.GetString("containerInstanceArn"); + + m_containerInstanceArnHasBeenSet = true; + } + + if(jsonValue.ValueExists("taskArn")) + { + m_taskArn = jsonValue.GetString("taskArn"); + + m_taskArnHasBeenSet = true; + } + + if(jsonValue.ValueExists("ephemeralStorage")) + { + m_ephemeralStorage = jsonValue.GetObject("ephemeralStorage"); + + m_ephemeralStorageHasBeenSet = true; + } + + if(jsonValue.ValueExists("executionRoleArn")) + { + m_executionRoleArn = jsonValue.GetString("executionRoleArn"); + + m_executionRoleArnHasBeenSet = true; + } + + if(jsonValue.ValueExists("platformVersion")) + { + m_platformVersion = jsonValue.GetString("platformVersion"); + + m_platformVersionHasBeenSet = true; + } + + if(jsonValue.ValueExists("ipcMode")) + { + m_ipcMode = jsonValue.GetString("ipcMode"); + + m_ipcModeHasBeenSet = true; + } + + if(jsonValue.ValueExists("taskRoleArn")) + { + m_taskRoleArn = jsonValue.GetString("taskRoleArn"); + + m_taskRoleArnHasBeenSet = true; + } + + if(jsonValue.ValueExists("pidMode")) + { + m_pidMode = jsonValue.GetString("pidMode"); + + m_pidModeHasBeenSet = true; + } + + if(jsonValue.ValueExists("networkConfiguration")) + { + m_networkConfiguration = jsonValue.GetObject("networkConfiguration"); + + m_networkConfigurationHasBeenSet = true; + } + + if(jsonValue.ValueExists("runtimePlatform")) + { + m_runtimePlatform = jsonValue.GetObject("runtimePlatform"); + + m_runtimePlatformHasBeenSet = true; + } + + if(jsonValue.ValueExists("volumes")) + { + Aws::Utils::Array volumesJsonList = jsonValue.GetArray("volumes"); + for(unsigned volumesIndex = 0; volumesIndex < volumesJsonList.GetLength(); ++volumesIndex) + { + m_volumes.push_back(volumesJsonList[volumesIndex].AsObject()); + } + m_volumesHasBeenSet = true; + } + + return *this; +} + +JsonValue EcsTaskDetails::Jsonize() const +{ + JsonValue payload; + + if(m_containersHasBeenSet) + { + Aws::Utils::Array containersJsonList(m_containers.size()); + for(unsigned containersIndex = 0; containersIndex < containersJsonList.GetLength(); ++containersIndex) + { + containersJsonList[containersIndex].AsObject(m_containers[containersIndex].Jsonize()); + } + payload.WithArray("containers", std::move(containersJsonList)); + + } + + if(m_containerInstanceArnHasBeenSet) + { + payload.WithString("containerInstanceArn", m_containerInstanceArn); + + } + + if(m_taskArnHasBeenSet) + { + payload.WithString("taskArn", m_taskArn); + + } + + if(m_ephemeralStorageHasBeenSet) + { + payload.WithObject("ephemeralStorage", m_ephemeralStorage.Jsonize()); + + } + + if(m_executionRoleArnHasBeenSet) + { + payload.WithString("executionRoleArn", m_executionRoleArn); + + } + + if(m_platformVersionHasBeenSet) + { + payload.WithString("platformVersion", m_platformVersion); + + } + + if(m_ipcModeHasBeenSet) + { + payload.WithString("ipcMode", m_ipcMode); + + } + + if(m_taskRoleArnHasBeenSet) + { + payload.WithString("taskRoleArn", m_taskRoleArn); + + } + + if(m_pidModeHasBeenSet) + { + payload.WithString("pidMode", m_pidMode); + + } + + if(m_networkConfigurationHasBeenSet) + { + payload.WithObject("networkConfiguration", m_networkConfiguration.Jsonize()); + + } + + if(m_runtimePlatformHasBeenSet) + { + payload.WithObject("runtimePlatform", m_runtimePlatform.Jsonize()); + + } + + if(m_volumesHasBeenSet) + { + Aws::Utils::Array volumesJsonList(m_volumes.size()); + for(unsigned volumesIndex = 0; volumesIndex < volumesJsonList.GetLength(); ++volumesIndex) + { + volumesJsonList[volumesIndex].AsObject(m_volumes[volumesIndex].Jsonize()); + } + payload.WithArray("volumes", std::move(volumesJsonList)); + + } + + return payload; +} + +} // namespace Model +} // namespace Batch +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-batch/source/model/EcsTaskProperties.cpp b/generated/src/aws-cpp-sdk-batch/source/model/EcsTaskProperties.cpp new file mode 100644 index 00000000000..1726f7044ae --- /dev/null +++ b/generated/src/aws-cpp-sdk-batch/source/model/EcsTaskProperties.cpp @@ -0,0 +1,210 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include + +#include + +using namespace Aws::Utils::Json; +using namespace Aws::Utils; + +namespace Aws +{ +namespace Batch +{ +namespace Model +{ + +EcsTaskProperties::EcsTaskProperties() : + m_containersHasBeenSet(false), + m_ephemeralStorageHasBeenSet(false), + m_executionRoleArnHasBeenSet(false), + m_platformVersionHasBeenSet(false), + m_ipcModeHasBeenSet(false), + m_taskRoleArnHasBeenSet(false), + m_pidModeHasBeenSet(false), + m_networkConfigurationHasBeenSet(false), + m_runtimePlatformHasBeenSet(false), + m_volumesHasBeenSet(false) +{ +} + +EcsTaskProperties::EcsTaskProperties(JsonView jsonValue) : + m_containersHasBeenSet(false), + m_ephemeralStorageHasBeenSet(false), + m_executionRoleArnHasBeenSet(false), + m_platformVersionHasBeenSet(false), + m_ipcModeHasBeenSet(false), + m_taskRoleArnHasBeenSet(false), + m_pidModeHasBeenSet(false), + m_networkConfigurationHasBeenSet(false), + m_runtimePlatformHasBeenSet(false), + m_volumesHasBeenSet(false) +{ + *this = jsonValue; +} + +EcsTaskProperties& EcsTaskProperties::operator =(JsonView jsonValue) +{ + if(jsonValue.ValueExists("containers")) + { + Aws::Utils::Array containersJsonList = jsonValue.GetArray("containers"); + for(unsigned containersIndex = 0; containersIndex < containersJsonList.GetLength(); ++containersIndex) + { + m_containers.push_back(containersJsonList[containersIndex].AsObject()); + } + m_containersHasBeenSet = true; + } + + if(jsonValue.ValueExists("ephemeralStorage")) + { + m_ephemeralStorage = jsonValue.GetObject("ephemeralStorage"); + + m_ephemeralStorageHasBeenSet = true; + } + + if(jsonValue.ValueExists("executionRoleArn")) + { + m_executionRoleArn = jsonValue.GetString("executionRoleArn"); + + m_executionRoleArnHasBeenSet = true; + } + + if(jsonValue.ValueExists("platformVersion")) + { + m_platformVersion = jsonValue.GetString("platformVersion"); + + m_platformVersionHasBeenSet = true; + } + + if(jsonValue.ValueExists("ipcMode")) + { + m_ipcMode = jsonValue.GetString("ipcMode"); + + m_ipcModeHasBeenSet = true; + } + + if(jsonValue.ValueExists("taskRoleArn")) + { + m_taskRoleArn = jsonValue.GetString("taskRoleArn"); + + m_taskRoleArnHasBeenSet = true; + } + + if(jsonValue.ValueExists("pidMode")) + { + m_pidMode = jsonValue.GetString("pidMode"); + + m_pidModeHasBeenSet = true; + } + + if(jsonValue.ValueExists("networkConfiguration")) + { + m_networkConfiguration = jsonValue.GetObject("networkConfiguration"); + + m_networkConfigurationHasBeenSet = true; + } + + if(jsonValue.ValueExists("runtimePlatform")) + { + m_runtimePlatform = jsonValue.GetObject("runtimePlatform"); + + m_runtimePlatformHasBeenSet = true; + } + + if(jsonValue.ValueExists("volumes")) + { + Aws::Utils::Array volumesJsonList = jsonValue.GetArray("volumes"); + for(unsigned volumesIndex = 0; volumesIndex < volumesJsonList.GetLength(); ++volumesIndex) + { + m_volumes.push_back(volumesJsonList[volumesIndex].AsObject()); + } + m_volumesHasBeenSet = true; + } + + return *this; +} + +JsonValue EcsTaskProperties::Jsonize() const +{ + JsonValue payload; + + if(m_containersHasBeenSet) + { + Aws::Utils::Array containersJsonList(m_containers.size()); + for(unsigned containersIndex = 0; containersIndex < containersJsonList.GetLength(); ++containersIndex) + { + containersJsonList[containersIndex].AsObject(m_containers[containersIndex].Jsonize()); + } + payload.WithArray("containers", std::move(containersJsonList)); + + } + + if(m_ephemeralStorageHasBeenSet) + { + payload.WithObject("ephemeralStorage", m_ephemeralStorage.Jsonize()); + + } + + if(m_executionRoleArnHasBeenSet) + { + payload.WithString("executionRoleArn", m_executionRoleArn); + + } + + if(m_platformVersionHasBeenSet) + { + payload.WithString("platformVersion", m_platformVersion); + + } + + if(m_ipcModeHasBeenSet) + { + payload.WithString("ipcMode", m_ipcMode); + + } + + if(m_taskRoleArnHasBeenSet) + { + payload.WithString("taskRoleArn", m_taskRoleArn); + + } + + if(m_pidModeHasBeenSet) + { + payload.WithString("pidMode", m_pidMode); + + } + + if(m_networkConfigurationHasBeenSet) + { + payload.WithObject("networkConfiguration", m_networkConfiguration.Jsonize()); + + } + + if(m_runtimePlatformHasBeenSet) + { + payload.WithObject("runtimePlatform", m_runtimePlatform.Jsonize()); + + } + + if(m_volumesHasBeenSet) + { + Aws::Utils::Array volumesJsonList(m_volumes.size()); + for(unsigned volumesIndex = 0; volumesIndex < volumesJsonList.GetLength(); ++volumesIndex) + { + volumesJsonList[volumesIndex].AsObject(m_volumes[volumesIndex].Jsonize()); + } + payload.WithArray("volumes", std::move(volumesJsonList)); + + } + + return payload; +} + +} // namespace Model +} // namespace Batch +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-batch/source/model/EksAttemptDetail.cpp b/generated/src/aws-cpp-sdk-batch/source/model/EksAttemptDetail.cpp index d77b2c73423..8bd6dd7485b 100644 --- a/generated/src/aws-cpp-sdk-batch/source/model/EksAttemptDetail.cpp +++ b/generated/src/aws-cpp-sdk-batch/source/model/EksAttemptDetail.cpp @@ -20,6 +20,7 @@ namespace Model EksAttemptDetail::EksAttemptDetail() : m_containersHasBeenSet(false), + m_initContainersHasBeenSet(false), m_podNameHasBeenSet(false), m_nodeNameHasBeenSet(false), m_startedAt(0), @@ -32,6 +33,7 @@ EksAttemptDetail::EksAttemptDetail() : EksAttemptDetail::EksAttemptDetail(JsonView jsonValue) : m_containersHasBeenSet(false), + m_initContainersHasBeenSet(false), m_podNameHasBeenSet(false), m_nodeNameHasBeenSet(false), m_startedAt(0), @@ -55,6 +57,16 @@ EksAttemptDetail& EksAttemptDetail::operator =(JsonView jsonValue) m_containersHasBeenSet = true; } + if(jsonValue.ValueExists("initContainers")) + { + Aws::Utils::Array initContainersJsonList = jsonValue.GetArray("initContainers"); + for(unsigned initContainersIndex = 0; initContainersIndex < initContainersJsonList.GetLength(); ++initContainersIndex) + { + m_initContainers.push_back(initContainersJsonList[initContainersIndex].AsObject()); + } + m_initContainersHasBeenSet = true; + } + if(jsonValue.ValueExists("podName")) { m_podName = jsonValue.GetString("podName"); @@ -108,6 +120,17 @@ JsonValue EksAttemptDetail::Jsonize() const } + if(m_initContainersHasBeenSet) + { + Aws::Utils::Array initContainersJsonList(m_initContainers.size()); + for(unsigned initContainersIndex = 0; initContainersIndex < initContainersJsonList.GetLength(); ++initContainersIndex) + { + initContainersJsonList[initContainersIndex].AsObject(m_initContainers[initContainersIndex].Jsonize()); + } + payload.WithArray("initContainers", std::move(initContainersJsonList)); + + } + if(m_podNameHasBeenSet) { payload.WithString("podName", m_podName); diff --git a/generated/src/aws-cpp-sdk-batch/source/model/EksContainerOverride.cpp b/generated/src/aws-cpp-sdk-batch/source/model/EksContainerOverride.cpp index 68b48c32794..6be3415d61b 100644 --- a/generated/src/aws-cpp-sdk-batch/source/model/EksContainerOverride.cpp +++ b/generated/src/aws-cpp-sdk-batch/source/model/EksContainerOverride.cpp @@ -19,6 +19,7 @@ namespace Model { EksContainerOverride::EksContainerOverride() : + m_nameHasBeenSet(false), m_imageHasBeenSet(false), m_commandHasBeenSet(false), m_argsHasBeenSet(false), @@ -28,6 +29,7 @@ EksContainerOverride::EksContainerOverride() : } EksContainerOverride::EksContainerOverride(JsonView jsonValue) : + m_nameHasBeenSet(false), m_imageHasBeenSet(false), m_commandHasBeenSet(false), m_argsHasBeenSet(false), @@ -39,6 +41,13 @@ EksContainerOverride::EksContainerOverride(JsonView jsonValue) : EksContainerOverride& EksContainerOverride::operator =(JsonView jsonValue) { + if(jsonValue.ValueExists("name")) + { + m_name = jsonValue.GetString("name"); + + m_nameHasBeenSet = true; + } + if(jsonValue.ValueExists("image")) { m_image = jsonValue.GetString("image"); @@ -90,6 +99,12 @@ JsonValue EksContainerOverride::Jsonize() const { JsonValue payload; + if(m_nameHasBeenSet) + { + payload.WithString("name", m_name); + + } + if(m_imageHasBeenSet) { payload.WithString("image", m_image); diff --git a/generated/src/aws-cpp-sdk-batch/source/model/EksPodProperties.cpp b/generated/src/aws-cpp-sdk-batch/source/model/EksPodProperties.cpp index 241ec50f02d..5f76197b9f0 100644 --- a/generated/src/aws-cpp-sdk-batch/source/model/EksPodProperties.cpp +++ b/generated/src/aws-cpp-sdk-batch/source/model/EksPodProperties.cpp @@ -24,8 +24,11 @@ EksPodProperties::EksPodProperties() : m_hostNetworkHasBeenSet(false), m_dnsPolicyHasBeenSet(false), m_containersHasBeenSet(false), + m_initContainersHasBeenSet(false), m_volumesHasBeenSet(false), - m_metadataHasBeenSet(false) + m_metadataHasBeenSet(false), + m_shareProcessNamespace(false), + m_shareProcessNamespaceHasBeenSet(false) { } @@ -35,8 +38,11 @@ EksPodProperties::EksPodProperties(JsonView jsonValue) : m_hostNetworkHasBeenSet(false), m_dnsPolicyHasBeenSet(false), m_containersHasBeenSet(false), + m_initContainersHasBeenSet(false), m_volumesHasBeenSet(false), - m_metadataHasBeenSet(false) + m_metadataHasBeenSet(false), + m_shareProcessNamespace(false), + m_shareProcessNamespaceHasBeenSet(false) { *this = jsonValue; } @@ -74,6 +80,16 @@ EksPodProperties& EksPodProperties::operator =(JsonView jsonValue) m_containersHasBeenSet = true; } + if(jsonValue.ValueExists("initContainers")) + { + Aws::Utils::Array initContainersJsonList = jsonValue.GetArray("initContainers"); + for(unsigned initContainersIndex = 0; initContainersIndex < initContainersJsonList.GetLength(); ++initContainersIndex) + { + m_initContainers.push_back(initContainersJsonList[initContainersIndex].AsObject()); + } + m_initContainersHasBeenSet = true; + } + if(jsonValue.ValueExists("volumes")) { Aws::Utils::Array volumesJsonList = jsonValue.GetArray("volumes"); @@ -91,6 +107,13 @@ EksPodProperties& EksPodProperties::operator =(JsonView jsonValue) m_metadataHasBeenSet = true; } + if(jsonValue.ValueExists("shareProcessNamespace")) + { + m_shareProcessNamespace = jsonValue.GetBool("shareProcessNamespace"); + + m_shareProcessNamespaceHasBeenSet = true; + } + return *this; } @@ -127,6 +150,17 @@ JsonValue EksPodProperties::Jsonize() const } + if(m_initContainersHasBeenSet) + { + Aws::Utils::Array initContainersJsonList(m_initContainers.size()); + for(unsigned initContainersIndex = 0; initContainersIndex < initContainersJsonList.GetLength(); ++initContainersIndex) + { + initContainersJsonList[initContainersIndex].AsObject(m_initContainers[initContainersIndex].Jsonize()); + } + payload.WithArray("initContainers", std::move(initContainersJsonList)); + + } + if(m_volumesHasBeenSet) { Aws::Utils::Array volumesJsonList(m_volumes.size()); @@ -144,6 +178,12 @@ JsonValue EksPodProperties::Jsonize() const } + if(m_shareProcessNamespaceHasBeenSet) + { + payload.WithBool("shareProcessNamespace", m_shareProcessNamespace); + + } + return payload; } diff --git a/generated/src/aws-cpp-sdk-batch/source/model/EksPodPropertiesDetail.cpp b/generated/src/aws-cpp-sdk-batch/source/model/EksPodPropertiesDetail.cpp index 713d537f0a4..26d17920825 100644 --- a/generated/src/aws-cpp-sdk-batch/source/model/EksPodPropertiesDetail.cpp +++ b/generated/src/aws-cpp-sdk-batch/source/model/EksPodPropertiesDetail.cpp @@ -24,10 +24,13 @@ EksPodPropertiesDetail::EksPodPropertiesDetail() : m_hostNetworkHasBeenSet(false), m_dnsPolicyHasBeenSet(false), m_containersHasBeenSet(false), + m_initContainersHasBeenSet(false), m_volumesHasBeenSet(false), m_podNameHasBeenSet(false), m_nodeNameHasBeenSet(false), - m_metadataHasBeenSet(false) + m_metadataHasBeenSet(false), + m_shareProcessNamespace(false), + m_shareProcessNamespaceHasBeenSet(false) { } @@ -37,10 +40,13 @@ EksPodPropertiesDetail::EksPodPropertiesDetail(JsonView jsonValue) : m_hostNetworkHasBeenSet(false), m_dnsPolicyHasBeenSet(false), m_containersHasBeenSet(false), + m_initContainersHasBeenSet(false), m_volumesHasBeenSet(false), m_podNameHasBeenSet(false), m_nodeNameHasBeenSet(false), - m_metadataHasBeenSet(false) + m_metadataHasBeenSet(false), + m_shareProcessNamespace(false), + m_shareProcessNamespaceHasBeenSet(false) { *this = jsonValue; } @@ -78,6 +84,16 @@ EksPodPropertiesDetail& EksPodPropertiesDetail::operator =(JsonView jsonValue) m_containersHasBeenSet = true; } + if(jsonValue.ValueExists("initContainers")) + { + Aws::Utils::Array initContainersJsonList = jsonValue.GetArray("initContainers"); + for(unsigned initContainersIndex = 0; initContainersIndex < initContainersJsonList.GetLength(); ++initContainersIndex) + { + m_initContainers.push_back(initContainersJsonList[initContainersIndex].AsObject()); + } + m_initContainersHasBeenSet = true; + } + if(jsonValue.ValueExists("volumes")) { Aws::Utils::Array volumesJsonList = jsonValue.GetArray("volumes"); @@ -109,6 +125,13 @@ EksPodPropertiesDetail& EksPodPropertiesDetail::operator =(JsonView jsonValue) m_metadataHasBeenSet = true; } + if(jsonValue.ValueExists("shareProcessNamespace")) + { + m_shareProcessNamespace = jsonValue.GetBool("shareProcessNamespace"); + + m_shareProcessNamespaceHasBeenSet = true; + } + return *this; } @@ -145,6 +168,17 @@ JsonValue EksPodPropertiesDetail::Jsonize() const } + if(m_initContainersHasBeenSet) + { + Aws::Utils::Array initContainersJsonList(m_initContainers.size()); + for(unsigned initContainersIndex = 0; initContainersIndex < initContainersJsonList.GetLength(); ++initContainersIndex) + { + initContainersJsonList[initContainersIndex].AsObject(m_initContainers[initContainersIndex].Jsonize()); + } + payload.WithArray("initContainers", std::move(initContainersJsonList)); + + } + if(m_volumesHasBeenSet) { Aws::Utils::Array volumesJsonList(m_volumes.size()); @@ -174,6 +208,12 @@ JsonValue EksPodPropertiesDetail::Jsonize() const } + if(m_shareProcessNamespaceHasBeenSet) + { + payload.WithBool("shareProcessNamespace", m_shareProcessNamespace); + + } + return payload; } diff --git a/generated/src/aws-cpp-sdk-batch/source/model/EksPodPropertiesOverride.cpp b/generated/src/aws-cpp-sdk-batch/source/model/EksPodPropertiesOverride.cpp index 1b9e0277887..e75966e5193 100644 --- a/generated/src/aws-cpp-sdk-batch/source/model/EksPodPropertiesOverride.cpp +++ b/generated/src/aws-cpp-sdk-batch/source/model/EksPodPropertiesOverride.cpp @@ -20,12 +20,14 @@ namespace Model EksPodPropertiesOverride::EksPodPropertiesOverride() : m_containersHasBeenSet(false), + m_initContainersHasBeenSet(false), m_metadataHasBeenSet(false) { } EksPodPropertiesOverride::EksPodPropertiesOverride(JsonView jsonValue) : m_containersHasBeenSet(false), + m_initContainersHasBeenSet(false), m_metadataHasBeenSet(false) { *this = jsonValue; @@ -43,6 +45,16 @@ EksPodPropertiesOverride& EksPodPropertiesOverride::operator =(JsonView jsonValu m_containersHasBeenSet = true; } + if(jsonValue.ValueExists("initContainers")) + { + Aws::Utils::Array initContainersJsonList = jsonValue.GetArray("initContainers"); + for(unsigned initContainersIndex = 0; initContainersIndex < initContainersJsonList.GetLength(); ++initContainersIndex) + { + m_initContainers.push_back(initContainersJsonList[initContainersIndex].AsObject()); + } + m_initContainersHasBeenSet = true; + } + if(jsonValue.ValueExists("metadata")) { m_metadata = jsonValue.GetObject("metadata"); @@ -68,6 +80,17 @@ JsonValue EksPodPropertiesOverride::Jsonize() const } + if(m_initContainersHasBeenSet) + { + Aws::Utils::Array initContainersJsonList(m_initContainers.size()); + for(unsigned initContainersIndex = 0; initContainersIndex < initContainersJsonList.GetLength(); ++initContainersIndex) + { + initContainersJsonList[initContainersIndex].AsObject(m_initContainers[initContainersIndex].Jsonize()); + } + payload.WithArray("initContainers", std::move(initContainersJsonList)); + + } + if(m_metadataHasBeenSet) { payload.WithObject("metadata", m_metadata.Jsonize()); diff --git a/generated/src/aws-cpp-sdk-batch/source/model/JobDefinition.cpp b/generated/src/aws-cpp-sdk-batch/source/model/JobDefinition.cpp index 4f2d6dadd45..151d391c998 100644 --- a/generated/src/aws-cpp-sdk-batch/source/model/JobDefinition.cpp +++ b/generated/src/aws-cpp-sdk-batch/source/model/JobDefinition.cpp @@ -36,6 +36,7 @@ JobDefinition::JobDefinition() : m_propagateTags(false), m_propagateTagsHasBeenSet(false), m_platformCapabilitiesHasBeenSet(false), + m_ecsPropertiesHasBeenSet(false), m_eksPropertiesHasBeenSet(false), m_containerOrchestrationType(OrchestrationType::NOT_SET), m_containerOrchestrationTypeHasBeenSet(false) @@ -60,6 +61,7 @@ JobDefinition::JobDefinition(JsonView jsonValue) : m_propagateTags(false), m_propagateTagsHasBeenSet(false), m_platformCapabilitiesHasBeenSet(false), + m_ecsPropertiesHasBeenSet(false), m_eksPropertiesHasBeenSet(false), m_containerOrchestrationType(OrchestrationType::NOT_SET), m_containerOrchestrationTypeHasBeenSet(false) @@ -176,6 +178,13 @@ JobDefinition& JobDefinition::operator =(JsonView jsonValue) m_platformCapabilitiesHasBeenSet = true; } + if(jsonValue.ValueExists("ecsProperties")) + { + m_ecsProperties = jsonValue.GetObject("ecsProperties"); + + m_ecsPropertiesHasBeenSet = true; + } + if(jsonValue.ValueExists("eksProperties")) { m_eksProperties = jsonValue.GetObject("eksProperties"); @@ -296,6 +305,12 @@ JsonValue JobDefinition::Jsonize() const } + if(m_ecsPropertiesHasBeenSet) + { + payload.WithObject("ecsProperties", m_ecsProperties.Jsonize()); + + } + if(m_eksPropertiesHasBeenSet) { payload.WithObject("eksProperties", m_eksProperties.Jsonize()); diff --git a/generated/src/aws-cpp-sdk-batch/source/model/JobDetail.cpp b/generated/src/aws-cpp-sdk-batch/source/model/JobDetail.cpp index 4bdb40903f8..9f72b787a1b 100644 --- a/generated/src/aws-cpp-sdk-batch/source/model/JobDetail.cpp +++ b/generated/src/aws-cpp-sdk-batch/source/model/JobDetail.cpp @@ -51,6 +51,7 @@ JobDetail::JobDetail() : m_platformCapabilitiesHasBeenSet(false), m_eksPropertiesHasBeenSet(false), m_eksAttemptsHasBeenSet(false), + m_ecsPropertiesHasBeenSet(false), m_isCancelled(false), m_isCancelledHasBeenSet(false), m_isTerminated(false), @@ -91,6 +92,7 @@ JobDetail::JobDetail(JsonView jsonValue) : m_platformCapabilitiesHasBeenSet(false), m_eksPropertiesHasBeenSet(false), m_eksAttemptsHasBeenSet(false), + m_ecsPropertiesHasBeenSet(false), m_isCancelled(false), m_isCancelledHasBeenSet(false), m_isTerminated(false), @@ -301,6 +303,13 @@ JobDetail& JobDetail::operator =(JsonView jsonValue) m_eksAttemptsHasBeenSet = true; } + if(jsonValue.ValueExists("ecsProperties")) + { + m_ecsProperties = jsonValue.GetObject("ecsProperties"); + + m_ecsPropertiesHasBeenSet = true; + } + if(jsonValue.ValueExists("isCancelled")) { m_isCancelled = jsonValue.GetBool("isCancelled"); @@ -507,6 +516,12 @@ JsonValue JobDetail::Jsonize() const } + if(m_ecsPropertiesHasBeenSet) + { + payload.WithObject("ecsProperties", m_ecsProperties.Jsonize()); + + } + if(m_isCancelledHasBeenSet) { payload.WithBool("isCancelled", m_isCancelled); diff --git a/generated/src/aws-cpp-sdk-batch/source/model/NodePropertyOverride.cpp b/generated/src/aws-cpp-sdk-batch/source/model/NodePropertyOverride.cpp index 17bd360adeb..69bceae41e7 100644 --- a/generated/src/aws-cpp-sdk-batch/source/model/NodePropertyOverride.cpp +++ b/generated/src/aws-cpp-sdk-batch/source/model/NodePropertyOverride.cpp @@ -20,13 +20,17 @@ namespace Model NodePropertyOverride::NodePropertyOverride() : m_targetNodesHasBeenSet(false), - m_containerOverridesHasBeenSet(false) + m_containerOverridesHasBeenSet(false), + m_ecsPropertiesOverrideHasBeenSet(false), + m_instanceTypesHasBeenSet(false) { } NodePropertyOverride::NodePropertyOverride(JsonView jsonValue) : m_targetNodesHasBeenSet(false), - m_containerOverridesHasBeenSet(false) + m_containerOverridesHasBeenSet(false), + m_ecsPropertiesOverrideHasBeenSet(false), + m_instanceTypesHasBeenSet(false) { *this = jsonValue; } @@ -47,6 +51,23 @@ NodePropertyOverride& NodePropertyOverride::operator =(JsonView jsonValue) m_containerOverridesHasBeenSet = true; } + if(jsonValue.ValueExists("ecsPropertiesOverride")) + { + m_ecsPropertiesOverride = jsonValue.GetObject("ecsPropertiesOverride"); + + m_ecsPropertiesOverrideHasBeenSet = true; + } + + if(jsonValue.ValueExists("instanceTypes")) + { + Aws::Utils::Array instanceTypesJsonList = jsonValue.GetArray("instanceTypes"); + for(unsigned instanceTypesIndex = 0; instanceTypesIndex < instanceTypesJsonList.GetLength(); ++instanceTypesIndex) + { + m_instanceTypes.push_back(instanceTypesJsonList[instanceTypesIndex].AsString()); + } + m_instanceTypesHasBeenSet = true; + } + return *this; } @@ -66,6 +87,23 @@ JsonValue NodePropertyOverride::Jsonize() const } + if(m_ecsPropertiesOverrideHasBeenSet) + { + payload.WithObject("ecsPropertiesOverride", m_ecsPropertiesOverride.Jsonize()); + + } + + if(m_instanceTypesHasBeenSet) + { + Aws::Utils::Array instanceTypesJsonList(m_instanceTypes.size()); + for(unsigned instanceTypesIndex = 0; instanceTypesIndex < instanceTypesJsonList.GetLength(); ++instanceTypesIndex) + { + instanceTypesJsonList[instanceTypesIndex].AsString(m_instanceTypes[instanceTypesIndex]); + } + payload.WithArray("instanceTypes", std::move(instanceTypesJsonList)); + + } + return payload; } diff --git a/generated/src/aws-cpp-sdk-batch/source/model/NodeRangeProperty.cpp b/generated/src/aws-cpp-sdk-batch/source/model/NodeRangeProperty.cpp index 0cbfe3567de..7ab3978c80b 100644 --- a/generated/src/aws-cpp-sdk-batch/source/model/NodeRangeProperty.cpp +++ b/generated/src/aws-cpp-sdk-batch/source/model/NodeRangeProperty.cpp @@ -20,13 +20,17 @@ namespace Model NodeRangeProperty::NodeRangeProperty() : m_targetNodesHasBeenSet(false), - m_containerHasBeenSet(false) + m_containerHasBeenSet(false), + m_instanceTypesHasBeenSet(false), + m_ecsPropertiesHasBeenSet(false) { } NodeRangeProperty::NodeRangeProperty(JsonView jsonValue) : m_targetNodesHasBeenSet(false), - m_containerHasBeenSet(false) + m_containerHasBeenSet(false), + m_instanceTypesHasBeenSet(false), + m_ecsPropertiesHasBeenSet(false) { *this = jsonValue; } @@ -47,6 +51,23 @@ NodeRangeProperty& NodeRangeProperty::operator =(JsonView jsonValue) m_containerHasBeenSet = true; } + if(jsonValue.ValueExists("instanceTypes")) + { + Aws::Utils::Array instanceTypesJsonList = jsonValue.GetArray("instanceTypes"); + for(unsigned instanceTypesIndex = 0; instanceTypesIndex < instanceTypesJsonList.GetLength(); ++instanceTypesIndex) + { + m_instanceTypes.push_back(instanceTypesJsonList[instanceTypesIndex].AsString()); + } + m_instanceTypesHasBeenSet = true; + } + + if(jsonValue.ValueExists("ecsProperties")) + { + m_ecsProperties = jsonValue.GetObject("ecsProperties"); + + m_ecsPropertiesHasBeenSet = true; + } + return *this; } @@ -66,6 +87,23 @@ JsonValue NodeRangeProperty::Jsonize() const } + if(m_instanceTypesHasBeenSet) + { + Aws::Utils::Array instanceTypesJsonList(m_instanceTypes.size()); + for(unsigned instanceTypesIndex = 0; instanceTypesIndex < instanceTypesJsonList.GetLength(); ++instanceTypesIndex) + { + instanceTypesJsonList[instanceTypesIndex].AsString(m_instanceTypes[instanceTypesIndex]); + } + payload.WithArray("instanceTypes", std::move(instanceTypesJsonList)); + + } + + if(m_ecsPropertiesHasBeenSet) + { + payload.WithObject("ecsProperties", m_ecsProperties.Jsonize()); + + } + return payload; } diff --git a/generated/src/aws-cpp-sdk-batch/source/model/RegisterJobDefinitionRequest.cpp b/generated/src/aws-cpp-sdk-batch/source/model/RegisterJobDefinitionRequest.cpp index c46d5829b2a..c6ff19c66eb 100644 --- a/generated/src/aws-cpp-sdk-batch/source/model/RegisterJobDefinitionRequest.cpp +++ b/generated/src/aws-cpp-sdk-batch/source/model/RegisterJobDefinitionRequest.cpp @@ -27,7 +27,8 @@ RegisterJobDefinitionRequest::RegisterJobDefinitionRequest() : m_timeoutHasBeenSet(false), m_tagsHasBeenSet(false), m_platformCapabilitiesHasBeenSet(false), - m_eksPropertiesHasBeenSet(false) + m_eksPropertiesHasBeenSet(false), + m_ecsPropertiesHasBeenSet(false) { } @@ -121,6 +122,12 @@ Aws::String RegisterJobDefinitionRequest::SerializePayload() const } + if(m_ecsPropertiesHasBeenSet) + { + payload.WithObject("ecsProperties", m_ecsProperties.Jsonize()); + + } + return payload.View().WriteReadable(); } diff --git a/generated/src/aws-cpp-sdk-batch/source/model/SubmitJobRequest.cpp b/generated/src/aws-cpp-sdk-batch/source/model/SubmitJobRequest.cpp index 1674c956c28..176b0b1b9cf 100644 --- a/generated/src/aws-cpp-sdk-batch/source/model/SubmitJobRequest.cpp +++ b/generated/src/aws-cpp-sdk-batch/source/model/SubmitJobRequest.cpp @@ -29,7 +29,8 @@ SubmitJobRequest::SubmitJobRequest() : m_propagateTagsHasBeenSet(false), m_timeoutHasBeenSet(false), m_tagsHasBeenSet(false), - m_eksPropertiesOverrideHasBeenSet(false) + m_eksPropertiesOverrideHasBeenSet(false), + m_ecsPropertiesOverrideHasBeenSet(false) { } @@ -142,6 +143,12 @@ Aws::String SubmitJobRequest::SerializePayload() const } + if(m_ecsPropertiesOverrideHasBeenSet) + { + payload.WithObject("ecsPropertiesOverride", m_ecsPropertiesOverride.Jsonize()); + + } + return payload.View().WriteReadable(); } diff --git a/generated/src/aws-cpp-sdk-batch/source/model/TaskContainerDependency.cpp b/generated/src/aws-cpp-sdk-batch/source/model/TaskContainerDependency.cpp new file mode 100644 index 00000000000..bf76e9b0ff7 --- /dev/null +++ b/generated/src/aws-cpp-sdk-batch/source/model/TaskContainerDependency.cpp @@ -0,0 +1,74 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include + +#include + +using namespace Aws::Utils::Json; +using namespace Aws::Utils; + +namespace Aws +{ +namespace Batch +{ +namespace Model +{ + +TaskContainerDependency::TaskContainerDependency() : + m_containerNameHasBeenSet(false), + m_conditionHasBeenSet(false) +{ +} + +TaskContainerDependency::TaskContainerDependency(JsonView jsonValue) : + m_containerNameHasBeenSet(false), + m_conditionHasBeenSet(false) +{ + *this = jsonValue; +} + +TaskContainerDependency& TaskContainerDependency::operator =(JsonView jsonValue) +{ + if(jsonValue.ValueExists("containerName")) + { + m_containerName = jsonValue.GetString("containerName"); + + m_containerNameHasBeenSet = true; + } + + if(jsonValue.ValueExists("condition")) + { + m_condition = jsonValue.GetString("condition"); + + m_conditionHasBeenSet = true; + } + + return *this; +} + +JsonValue TaskContainerDependency::Jsonize() const +{ + JsonValue payload; + + if(m_containerNameHasBeenSet) + { + payload.WithString("containerName", m_containerName); + + } + + if(m_conditionHasBeenSet) + { + payload.WithString("condition", m_condition); + + } + + return payload; +} + +} // namespace Model +} // namespace Batch +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-batch/source/model/TaskContainerDetails.cpp b/generated/src/aws-cpp-sdk-batch/source/model/TaskContainerDetails.cpp new file mode 100644 index 00000000000..492177a6b83 --- /dev/null +++ b/generated/src/aws-cpp-sdk-batch/source/model/TaskContainerDetails.cpp @@ -0,0 +1,416 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include + +#include + +using namespace Aws::Utils::Json; +using namespace Aws::Utils; + +namespace Aws +{ +namespace Batch +{ +namespace Model +{ + +TaskContainerDetails::TaskContainerDetails() : + m_commandHasBeenSet(false), + m_dependsOnHasBeenSet(false), + m_environmentHasBeenSet(false), + m_essential(false), + m_essentialHasBeenSet(false), + m_imageHasBeenSet(false), + m_linuxParametersHasBeenSet(false), + m_logConfigurationHasBeenSet(false), + m_mountPointsHasBeenSet(false), + m_nameHasBeenSet(false), + m_privileged(false), + m_privilegedHasBeenSet(false), + m_readonlyRootFilesystem(false), + m_readonlyRootFilesystemHasBeenSet(false), + m_repositoryCredentialsHasBeenSet(false), + m_resourceRequirementsHasBeenSet(false), + m_secretsHasBeenSet(false), + m_ulimitsHasBeenSet(false), + m_userHasBeenSet(false), + m_exitCode(0), + m_exitCodeHasBeenSet(false), + m_reasonHasBeenSet(false), + m_logStreamNameHasBeenSet(false), + m_networkInterfacesHasBeenSet(false) +{ +} + +TaskContainerDetails::TaskContainerDetails(JsonView jsonValue) : + m_commandHasBeenSet(false), + m_dependsOnHasBeenSet(false), + m_environmentHasBeenSet(false), + m_essential(false), + m_essentialHasBeenSet(false), + m_imageHasBeenSet(false), + m_linuxParametersHasBeenSet(false), + m_logConfigurationHasBeenSet(false), + m_mountPointsHasBeenSet(false), + m_nameHasBeenSet(false), + m_privileged(false), + m_privilegedHasBeenSet(false), + m_readonlyRootFilesystem(false), + m_readonlyRootFilesystemHasBeenSet(false), + m_repositoryCredentialsHasBeenSet(false), + m_resourceRequirementsHasBeenSet(false), + m_secretsHasBeenSet(false), + m_ulimitsHasBeenSet(false), + m_userHasBeenSet(false), + m_exitCode(0), + m_exitCodeHasBeenSet(false), + m_reasonHasBeenSet(false), + m_logStreamNameHasBeenSet(false), + m_networkInterfacesHasBeenSet(false) +{ + *this = jsonValue; +} + +TaskContainerDetails& TaskContainerDetails::operator =(JsonView jsonValue) +{ + if(jsonValue.ValueExists("command")) + { + Aws::Utils::Array commandJsonList = jsonValue.GetArray("command"); + for(unsigned commandIndex = 0; commandIndex < commandJsonList.GetLength(); ++commandIndex) + { + m_command.push_back(commandJsonList[commandIndex].AsString()); + } + m_commandHasBeenSet = true; + } + + if(jsonValue.ValueExists("dependsOn")) + { + Aws::Utils::Array dependsOnJsonList = jsonValue.GetArray("dependsOn"); + for(unsigned dependsOnIndex = 0; dependsOnIndex < dependsOnJsonList.GetLength(); ++dependsOnIndex) + { + m_dependsOn.push_back(dependsOnJsonList[dependsOnIndex].AsObject()); + } + m_dependsOnHasBeenSet = true; + } + + if(jsonValue.ValueExists("environment")) + { + Aws::Utils::Array environmentJsonList = jsonValue.GetArray("environment"); + for(unsigned environmentIndex = 0; environmentIndex < environmentJsonList.GetLength(); ++environmentIndex) + { + m_environment.push_back(environmentJsonList[environmentIndex].AsObject()); + } + m_environmentHasBeenSet = true; + } + + if(jsonValue.ValueExists("essential")) + { + m_essential = jsonValue.GetBool("essential"); + + m_essentialHasBeenSet = true; + } + + if(jsonValue.ValueExists("image")) + { + m_image = jsonValue.GetString("image"); + + m_imageHasBeenSet = true; + } + + if(jsonValue.ValueExists("linuxParameters")) + { + m_linuxParameters = jsonValue.GetObject("linuxParameters"); + + m_linuxParametersHasBeenSet = true; + } + + if(jsonValue.ValueExists("logConfiguration")) + { + m_logConfiguration = jsonValue.GetObject("logConfiguration"); + + m_logConfigurationHasBeenSet = true; + } + + if(jsonValue.ValueExists("mountPoints")) + { + Aws::Utils::Array mountPointsJsonList = jsonValue.GetArray("mountPoints"); + for(unsigned mountPointsIndex = 0; mountPointsIndex < mountPointsJsonList.GetLength(); ++mountPointsIndex) + { + m_mountPoints.push_back(mountPointsJsonList[mountPointsIndex].AsObject()); + } + m_mountPointsHasBeenSet = true; + } + + if(jsonValue.ValueExists("name")) + { + m_name = jsonValue.GetString("name"); + + m_nameHasBeenSet = true; + } + + if(jsonValue.ValueExists("privileged")) + { + m_privileged = jsonValue.GetBool("privileged"); + + m_privilegedHasBeenSet = true; + } + + if(jsonValue.ValueExists("readonlyRootFilesystem")) + { + m_readonlyRootFilesystem = jsonValue.GetBool("readonlyRootFilesystem"); + + m_readonlyRootFilesystemHasBeenSet = true; + } + + if(jsonValue.ValueExists("repositoryCredentials")) + { + m_repositoryCredentials = jsonValue.GetObject("repositoryCredentials"); + + m_repositoryCredentialsHasBeenSet = true; + } + + if(jsonValue.ValueExists("resourceRequirements")) + { + Aws::Utils::Array resourceRequirementsJsonList = jsonValue.GetArray("resourceRequirements"); + for(unsigned resourceRequirementsIndex = 0; resourceRequirementsIndex < resourceRequirementsJsonList.GetLength(); ++resourceRequirementsIndex) + { + m_resourceRequirements.push_back(resourceRequirementsJsonList[resourceRequirementsIndex].AsObject()); + } + m_resourceRequirementsHasBeenSet = true; + } + + if(jsonValue.ValueExists("secrets")) + { + Aws::Utils::Array secretsJsonList = jsonValue.GetArray("secrets"); + for(unsigned secretsIndex = 0; secretsIndex < secretsJsonList.GetLength(); ++secretsIndex) + { + m_secrets.push_back(secretsJsonList[secretsIndex].AsObject()); + } + m_secretsHasBeenSet = true; + } + + if(jsonValue.ValueExists("ulimits")) + { + Aws::Utils::Array ulimitsJsonList = jsonValue.GetArray("ulimits"); + for(unsigned ulimitsIndex = 0; ulimitsIndex < ulimitsJsonList.GetLength(); ++ulimitsIndex) + { + m_ulimits.push_back(ulimitsJsonList[ulimitsIndex].AsObject()); + } + m_ulimitsHasBeenSet = true; + } + + if(jsonValue.ValueExists("user")) + { + m_user = jsonValue.GetString("user"); + + m_userHasBeenSet = true; + } + + if(jsonValue.ValueExists("exitCode")) + { + m_exitCode = jsonValue.GetInteger("exitCode"); + + m_exitCodeHasBeenSet = true; + } + + if(jsonValue.ValueExists("reason")) + { + m_reason = jsonValue.GetString("reason"); + + m_reasonHasBeenSet = true; + } + + if(jsonValue.ValueExists("logStreamName")) + { + m_logStreamName = jsonValue.GetString("logStreamName"); + + m_logStreamNameHasBeenSet = true; + } + + if(jsonValue.ValueExists("networkInterfaces")) + { + Aws::Utils::Array networkInterfacesJsonList = jsonValue.GetArray("networkInterfaces"); + for(unsigned networkInterfacesIndex = 0; networkInterfacesIndex < networkInterfacesJsonList.GetLength(); ++networkInterfacesIndex) + { + m_networkInterfaces.push_back(networkInterfacesJsonList[networkInterfacesIndex].AsObject()); + } + m_networkInterfacesHasBeenSet = true; + } + + return *this; +} + +JsonValue TaskContainerDetails::Jsonize() const +{ + JsonValue payload; + + if(m_commandHasBeenSet) + { + Aws::Utils::Array commandJsonList(m_command.size()); + for(unsigned commandIndex = 0; commandIndex < commandJsonList.GetLength(); ++commandIndex) + { + commandJsonList[commandIndex].AsString(m_command[commandIndex]); + } + payload.WithArray("command", std::move(commandJsonList)); + + } + + if(m_dependsOnHasBeenSet) + { + Aws::Utils::Array dependsOnJsonList(m_dependsOn.size()); + for(unsigned dependsOnIndex = 0; dependsOnIndex < dependsOnJsonList.GetLength(); ++dependsOnIndex) + { + dependsOnJsonList[dependsOnIndex].AsObject(m_dependsOn[dependsOnIndex].Jsonize()); + } + payload.WithArray("dependsOn", std::move(dependsOnJsonList)); + + } + + if(m_environmentHasBeenSet) + { + Aws::Utils::Array environmentJsonList(m_environment.size()); + for(unsigned environmentIndex = 0; environmentIndex < environmentJsonList.GetLength(); ++environmentIndex) + { + environmentJsonList[environmentIndex].AsObject(m_environment[environmentIndex].Jsonize()); + } + payload.WithArray("environment", std::move(environmentJsonList)); + + } + + if(m_essentialHasBeenSet) + { + payload.WithBool("essential", m_essential); + + } + + if(m_imageHasBeenSet) + { + payload.WithString("image", m_image); + + } + + if(m_linuxParametersHasBeenSet) + { + payload.WithObject("linuxParameters", m_linuxParameters.Jsonize()); + + } + + if(m_logConfigurationHasBeenSet) + { + payload.WithObject("logConfiguration", m_logConfiguration.Jsonize()); + + } + + if(m_mountPointsHasBeenSet) + { + Aws::Utils::Array mountPointsJsonList(m_mountPoints.size()); + for(unsigned mountPointsIndex = 0; mountPointsIndex < mountPointsJsonList.GetLength(); ++mountPointsIndex) + { + mountPointsJsonList[mountPointsIndex].AsObject(m_mountPoints[mountPointsIndex].Jsonize()); + } + payload.WithArray("mountPoints", std::move(mountPointsJsonList)); + + } + + if(m_nameHasBeenSet) + { + payload.WithString("name", m_name); + + } + + if(m_privilegedHasBeenSet) + { + payload.WithBool("privileged", m_privileged); + + } + + if(m_readonlyRootFilesystemHasBeenSet) + { + payload.WithBool("readonlyRootFilesystem", m_readonlyRootFilesystem); + + } + + if(m_repositoryCredentialsHasBeenSet) + { + payload.WithObject("repositoryCredentials", m_repositoryCredentials.Jsonize()); + + } + + if(m_resourceRequirementsHasBeenSet) + { + Aws::Utils::Array resourceRequirementsJsonList(m_resourceRequirements.size()); + for(unsigned resourceRequirementsIndex = 0; resourceRequirementsIndex < resourceRequirementsJsonList.GetLength(); ++resourceRequirementsIndex) + { + resourceRequirementsJsonList[resourceRequirementsIndex].AsObject(m_resourceRequirements[resourceRequirementsIndex].Jsonize()); + } + payload.WithArray("resourceRequirements", std::move(resourceRequirementsJsonList)); + + } + + if(m_secretsHasBeenSet) + { + Aws::Utils::Array secretsJsonList(m_secrets.size()); + for(unsigned secretsIndex = 0; secretsIndex < secretsJsonList.GetLength(); ++secretsIndex) + { + secretsJsonList[secretsIndex].AsObject(m_secrets[secretsIndex].Jsonize()); + } + payload.WithArray("secrets", std::move(secretsJsonList)); + + } + + if(m_ulimitsHasBeenSet) + { + Aws::Utils::Array ulimitsJsonList(m_ulimits.size()); + for(unsigned ulimitsIndex = 0; ulimitsIndex < ulimitsJsonList.GetLength(); ++ulimitsIndex) + { + ulimitsJsonList[ulimitsIndex].AsObject(m_ulimits[ulimitsIndex].Jsonize()); + } + payload.WithArray("ulimits", std::move(ulimitsJsonList)); + + } + + if(m_userHasBeenSet) + { + payload.WithString("user", m_user); + + } + + if(m_exitCodeHasBeenSet) + { + payload.WithInteger("exitCode", m_exitCode); + + } + + if(m_reasonHasBeenSet) + { + payload.WithString("reason", m_reason); + + } + + if(m_logStreamNameHasBeenSet) + { + payload.WithString("logStreamName", m_logStreamName); + + } + + if(m_networkInterfacesHasBeenSet) + { + Aws::Utils::Array networkInterfacesJsonList(m_networkInterfaces.size()); + for(unsigned networkInterfacesIndex = 0; networkInterfacesIndex < networkInterfacesJsonList.GetLength(); ++networkInterfacesIndex) + { + networkInterfacesJsonList[networkInterfacesIndex].AsObject(m_networkInterfaces[networkInterfacesIndex].Jsonize()); + } + payload.WithArray("networkInterfaces", std::move(networkInterfacesJsonList)); + + } + + return payload; +} + +} // namespace Model +} // namespace Batch +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-batch/source/model/TaskContainerOverrides.cpp b/generated/src/aws-cpp-sdk-batch/source/model/TaskContainerOverrides.cpp new file mode 100644 index 00000000000..d4872faa500 --- /dev/null +++ b/generated/src/aws-cpp-sdk-batch/source/model/TaskContainerOverrides.cpp @@ -0,0 +1,128 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include + +#include + +using namespace Aws::Utils::Json; +using namespace Aws::Utils; + +namespace Aws +{ +namespace Batch +{ +namespace Model +{ + +TaskContainerOverrides::TaskContainerOverrides() : + m_commandHasBeenSet(false), + m_environmentHasBeenSet(false), + m_nameHasBeenSet(false), + m_resourceRequirementsHasBeenSet(false) +{ +} + +TaskContainerOverrides::TaskContainerOverrides(JsonView jsonValue) : + m_commandHasBeenSet(false), + m_environmentHasBeenSet(false), + m_nameHasBeenSet(false), + m_resourceRequirementsHasBeenSet(false) +{ + *this = jsonValue; +} + +TaskContainerOverrides& TaskContainerOverrides::operator =(JsonView jsonValue) +{ + if(jsonValue.ValueExists("command")) + { + Aws::Utils::Array commandJsonList = jsonValue.GetArray("command"); + for(unsigned commandIndex = 0; commandIndex < commandJsonList.GetLength(); ++commandIndex) + { + m_command.push_back(commandJsonList[commandIndex].AsString()); + } + m_commandHasBeenSet = true; + } + + if(jsonValue.ValueExists("environment")) + { + Aws::Utils::Array environmentJsonList = jsonValue.GetArray("environment"); + for(unsigned environmentIndex = 0; environmentIndex < environmentJsonList.GetLength(); ++environmentIndex) + { + m_environment.push_back(environmentJsonList[environmentIndex].AsObject()); + } + m_environmentHasBeenSet = true; + } + + if(jsonValue.ValueExists("name")) + { + m_name = jsonValue.GetString("name"); + + m_nameHasBeenSet = true; + } + + if(jsonValue.ValueExists("resourceRequirements")) + { + Aws::Utils::Array resourceRequirementsJsonList = jsonValue.GetArray("resourceRequirements"); + for(unsigned resourceRequirementsIndex = 0; resourceRequirementsIndex < resourceRequirementsJsonList.GetLength(); ++resourceRequirementsIndex) + { + m_resourceRequirements.push_back(resourceRequirementsJsonList[resourceRequirementsIndex].AsObject()); + } + m_resourceRequirementsHasBeenSet = true; + } + + return *this; +} + +JsonValue TaskContainerOverrides::Jsonize() const +{ + JsonValue payload; + + if(m_commandHasBeenSet) + { + Aws::Utils::Array commandJsonList(m_command.size()); + for(unsigned commandIndex = 0; commandIndex < commandJsonList.GetLength(); ++commandIndex) + { + commandJsonList[commandIndex].AsString(m_command[commandIndex]); + } + payload.WithArray("command", std::move(commandJsonList)); + + } + + if(m_environmentHasBeenSet) + { + Aws::Utils::Array environmentJsonList(m_environment.size()); + for(unsigned environmentIndex = 0; environmentIndex < environmentJsonList.GetLength(); ++environmentIndex) + { + environmentJsonList[environmentIndex].AsObject(m_environment[environmentIndex].Jsonize()); + } + payload.WithArray("environment", std::move(environmentJsonList)); + + } + + if(m_nameHasBeenSet) + { + payload.WithString("name", m_name); + + } + + if(m_resourceRequirementsHasBeenSet) + { + Aws::Utils::Array resourceRequirementsJsonList(m_resourceRequirements.size()); + for(unsigned resourceRequirementsIndex = 0; resourceRequirementsIndex < resourceRequirementsJsonList.GetLength(); ++resourceRequirementsIndex) + { + resourceRequirementsJsonList[resourceRequirementsIndex].AsObject(m_resourceRequirements[resourceRequirementsIndex].Jsonize()); + } + payload.WithArray("resourceRequirements", std::move(resourceRequirementsJsonList)); + + } + + return payload; +} + +} // namespace Model +} // namespace Batch +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-batch/source/model/TaskContainerProperties.cpp b/generated/src/aws-cpp-sdk-batch/source/model/TaskContainerProperties.cpp new file mode 100644 index 00000000000..7d83f04f905 --- /dev/null +++ b/generated/src/aws-cpp-sdk-batch/source/model/TaskContainerProperties.cpp @@ -0,0 +1,346 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include + +#include + +using namespace Aws::Utils::Json; +using namespace Aws::Utils; + +namespace Aws +{ +namespace Batch +{ +namespace Model +{ + +TaskContainerProperties::TaskContainerProperties() : + m_commandHasBeenSet(false), + m_dependsOnHasBeenSet(false), + m_environmentHasBeenSet(false), + m_essential(false), + m_essentialHasBeenSet(false), + m_imageHasBeenSet(false), + m_linuxParametersHasBeenSet(false), + m_logConfigurationHasBeenSet(false), + m_mountPointsHasBeenSet(false), + m_nameHasBeenSet(false), + m_privileged(false), + m_privilegedHasBeenSet(false), + m_readonlyRootFilesystem(false), + m_readonlyRootFilesystemHasBeenSet(false), + m_repositoryCredentialsHasBeenSet(false), + m_resourceRequirementsHasBeenSet(false), + m_secretsHasBeenSet(false), + m_ulimitsHasBeenSet(false), + m_userHasBeenSet(false) +{ +} + +TaskContainerProperties::TaskContainerProperties(JsonView jsonValue) : + m_commandHasBeenSet(false), + m_dependsOnHasBeenSet(false), + m_environmentHasBeenSet(false), + m_essential(false), + m_essentialHasBeenSet(false), + m_imageHasBeenSet(false), + m_linuxParametersHasBeenSet(false), + m_logConfigurationHasBeenSet(false), + m_mountPointsHasBeenSet(false), + m_nameHasBeenSet(false), + m_privileged(false), + m_privilegedHasBeenSet(false), + m_readonlyRootFilesystem(false), + m_readonlyRootFilesystemHasBeenSet(false), + m_repositoryCredentialsHasBeenSet(false), + m_resourceRequirementsHasBeenSet(false), + m_secretsHasBeenSet(false), + m_ulimitsHasBeenSet(false), + m_userHasBeenSet(false) +{ + *this = jsonValue; +} + +TaskContainerProperties& TaskContainerProperties::operator =(JsonView jsonValue) +{ + if(jsonValue.ValueExists("command")) + { + Aws::Utils::Array commandJsonList = jsonValue.GetArray("command"); + for(unsigned commandIndex = 0; commandIndex < commandJsonList.GetLength(); ++commandIndex) + { + m_command.push_back(commandJsonList[commandIndex].AsString()); + } + m_commandHasBeenSet = true; + } + + if(jsonValue.ValueExists("dependsOn")) + { + Aws::Utils::Array dependsOnJsonList = jsonValue.GetArray("dependsOn"); + for(unsigned dependsOnIndex = 0; dependsOnIndex < dependsOnJsonList.GetLength(); ++dependsOnIndex) + { + m_dependsOn.push_back(dependsOnJsonList[dependsOnIndex].AsObject()); + } + m_dependsOnHasBeenSet = true; + } + + if(jsonValue.ValueExists("environment")) + { + Aws::Utils::Array environmentJsonList = jsonValue.GetArray("environment"); + for(unsigned environmentIndex = 0; environmentIndex < environmentJsonList.GetLength(); ++environmentIndex) + { + m_environment.push_back(environmentJsonList[environmentIndex].AsObject()); + } + m_environmentHasBeenSet = true; + } + + if(jsonValue.ValueExists("essential")) + { + m_essential = jsonValue.GetBool("essential"); + + m_essentialHasBeenSet = true; + } + + if(jsonValue.ValueExists("image")) + { + m_image = jsonValue.GetString("image"); + + m_imageHasBeenSet = true; + } + + if(jsonValue.ValueExists("linuxParameters")) + { + m_linuxParameters = jsonValue.GetObject("linuxParameters"); + + m_linuxParametersHasBeenSet = true; + } + + if(jsonValue.ValueExists("logConfiguration")) + { + m_logConfiguration = jsonValue.GetObject("logConfiguration"); + + m_logConfigurationHasBeenSet = true; + } + + if(jsonValue.ValueExists("mountPoints")) + { + Aws::Utils::Array mountPointsJsonList = jsonValue.GetArray("mountPoints"); + for(unsigned mountPointsIndex = 0; mountPointsIndex < mountPointsJsonList.GetLength(); ++mountPointsIndex) + { + m_mountPoints.push_back(mountPointsJsonList[mountPointsIndex].AsObject()); + } + m_mountPointsHasBeenSet = true; + } + + if(jsonValue.ValueExists("name")) + { + m_name = jsonValue.GetString("name"); + + m_nameHasBeenSet = true; + } + + if(jsonValue.ValueExists("privileged")) + { + m_privileged = jsonValue.GetBool("privileged"); + + m_privilegedHasBeenSet = true; + } + + if(jsonValue.ValueExists("readonlyRootFilesystem")) + { + m_readonlyRootFilesystem = jsonValue.GetBool("readonlyRootFilesystem"); + + m_readonlyRootFilesystemHasBeenSet = true; + } + + if(jsonValue.ValueExists("repositoryCredentials")) + { + m_repositoryCredentials = jsonValue.GetObject("repositoryCredentials"); + + m_repositoryCredentialsHasBeenSet = true; + } + + if(jsonValue.ValueExists("resourceRequirements")) + { + Aws::Utils::Array resourceRequirementsJsonList = jsonValue.GetArray("resourceRequirements"); + for(unsigned resourceRequirementsIndex = 0; resourceRequirementsIndex < resourceRequirementsJsonList.GetLength(); ++resourceRequirementsIndex) + { + m_resourceRequirements.push_back(resourceRequirementsJsonList[resourceRequirementsIndex].AsObject()); + } + m_resourceRequirementsHasBeenSet = true; + } + + if(jsonValue.ValueExists("secrets")) + { + Aws::Utils::Array secretsJsonList = jsonValue.GetArray("secrets"); + for(unsigned secretsIndex = 0; secretsIndex < secretsJsonList.GetLength(); ++secretsIndex) + { + m_secrets.push_back(secretsJsonList[secretsIndex].AsObject()); + } + m_secretsHasBeenSet = true; + } + + if(jsonValue.ValueExists("ulimits")) + { + Aws::Utils::Array ulimitsJsonList = jsonValue.GetArray("ulimits"); + for(unsigned ulimitsIndex = 0; ulimitsIndex < ulimitsJsonList.GetLength(); ++ulimitsIndex) + { + m_ulimits.push_back(ulimitsJsonList[ulimitsIndex].AsObject()); + } + m_ulimitsHasBeenSet = true; + } + + if(jsonValue.ValueExists("user")) + { + m_user = jsonValue.GetString("user"); + + m_userHasBeenSet = true; + } + + return *this; +} + +JsonValue TaskContainerProperties::Jsonize() const +{ + JsonValue payload; + + if(m_commandHasBeenSet) + { + Aws::Utils::Array commandJsonList(m_command.size()); + for(unsigned commandIndex = 0; commandIndex < commandJsonList.GetLength(); ++commandIndex) + { + commandJsonList[commandIndex].AsString(m_command[commandIndex]); + } + payload.WithArray("command", std::move(commandJsonList)); + + } + + if(m_dependsOnHasBeenSet) + { + Aws::Utils::Array dependsOnJsonList(m_dependsOn.size()); + for(unsigned dependsOnIndex = 0; dependsOnIndex < dependsOnJsonList.GetLength(); ++dependsOnIndex) + { + dependsOnJsonList[dependsOnIndex].AsObject(m_dependsOn[dependsOnIndex].Jsonize()); + } + payload.WithArray("dependsOn", std::move(dependsOnJsonList)); + + } + + if(m_environmentHasBeenSet) + { + Aws::Utils::Array environmentJsonList(m_environment.size()); + for(unsigned environmentIndex = 0; environmentIndex < environmentJsonList.GetLength(); ++environmentIndex) + { + environmentJsonList[environmentIndex].AsObject(m_environment[environmentIndex].Jsonize()); + } + payload.WithArray("environment", std::move(environmentJsonList)); + + } + + if(m_essentialHasBeenSet) + { + payload.WithBool("essential", m_essential); + + } + + if(m_imageHasBeenSet) + { + payload.WithString("image", m_image); + + } + + if(m_linuxParametersHasBeenSet) + { + payload.WithObject("linuxParameters", m_linuxParameters.Jsonize()); + + } + + if(m_logConfigurationHasBeenSet) + { + payload.WithObject("logConfiguration", m_logConfiguration.Jsonize()); + + } + + if(m_mountPointsHasBeenSet) + { + Aws::Utils::Array mountPointsJsonList(m_mountPoints.size()); + for(unsigned mountPointsIndex = 0; mountPointsIndex < mountPointsJsonList.GetLength(); ++mountPointsIndex) + { + mountPointsJsonList[mountPointsIndex].AsObject(m_mountPoints[mountPointsIndex].Jsonize()); + } + payload.WithArray("mountPoints", std::move(mountPointsJsonList)); + + } + + if(m_nameHasBeenSet) + { + payload.WithString("name", m_name); + + } + + if(m_privilegedHasBeenSet) + { + payload.WithBool("privileged", m_privileged); + + } + + if(m_readonlyRootFilesystemHasBeenSet) + { + payload.WithBool("readonlyRootFilesystem", m_readonlyRootFilesystem); + + } + + if(m_repositoryCredentialsHasBeenSet) + { + payload.WithObject("repositoryCredentials", m_repositoryCredentials.Jsonize()); + + } + + if(m_resourceRequirementsHasBeenSet) + { + Aws::Utils::Array resourceRequirementsJsonList(m_resourceRequirements.size()); + for(unsigned resourceRequirementsIndex = 0; resourceRequirementsIndex < resourceRequirementsJsonList.GetLength(); ++resourceRequirementsIndex) + { + resourceRequirementsJsonList[resourceRequirementsIndex].AsObject(m_resourceRequirements[resourceRequirementsIndex].Jsonize()); + } + payload.WithArray("resourceRequirements", std::move(resourceRequirementsJsonList)); + + } + + if(m_secretsHasBeenSet) + { + Aws::Utils::Array secretsJsonList(m_secrets.size()); + for(unsigned secretsIndex = 0; secretsIndex < secretsJsonList.GetLength(); ++secretsIndex) + { + secretsJsonList[secretsIndex].AsObject(m_secrets[secretsIndex].Jsonize()); + } + payload.WithArray("secrets", std::move(secretsJsonList)); + + } + + if(m_ulimitsHasBeenSet) + { + Aws::Utils::Array ulimitsJsonList(m_ulimits.size()); + for(unsigned ulimitsIndex = 0; ulimitsIndex < ulimitsJsonList.GetLength(); ++ulimitsIndex) + { + ulimitsJsonList[ulimitsIndex].AsObject(m_ulimits[ulimitsIndex].Jsonize()); + } + payload.WithArray("ulimits", std::move(ulimitsJsonList)); + + } + + if(m_userHasBeenSet) + { + payload.WithString("user", m_user); + + } + + return payload; +} + +} // namespace Model +} // namespace Batch +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-batch/source/model/TaskPropertiesOverride.cpp b/generated/src/aws-cpp-sdk-batch/source/model/TaskPropertiesOverride.cpp new file mode 100644 index 00000000000..8bf24697a23 --- /dev/null +++ b/generated/src/aws-cpp-sdk-batch/source/model/TaskPropertiesOverride.cpp @@ -0,0 +1,67 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include + +#include + +using namespace Aws::Utils::Json; +using namespace Aws::Utils; + +namespace Aws +{ +namespace Batch +{ +namespace Model +{ + +TaskPropertiesOverride::TaskPropertiesOverride() : + m_containersHasBeenSet(false) +{ +} + +TaskPropertiesOverride::TaskPropertiesOverride(JsonView jsonValue) : + m_containersHasBeenSet(false) +{ + *this = jsonValue; +} + +TaskPropertiesOverride& TaskPropertiesOverride::operator =(JsonView jsonValue) +{ + if(jsonValue.ValueExists("containers")) + { + Aws::Utils::Array containersJsonList = jsonValue.GetArray("containers"); + for(unsigned containersIndex = 0; containersIndex < containersJsonList.GetLength(); ++containersIndex) + { + m_containers.push_back(containersJsonList[containersIndex].AsObject()); + } + m_containersHasBeenSet = true; + } + + return *this; +} + +JsonValue TaskPropertiesOverride::Jsonize() const +{ + JsonValue payload; + + if(m_containersHasBeenSet) + { + Aws::Utils::Array containersJsonList(m_containers.size()); + for(unsigned containersIndex = 0; containersIndex < containersJsonList.GetLength(); ++containersIndex) + { + containersJsonList[containersIndex].AsObject(m_containers[containersIndex].Jsonize()); + } + payload.WithArray("containers", std::move(containersJsonList)); + + } + + return payload; +} + +} // namespace Model +} // namespace Batch +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-bedrock-agent-runtime/include/aws/bedrock-agent-runtime/model/KnowledgeBaseRetrieveAndGenerateConfiguration.h b/generated/src/aws-cpp-sdk-bedrock-agent-runtime/include/aws/bedrock-agent-runtime/model/KnowledgeBaseRetrieveAndGenerateConfiguration.h index adf1a6916c3..974888c82af 100644 --- a/generated/src/aws-cpp-sdk-bedrock-agent-runtime/include/aws/bedrock-agent-runtime/model/KnowledgeBaseRetrieveAndGenerateConfiguration.h +++ b/generated/src/aws-cpp-sdk-bedrock-agent-runtime/include/aws/bedrock-agent-runtime/model/KnowledgeBaseRetrieveAndGenerateConfiguration.h @@ -6,6 +6,7 @@ #pragma once #include #include +#include #include namespace Aws @@ -87,6 +88,25 @@ namespace Model inline KnowledgeBaseRetrieveAndGenerateConfiguration& WithModelArn(const char* value) { SetModelArn(value); return *this;} + + + inline const KnowledgeBaseRetrievalConfiguration& GetRetrievalConfiguration() const{ return m_retrievalConfiguration; } + + + inline bool RetrievalConfigurationHasBeenSet() const { return m_retrievalConfigurationHasBeenSet; } + + + inline void SetRetrievalConfiguration(const KnowledgeBaseRetrievalConfiguration& value) { m_retrievalConfigurationHasBeenSet = true; m_retrievalConfiguration = value; } + + + inline void SetRetrievalConfiguration(KnowledgeBaseRetrievalConfiguration&& value) { m_retrievalConfigurationHasBeenSet = true; m_retrievalConfiguration = std::move(value); } + + + inline KnowledgeBaseRetrieveAndGenerateConfiguration& WithRetrievalConfiguration(const KnowledgeBaseRetrievalConfiguration& value) { SetRetrievalConfiguration(value); return *this;} + + + inline KnowledgeBaseRetrieveAndGenerateConfiguration& WithRetrievalConfiguration(KnowledgeBaseRetrievalConfiguration&& value) { SetRetrievalConfiguration(std::move(value)); return *this;} + private: Aws::String m_knowledgeBaseId; @@ -94,6 +114,9 @@ namespace Model Aws::String m_modelArn; bool m_modelArnHasBeenSet = false; + + KnowledgeBaseRetrievalConfiguration m_retrievalConfiguration; + bool m_retrievalConfigurationHasBeenSet = false; }; } // namespace Model diff --git a/generated/src/aws-cpp-sdk-bedrock-agent-runtime/include/aws/bedrock-agent-runtime/model/KnowledgeBaseVectorSearchConfiguration.h b/generated/src/aws-cpp-sdk-bedrock-agent-runtime/include/aws/bedrock-agent-runtime/model/KnowledgeBaseVectorSearchConfiguration.h index 485bf42e1c0..1630a21d376 100644 --- a/generated/src/aws-cpp-sdk-bedrock-agent-runtime/include/aws/bedrock-agent-runtime/model/KnowledgeBaseVectorSearchConfiguration.h +++ b/generated/src/aws-cpp-sdk-bedrock-agent-runtime/include/aws/bedrock-agent-runtime/model/KnowledgeBaseVectorSearchConfiguration.h @@ -5,6 +5,8 @@ #pragma once #include +#include +#include namespace Aws { @@ -55,10 +57,44 @@ namespace Model */ inline KnowledgeBaseVectorSearchConfiguration& WithNumberOfResults(int value) { SetNumberOfResults(value); return *this;} + + /** + *

Override the type of query to be performed on data store

+ */ + inline const SearchType& GetOverrideSearchType() const{ return m_overrideSearchType; } + + /** + *

Override the type of query to be performed on data store

+ */ + inline bool OverrideSearchTypeHasBeenSet() const { return m_overrideSearchTypeHasBeenSet; } + + /** + *

Override the type of query to be performed on data store

+ */ + inline void SetOverrideSearchType(const SearchType& value) { m_overrideSearchTypeHasBeenSet = true; m_overrideSearchType = value; } + + /** + *

Override the type of query to be performed on data store

+ */ + inline void SetOverrideSearchType(SearchType&& value) { m_overrideSearchTypeHasBeenSet = true; m_overrideSearchType = std::move(value); } + + /** + *

Override the type of query to be performed on data store

+ */ + inline KnowledgeBaseVectorSearchConfiguration& WithOverrideSearchType(const SearchType& value) { SetOverrideSearchType(value); return *this;} + + /** + *

Override the type of query to be performed on data store

+ */ + inline KnowledgeBaseVectorSearchConfiguration& WithOverrideSearchType(SearchType&& value) { SetOverrideSearchType(std::move(value)); return *this;} + private: int m_numberOfResults; bool m_numberOfResultsHasBeenSet = false; + + SearchType m_overrideSearchType; + bool m_overrideSearchTypeHasBeenSet = false; }; } // namespace Model diff --git a/generated/src/aws-cpp-sdk-bedrock-agent-runtime/include/aws/bedrock-agent-runtime/model/SearchType.h b/generated/src/aws-cpp-sdk-bedrock-agent-runtime/include/aws/bedrock-agent-runtime/model/SearchType.h new file mode 100644 index 00000000000..b163deed8cb --- /dev/null +++ b/generated/src/aws-cpp-sdk-bedrock-agent-runtime/include/aws/bedrock-agent-runtime/model/SearchType.h @@ -0,0 +1,31 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include + +namespace Aws +{ +namespace BedrockAgentRuntime +{ +namespace Model +{ + enum class SearchType + { + NOT_SET, + HYBRID, + SEMANTIC + }; + +namespace SearchTypeMapper +{ +AWS_BEDROCKAGENTRUNTIME_API SearchType GetSearchTypeForName(const Aws::String& name); + +AWS_BEDROCKAGENTRUNTIME_API Aws::String GetNameForSearchType(SearchType value); +} // namespace SearchTypeMapper +} // namespace Model +} // namespace BedrockAgentRuntime +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-bedrock-agent-runtime/source/model/KnowledgeBaseRetrieveAndGenerateConfiguration.cpp b/generated/src/aws-cpp-sdk-bedrock-agent-runtime/source/model/KnowledgeBaseRetrieveAndGenerateConfiguration.cpp index eb16527a42c..47be4713901 100644 --- a/generated/src/aws-cpp-sdk-bedrock-agent-runtime/source/model/KnowledgeBaseRetrieveAndGenerateConfiguration.cpp +++ b/generated/src/aws-cpp-sdk-bedrock-agent-runtime/source/model/KnowledgeBaseRetrieveAndGenerateConfiguration.cpp @@ -20,13 +20,15 @@ namespace Model KnowledgeBaseRetrieveAndGenerateConfiguration::KnowledgeBaseRetrieveAndGenerateConfiguration() : m_knowledgeBaseIdHasBeenSet(false), - m_modelArnHasBeenSet(false) + m_modelArnHasBeenSet(false), + m_retrievalConfigurationHasBeenSet(false) { } KnowledgeBaseRetrieveAndGenerateConfiguration::KnowledgeBaseRetrieveAndGenerateConfiguration(JsonView jsonValue) : m_knowledgeBaseIdHasBeenSet(false), - m_modelArnHasBeenSet(false) + m_modelArnHasBeenSet(false), + m_retrievalConfigurationHasBeenSet(false) { *this = jsonValue; } @@ -47,6 +49,13 @@ KnowledgeBaseRetrieveAndGenerateConfiguration& KnowledgeBaseRetrieveAndGenerateC m_modelArnHasBeenSet = true; } + if(jsonValue.ValueExists("retrievalConfiguration")) + { + m_retrievalConfiguration = jsonValue.GetObject("retrievalConfiguration"); + + m_retrievalConfigurationHasBeenSet = true; + } + return *this; } @@ -66,6 +75,12 @@ JsonValue KnowledgeBaseRetrieveAndGenerateConfiguration::Jsonize() const } + if(m_retrievalConfigurationHasBeenSet) + { + payload.WithObject("retrievalConfiguration", m_retrievalConfiguration.Jsonize()); + + } + return payload; } diff --git a/generated/src/aws-cpp-sdk-bedrock-agent-runtime/source/model/KnowledgeBaseVectorSearchConfiguration.cpp b/generated/src/aws-cpp-sdk-bedrock-agent-runtime/source/model/KnowledgeBaseVectorSearchConfiguration.cpp index 54c91fa769f..d3881d1bf96 100644 --- a/generated/src/aws-cpp-sdk-bedrock-agent-runtime/source/model/KnowledgeBaseVectorSearchConfiguration.cpp +++ b/generated/src/aws-cpp-sdk-bedrock-agent-runtime/source/model/KnowledgeBaseVectorSearchConfiguration.cpp @@ -20,13 +20,17 @@ namespace Model KnowledgeBaseVectorSearchConfiguration::KnowledgeBaseVectorSearchConfiguration() : m_numberOfResults(0), - m_numberOfResultsHasBeenSet(false) + m_numberOfResultsHasBeenSet(false), + m_overrideSearchType(SearchType::NOT_SET), + m_overrideSearchTypeHasBeenSet(false) { } KnowledgeBaseVectorSearchConfiguration::KnowledgeBaseVectorSearchConfiguration(JsonView jsonValue) : m_numberOfResults(0), - m_numberOfResultsHasBeenSet(false) + m_numberOfResultsHasBeenSet(false), + m_overrideSearchType(SearchType::NOT_SET), + m_overrideSearchTypeHasBeenSet(false) { *this = jsonValue; } @@ -40,6 +44,13 @@ KnowledgeBaseVectorSearchConfiguration& KnowledgeBaseVectorSearchConfiguration:: m_numberOfResultsHasBeenSet = true; } + if(jsonValue.ValueExists("overrideSearchType")) + { + m_overrideSearchType = SearchTypeMapper::GetSearchTypeForName(jsonValue.GetString("overrideSearchType")); + + m_overrideSearchTypeHasBeenSet = true; + } + return *this; } @@ -53,6 +64,11 @@ JsonValue KnowledgeBaseVectorSearchConfiguration::Jsonize() const } + if(m_overrideSearchTypeHasBeenSet) + { + payload.WithString("overrideSearchType", SearchTypeMapper::GetNameForSearchType(m_overrideSearchType)); + } + return payload; } diff --git a/generated/src/aws-cpp-sdk-bedrock-agent-runtime/source/model/SearchType.cpp b/generated/src/aws-cpp-sdk-bedrock-agent-runtime/source/model/SearchType.cpp new file mode 100644 index 00000000000..6904666a27a --- /dev/null +++ b/generated/src/aws-cpp-sdk-bedrock-agent-runtime/source/model/SearchType.cpp @@ -0,0 +1,72 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include +#include +#include + +using namespace Aws::Utils; + + +namespace Aws +{ + namespace BedrockAgentRuntime + { + namespace Model + { + namespace SearchTypeMapper + { + + static const int HYBRID_HASH = HashingUtils::HashString("HYBRID"); + static const int SEMANTIC_HASH = HashingUtils::HashString("SEMANTIC"); + + + SearchType GetSearchTypeForName(const Aws::String& name) + { + int hashCode = HashingUtils::HashString(name.c_str()); + if (hashCode == HYBRID_HASH) + { + return SearchType::HYBRID; + } + else if (hashCode == SEMANTIC_HASH) + { + return SearchType::SEMANTIC; + } + EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer(); + if(overflowContainer) + { + overflowContainer->StoreOverflow(hashCode, name); + return static_cast(hashCode); + } + + return SearchType::NOT_SET; + } + + Aws::String GetNameForSearchType(SearchType enumValue) + { + switch(enumValue) + { + case SearchType::NOT_SET: + return {}; + case SearchType::HYBRID: + return "HYBRID"; + case SearchType::SEMANTIC: + return "SEMANTIC"; + default: + EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer(); + if(overflowContainer) + { + return overflowContainer->RetrieveOverflow(static_cast(enumValue)); + } + + return {}; + } + } + + } // namespace SearchTypeMapper + } // namespace Model + } // namespace BedrockAgentRuntime +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-ce/include/aws/ce/CostExplorerClient.h b/generated/src/aws-cpp-sdk-ce/include/aws/ce/CostExplorerClient.h index 1b2003d1524..71e7da982d4 100644 --- a/generated/src/aws-cpp-sdk-ce/include/aws/ce/CostExplorerClient.h +++ b/generated/src/aws-cpp-sdk-ce/include/aws/ce/CostExplorerClient.h @@ -353,6 +353,32 @@ namespace CostExplorer return SubmitAsync(&CostExplorerClient::GetAnomalySubscriptions, request, handler, context); } + /** + *

Retrieves estimated usage records for hourly granularity or resource-level + * data at daily granularity.

See Also:

AWS + * API Reference

+ */ + virtual Model::GetApproximateUsageRecordsOutcome GetApproximateUsageRecords(const Model::GetApproximateUsageRecordsRequest& request) const; + + /** + * A Callable wrapper for GetApproximateUsageRecords that returns a future to the operation so that it can be executed in parallel to other requests. + */ + template + Model::GetApproximateUsageRecordsOutcomeCallable GetApproximateUsageRecordsCallable(const GetApproximateUsageRecordsRequestT& request) const + { + return SubmitCallable(&CostExplorerClient::GetApproximateUsageRecords, request); + } + + /** + * An Async wrapper for GetApproximateUsageRecords that queues the request into a thread executor and triggers associated callback when operation has finished. + */ + template + void GetApproximateUsageRecordsAsync(const GetApproximateUsageRecordsRequestT& request, const GetApproximateUsageRecordsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const + { + return SubmitAsync(&CostExplorerClient::GetApproximateUsageRecords, request, handler, context); + } + /** *

Retrieves cost and usage metrics for your account. You can specify which cost * and usage-related metric that you want the request to return. For example, you diff --git a/generated/src/aws-cpp-sdk-ce/include/aws/ce/CostExplorerServiceClientModel.h b/generated/src/aws-cpp-sdk-ce/include/aws/ce/CostExplorerServiceClientModel.h index c556541949e..442dfeeb6b1 100644 --- a/generated/src/aws-cpp-sdk-ce/include/aws/ce/CostExplorerServiceClientModel.h +++ b/generated/src/aws-cpp-sdk-ce/include/aws/ce/CostExplorerServiceClientModel.h @@ -28,6 +28,7 @@ #include #include #include +#include #include #include #include @@ -106,6 +107,7 @@ namespace Aws class GetAnomaliesRequest; class GetAnomalyMonitorsRequest; class GetAnomalySubscriptionsRequest; + class GetApproximateUsageRecordsRequest; class GetCostAndUsageRequest; class GetCostAndUsageWithResourcesRequest; class GetCostCategoriesRequest; @@ -147,6 +149,7 @@ namespace Aws typedef Aws::Utils::Outcome GetAnomaliesOutcome; typedef Aws::Utils::Outcome GetAnomalyMonitorsOutcome; typedef Aws::Utils::Outcome GetAnomalySubscriptionsOutcome; + typedef Aws::Utils::Outcome GetApproximateUsageRecordsOutcome; typedef Aws::Utils::Outcome GetCostAndUsageOutcome; typedef Aws::Utils::Outcome GetCostAndUsageWithResourcesOutcome; typedef Aws::Utils::Outcome GetCostCategoriesOutcome; @@ -188,6 +191,7 @@ namespace Aws typedef std::future GetAnomaliesOutcomeCallable; typedef std::future GetAnomalyMonitorsOutcomeCallable; typedef std::future GetAnomalySubscriptionsOutcomeCallable; + typedef std::future GetApproximateUsageRecordsOutcomeCallable; typedef std::future GetCostAndUsageOutcomeCallable; typedef std::future GetCostAndUsageWithResourcesOutcomeCallable; typedef std::future GetCostCategoriesOutcomeCallable; @@ -232,6 +236,7 @@ namespace Aws typedef std::function&) > GetAnomaliesResponseReceivedHandler; typedef std::function&) > GetAnomalyMonitorsResponseReceivedHandler; typedef std::function&) > GetAnomalySubscriptionsResponseReceivedHandler; + typedef std::function&) > GetApproximateUsageRecordsResponseReceivedHandler; typedef std::function&) > GetCostAndUsageResponseReceivedHandler; typedef std::function&) > GetCostAndUsageWithResourcesResponseReceivedHandler; typedef std::function&) > GetCostCategoriesResponseReceivedHandler; diff --git a/generated/src/aws-cpp-sdk-ce/include/aws/ce/model/ApproximationDimension.h b/generated/src/aws-cpp-sdk-ce/include/aws/ce/model/ApproximationDimension.h new file mode 100644 index 00000000000..bea3fb9bf4d --- /dev/null +++ b/generated/src/aws-cpp-sdk-ce/include/aws/ce/model/ApproximationDimension.h @@ -0,0 +1,31 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include + +namespace Aws +{ +namespace CostExplorer +{ +namespace Model +{ + enum class ApproximationDimension + { + NOT_SET, + SERVICE, + RESOURCE + }; + +namespace ApproximationDimensionMapper +{ +AWS_COSTEXPLORER_API ApproximationDimension GetApproximationDimensionForName(const Aws::String& name); + +AWS_COSTEXPLORER_API Aws::String GetNameForApproximationDimension(ApproximationDimension value); +} // namespace ApproximationDimensionMapper +} // namespace Model +} // namespace CostExplorer +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-ce/include/aws/ce/model/GetApproximateUsageRecordsRequest.h b/generated/src/aws-cpp-sdk-ce/include/aws/ce/model/GetApproximateUsageRecordsRequest.h new file mode 100644 index 00000000000..97b16f52867 --- /dev/null +++ b/generated/src/aws-cpp-sdk-ce/include/aws/ce/model/GetApproximateUsageRecordsRequest.h @@ -0,0 +1,188 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include +#include +#include +#include +#include +#include + +namespace Aws +{ +namespace CostExplorer +{ +namespace Model +{ + + /** + */ + class GetApproximateUsageRecordsRequest : public CostExplorerRequest + { + public: + AWS_COSTEXPLORER_API GetApproximateUsageRecordsRequest(); + + // Service request name is the Operation name which will send this request out, + // each operation should has unique request name, so that we can get operation's name from this request. + // Note: this is not true for response, multiple operations may have the same response name, + // so we can not get operation's name from response. + inline virtual const char* GetServiceRequestName() const override { return "GetApproximateUsageRecords"; } + + AWS_COSTEXPLORER_API Aws::String SerializePayload() const override; + + AWS_COSTEXPLORER_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; + + + /** + *

How granular you want the data to be. You can enable data at hourly or daily + * granularity.

+ */ + inline const Granularity& GetGranularity() const{ return m_granularity; } + + /** + *

How granular you want the data to be. You can enable data at hourly or daily + * granularity.

+ */ + inline bool GranularityHasBeenSet() const { return m_granularityHasBeenSet; } + + /** + *

How granular you want the data to be. You can enable data at hourly or daily + * granularity.

+ */ + inline void SetGranularity(const Granularity& value) { m_granularityHasBeenSet = true; m_granularity = value; } + + /** + *

How granular you want the data to be. You can enable data at hourly or daily + * granularity.

+ */ + inline void SetGranularity(Granularity&& value) { m_granularityHasBeenSet = true; m_granularity = std::move(value); } + + /** + *

How granular you want the data to be. You can enable data at hourly or daily + * granularity.

+ */ + inline GetApproximateUsageRecordsRequest& WithGranularity(const Granularity& value) { SetGranularity(value); return *this;} + + /** + *

How granular you want the data to be. You can enable data at hourly or daily + * granularity.

+ */ + inline GetApproximateUsageRecordsRequest& WithGranularity(Granularity&& value) { SetGranularity(std::move(value)); return *this;} + + + /** + *

The service metadata for the service or services you want to query. If not + * specified, all elements are returned.

+ */ + inline const Aws::Vector& GetServices() const{ return m_services; } + + /** + *

The service metadata for the service or services you want to query. If not + * specified, all elements are returned.

+ */ + inline bool ServicesHasBeenSet() const { return m_servicesHasBeenSet; } + + /** + *

The service metadata for the service or services you want to query. If not + * specified, all elements are returned.

+ */ + inline void SetServices(const Aws::Vector& value) { m_servicesHasBeenSet = true; m_services = value; } + + /** + *

The service metadata for the service or services you want to query. If not + * specified, all elements are returned.

+ */ + inline void SetServices(Aws::Vector&& value) { m_servicesHasBeenSet = true; m_services = std::move(value); } + + /** + *

The service metadata for the service or services you want to query. If not + * specified, all elements are returned.

+ */ + inline GetApproximateUsageRecordsRequest& WithServices(const Aws::Vector& value) { SetServices(value); return *this;} + + /** + *

The service metadata for the service or services you want to query. If not + * specified, all elements are returned.

+ */ + inline GetApproximateUsageRecordsRequest& WithServices(Aws::Vector&& value) { SetServices(std::move(value)); return *this;} + + /** + *

The service metadata for the service or services you want to query. If not + * specified, all elements are returned.

+ */ + inline GetApproximateUsageRecordsRequest& AddServices(const Aws::String& value) { m_servicesHasBeenSet = true; m_services.push_back(value); return *this; } + + /** + *

The service metadata for the service or services you want to query. If not + * specified, all elements are returned.

+ */ + inline GetApproximateUsageRecordsRequest& AddServices(Aws::String&& value) { m_servicesHasBeenSet = true; m_services.push_back(std::move(value)); return *this; } + + /** + *

The service metadata for the service or services you want to query. If not + * specified, all elements are returned.

+ */ + inline GetApproximateUsageRecordsRequest& AddServices(const char* value) { m_servicesHasBeenSet = true; m_services.push_back(value); return *this; } + + + /** + *

The service to evaluate for the usage records. You can choose resource-level + * data at daily granularity, or hourly granularity with or without resource-level + * data.

+ */ + inline const ApproximationDimension& GetApproximationDimension() const{ return m_approximationDimension; } + + /** + *

The service to evaluate for the usage records. You can choose resource-level + * data at daily granularity, or hourly granularity with or without resource-level + * data.

+ */ + inline bool ApproximationDimensionHasBeenSet() const { return m_approximationDimensionHasBeenSet; } + + /** + *

The service to evaluate for the usage records. You can choose resource-level + * data at daily granularity, or hourly granularity with or without resource-level + * data.

+ */ + inline void SetApproximationDimension(const ApproximationDimension& value) { m_approximationDimensionHasBeenSet = true; m_approximationDimension = value; } + + /** + *

The service to evaluate for the usage records. You can choose resource-level + * data at daily granularity, or hourly granularity with or without resource-level + * data.

+ */ + inline void SetApproximationDimension(ApproximationDimension&& value) { m_approximationDimensionHasBeenSet = true; m_approximationDimension = std::move(value); } + + /** + *

The service to evaluate for the usage records. You can choose resource-level + * data at daily granularity, or hourly granularity with or without resource-level + * data.

+ */ + inline GetApproximateUsageRecordsRequest& WithApproximationDimension(const ApproximationDimension& value) { SetApproximationDimension(value); return *this;} + + /** + *

The service to evaluate for the usage records. You can choose resource-level + * data at daily granularity, or hourly granularity with or without resource-level + * data.

+ */ + inline GetApproximateUsageRecordsRequest& WithApproximationDimension(ApproximationDimension&& value) { SetApproximationDimension(std::move(value)); return *this;} + + private: + + Granularity m_granularity; + bool m_granularityHasBeenSet = false; + + Aws::Vector m_services; + bool m_servicesHasBeenSet = false; + + ApproximationDimension m_approximationDimension; + bool m_approximationDimensionHasBeenSet = false; + }; + +} // namespace Model +} // namespace CostExplorer +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-ce/include/aws/ce/model/GetApproximateUsageRecordsResult.h b/generated/src/aws-cpp-sdk-ce/include/aws/ce/model/GetApproximateUsageRecordsResult.h new file mode 100644 index 00000000000..8ff39cd22e1 --- /dev/null +++ b/generated/src/aws-cpp-sdk-ce/include/aws/ce/model/GetApproximateUsageRecordsResult.h @@ -0,0 +1,154 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#include +#include +#include +#include +#include + +namespace Aws +{ +template +class AmazonWebServiceResult; + +namespace Utils +{ +namespace Json +{ + class JsonValue; +} // namespace Json +} // namespace Utils +namespace CostExplorer +{ +namespace Model +{ + class GetApproximateUsageRecordsResult + { + public: + AWS_COSTEXPLORER_API GetApproximateUsageRecordsResult(); + AWS_COSTEXPLORER_API GetApproximateUsageRecordsResult(const Aws::AmazonWebServiceResult& result); + AWS_COSTEXPLORER_API GetApproximateUsageRecordsResult& operator=(const Aws::AmazonWebServiceResult& result); + + + /** + *

The service metadata for the service or services in the response.

+ */ + inline const Aws::Map& GetServices() const{ return m_services; } + + /** + *

The service metadata for the service or services in the response.

+ */ + inline void SetServices(const Aws::Map& value) { m_services = value; } + + /** + *

The service metadata for the service or services in the response.

+ */ + inline void SetServices(Aws::Map&& value) { m_services = std::move(value); } + + /** + *

The service metadata for the service or services in the response.

+ */ + inline GetApproximateUsageRecordsResult& WithServices(const Aws::Map& value) { SetServices(value); return *this;} + + /** + *

The service metadata for the service or services in the response.

+ */ + inline GetApproximateUsageRecordsResult& WithServices(Aws::Map&& value) { SetServices(std::move(value)); return *this;} + + /** + *

The service metadata for the service or services in the response.

+ */ + inline GetApproximateUsageRecordsResult& AddServices(const Aws::String& key, long long value) { m_services.emplace(key, value); return *this; } + + /** + *

The service metadata for the service or services in the response.

+ */ + inline GetApproximateUsageRecordsResult& AddServices(Aws::String&& key, long long value) { m_services.emplace(std::move(key), value); return *this; } + + /** + *

The service metadata for the service or services in the response.

+ */ + inline GetApproximateUsageRecordsResult& AddServices(const char* key, long long value) { m_services.emplace(key, value); return *this; } + + + /** + *

The total number of usage records for all services in the services list.

+ */ + inline long long GetTotalRecords() const{ return m_totalRecords; } + + /** + *

The total number of usage records for all services in the services list.

+ */ + inline void SetTotalRecords(long long value) { m_totalRecords = value; } + + /** + *

The total number of usage records for all services in the services list.

+ */ + inline GetApproximateUsageRecordsResult& WithTotalRecords(long long value) { SetTotalRecords(value); return *this;} + + + /** + *

The lookback period that's used for the estimation.

+ */ + inline const DateInterval& GetLookbackPeriod() const{ return m_lookbackPeriod; } + + /** + *

The lookback period that's used for the estimation.

+ */ + inline void SetLookbackPeriod(const DateInterval& value) { m_lookbackPeriod = value; } + + /** + *

The lookback period that's used for the estimation.

+ */ + inline void SetLookbackPeriod(DateInterval&& value) { m_lookbackPeriod = std::move(value); } + + /** + *

The lookback period that's used for the estimation.

+ */ + inline GetApproximateUsageRecordsResult& WithLookbackPeriod(const DateInterval& value) { SetLookbackPeriod(value); return *this;} + + /** + *

The lookback period that's used for the estimation.

+ */ + inline GetApproximateUsageRecordsResult& WithLookbackPeriod(DateInterval&& value) { SetLookbackPeriod(std::move(value)); return *this;} + + + + inline const Aws::String& GetRequestId() const{ return m_requestId; } + + + inline void SetRequestId(const Aws::String& value) { m_requestId = value; } + + + inline void SetRequestId(Aws::String&& value) { m_requestId = std::move(value); } + + + inline void SetRequestId(const char* value) { m_requestId.assign(value); } + + + inline GetApproximateUsageRecordsResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} + + + inline GetApproximateUsageRecordsResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} + + + inline GetApproximateUsageRecordsResult& WithRequestId(const char* value) { SetRequestId(value); return *this;} + + private: + + Aws::Map m_services; + + long long m_totalRecords; + + DateInterval m_lookbackPeriod; + + Aws::String m_requestId; + }; + +} // namespace Model +} // namespace CostExplorer +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-ce/source/CostExplorerClient.cpp b/generated/src/aws-cpp-sdk-ce/source/CostExplorerClient.cpp index 3350db5c8d1..57ecbab99b5 100644 --- a/generated/src/aws-cpp-sdk-ce/source/CostExplorerClient.cpp +++ b/generated/src/aws-cpp-sdk-ce/source/CostExplorerClient.cpp @@ -31,6 +31,7 @@ #include #include #include +#include #include #include #include @@ -460,6 +461,32 @@ GetAnomalySubscriptionsOutcome CostExplorerClient::GetAnomalySubscriptions(const {{TracingUtils::SMITHY_METHOD_DIMENSION, request.GetServiceRequestName()}, {TracingUtils::SMITHY_SERVICE_DIMENSION, this->GetServiceClientName()}}); } +GetApproximateUsageRecordsOutcome CostExplorerClient::GetApproximateUsageRecords(const GetApproximateUsageRecordsRequest& request) const +{ + AWS_OPERATION_GUARD(GetApproximateUsageRecords); + AWS_OPERATION_CHECK_PTR(m_endpointProvider, GetApproximateUsageRecords, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE); + AWS_OPERATION_CHECK_PTR(m_telemetryProvider, GetApproximateUsageRecords, CoreErrors, CoreErrors::NOT_INITIALIZED); + auto tracer = m_telemetryProvider->getTracer(this->GetServiceClientName(), {}); + auto meter = m_telemetryProvider->getMeter(this->GetServiceClientName(), {}); + AWS_OPERATION_CHECK_PTR(meter, GetApproximateUsageRecords, CoreErrors, CoreErrors::NOT_INITIALIZED); + auto span = tracer->CreateSpan(Aws::String(this->GetServiceClientName()) + ".GetApproximateUsageRecords", + {{ TracingUtils::SMITHY_METHOD_DIMENSION, request.GetServiceRequestName() }, { TracingUtils::SMITHY_SERVICE_DIMENSION, this->GetServiceClientName() }, { TracingUtils::SMITHY_SYSTEM_DIMENSION, TracingUtils::SMITHY_METHOD_AWS_VALUE }}, + smithy::components::tracing::SpanKind::CLIENT); + return TracingUtils::MakeCallWithTiming( + [&]()-> GetApproximateUsageRecordsOutcome { + auto endpointResolutionOutcome = TracingUtils::MakeCallWithTiming( + [&]() -> ResolveEndpointOutcome { return m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams()); }, + TracingUtils::SMITHY_CLIENT_ENDPOINT_RESOLUTION_METRIC, + *meter, + {{TracingUtils::SMITHY_METHOD_DIMENSION, request.GetServiceRequestName()}, {TracingUtils::SMITHY_SERVICE_DIMENSION, this->GetServiceClientName()}}); + AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, GetApproximateUsageRecords, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage()); + return GetApproximateUsageRecordsOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER)); + }, + TracingUtils::SMITHY_CLIENT_DURATION_METRIC, + *meter, + {{TracingUtils::SMITHY_METHOD_DIMENSION, request.GetServiceRequestName()}, {TracingUtils::SMITHY_SERVICE_DIMENSION, this->GetServiceClientName()}}); +} + GetCostAndUsageOutcome CostExplorerClient::GetCostAndUsage(const GetCostAndUsageRequest& request) const { AWS_OPERATION_GUARD(GetCostAndUsage); diff --git a/generated/src/aws-cpp-sdk-ce/source/model/ApproximationDimension.cpp b/generated/src/aws-cpp-sdk-ce/source/model/ApproximationDimension.cpp new file mode 100644 index 00000000000..c3cea697177 --- /dev/null +++ b/generated/src/aws-cpp-sdk-ce/source/model/ApproximationDimension.cpp @@ -0,0 +1,72 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include +#include +#include + +using namespace Aws::Utils; + + +namespace Aws +{ + namespace CostExplorer + { + namespace Model + { + namespace ApproximationDimensionMapper + { + + static const int SERVICE_HASH = HashingUtils::HashString("SERVICE"); + static const int RESOURCE_HASH = HashingUtils::HashString("RESOURCE"); + + + ApproximationDimension GetApproximationDimensionForName(const Aws::String& name) + { + int hashCode = HashingUtils::HashString(name.c_str()); + if (hashCode == SERVICE_HASH) + { + return ApproximationDimension::SERVICE; + } + else if (hashCode == RESOURCE_HASH) + { + return ApproximationDimension::RESOURCE; + } + EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer(); + if(overflowContainer) + { + overflowContainer->StoreOverflow(hashCode, name); + return static_cast(hashCode); + } + + return ApproximationDimension::NOT_SET; + } + + Aws::String GetNameForApproximationDimension(ApproximationDimension enumValue) + { + switch(enumValue) + { + case ApproximationDimension::NOT_SET: + return {}; + case ApproximationDimension::SERVICE: + return "SERVICE"; + case ApproximationDimension::RESOURCE: + return "RESOURCE"; + default: + EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer(); + if(overflowContainer) + { + return overflowContainer->RetrieveOverflow(static_cast(enumValue)); + } + + return {}; + } + } + + } // namespace ApproximationDimensionMapper + } // namespace Model + } // namespace CostExplorer +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-ce/source/model/GetApproximateUsageRecordsRequest.cpp b/generated/src/aws-cpp-sdk-ce/source/model/GetApproximateUsageRecordsRequest.cpp new file mode 100644 index 00000000000..0e5e42966f1 --- /dev/null +++ b/generated/src/aws-cpp-sdk-ce/source/model/GetApproximateUsageRecordsRequest.cpp @@ -0,0 +1,62 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include + +#include + +using namespace Aws::CostExplorer::Model; +using namespace Aws::Utils::Json; +using namespace Aws::Utils; + +GetApproximateUsageRecordsRequest::GetApproximateUsageRecordsRequest() : + m_granularity(Granularity::NOT_SET), + m_granularityHasBeenSet(false), + m_servicesHasBeenSet(false), + m_approximationDimension(ApproximationDimension::NOT_SET), + m_approximationDimensionHasBeenSet(false) +{ +} + +Aws::String GetApproximateUsageRecordsRequest::SerializePayload() const +{ + JsonValue payload; + + if(m_granularityHasBeenSet) + { + payload.WithString("Granularity", GranularityMapper::GetNameForGranularity(m_granularity)); + } + + if(m_servicesHasBeenSet) + { + Aws::Utils::Array servicesJsonList(m_services.size()); + for(unsigned servicesIndex = 0; servicesIndex < servicesJsonList.GetLength(); ++servicesIndex) + { + servicesJsonList[servicesIndex].AsString(m_services[servicesIndex]); + } + payload.WithArray("Services", std::move(servicesJsonList)); + + } + + if(m_approximationDimensionHasBeenSet) + { + payload.WithString("ApproximationDimension", ApproximationDimensionMapper::GetNameForApproximationDimension(m_approximationDimension)); + } + + return payload.View().WriteReadable(); +} + +Aws::Http::HeaderValueCollection GetApproximateUsageRecordsRequest::GetRequestSpecificHeaders() const +{ + Aws::Http::HeaderValueCollection headers; + headers.insert(Aws::Http::HeaderValuePair("X-Amz-Target", "AWSInsightsIndexService.GetApproximateUsageRecords")); + return headers; + +} + + + + diff --git a/generated/src/aws-cpp-sdk-ce/source/model/GetApproximateUsageRecordsResult.cpp b/generated/src/aws-cpp-sdk-ce/source/model/GetApproximateUsageRecordsResult.cpp new file mode 100644 index 00000000000..7fd4945c715 --- /dev/null +++ b/generated/src/aws-cpp-sdk-ce/source/model/GetApproximateUsageRecordsResult.cpp @@ -0,0 +1,65 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include +#include +#include +#include +#include +#include + +#include + +using namespace Aws::CostExplorer::Model; +using namespace Aws::Utils::Json; +using namespace Aws::Utils; +using namespace Aws; + +GetApproximateUsageRecordsResult::GetApproximateUsageRecordsResult() : + m_totalRecords(0) +{ +} + +GetApproximateUsageRecordsResult::GetApproximateUsageRecordsResult(const Aws::AmazonWebServiceResult& result) : + m_totalRecords(0) +{ + *this = result; +} + +GetApproximateUsageRecordsResult& GetApproximateUsageRecordsResult::operator =(const Aws::AmazonWebServiceResult& result) +{ + JsonView jsonValue = result.GetPayload().View(); + if(jsonValue.ValueExists("Services")) + { + Aws::Map servicesJsonMap = jsonValue.GetObject("Services").GetAllObjects(); + for(auto& servicesItem : servicesJsonMap) + { + m_services[servicesItem.first] = servicesItem.second.AsInt64(); + } + } + + if(jsonValue.ValueExists("TotalRecords")) + { + m_totalRecords = jsonValue.GetInt64("TotalRecords"); + + } + + if(jsonValue.ValueExists("LookbackPeriod")) + { + m_lookbackPeriod = jsonValue.GetObject("LookbackPeriod"); + + } + + + const auto& headers = result.GetHeaderValueCollection(); + const auto& requestIdIter = headers.find("x-amzn-requestid"); + if(requestIdIter != headers.end()) + { + m_requestId = requestIdIter->second; + } + + + return *this; +} diff --git a/generated/src/aws-cpp-sdk-iot/include/aws/iot/model/AssociateTargetsWithJobRequest.h b/generated/src/aws-cpp-sdk-iot/include/aws/iot/model/AssociateTargetsWithJobRequest.h index a20e24cda2f..ea301ccd825 100644 --- a/generated/src/aws-cpp-sdk-iot/include/aws/iot/model/AssociateTargetsWithJobRequest.h +++ b/generated/src/aws-cpp-sdk-iot/include/aws/iot/model/AssociateTargetsWithJobRequest.h @@ -181,8 +181,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline const Aws::String& GetNamespaceId() const{ return m_namespaceId; } @@ -192,8 +194,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline bool NamespaceIdHasBeenSet() const { return m_namespaceIdHasBeenSet; } @@ -203,8 +207,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline void SetNamespaceId(const Aws::String& value) { m_namespaceIdHasBeenSet = true; m_namespaceId = value; } @@ -214,8 +220,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline void SetNamespaceId(Aws::String&& value) { m_namespaceIdHasBeenSet = true; m_namespaceId = std::move(value); } @@ -225,8 +233,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline void SetNamespaceId(const char* value) { m_namespaceIdHasBeenSet = true; m_namespaceId.assign(value); } @@ -236,8 +246,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline AssociateTargetsWithJobRequest& WithNamespaceId(const Aws::String& value) { SetNamespaceId(value); return *this;} @@ -247,8 +259,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline AssociateTargetsWithJobRequest& WithNamespaceId(Aws::String&& value) { SetNamespaceId(std::move(value)); return *this;} @@ -258,8 +272,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline AssociateTargetsWithJobRequest& WithNamespaceId(const char* value) { SetNamespaceId(value); return *this;} diff --git a/generated/src/aws-cpp-sdk-iot/include/aws/iot/model/CreateJobRequest.h b/generated/src/aws-cpp-sdk-iot/include/aws/iot/model/CreateJobRequest.h index acde47b7601..1cfa45ed4ce 100644 --- a/generated/src/aws-cpp-sdk-iot/include/aws/iot/model/CreateJobRequest.h +++ b/generated/src/aws-cpp-sdk-iot/include/aws/iot/model/CreateJobRequest.h @@ -598,8 +598,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline const Aws::String& GetNamespaceId() const{ return m_namespaceId; } @@ -609,8 +611,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline bool NamespaceIdHasBeenSet() const { return m_namespaceIdHasBeenSet; } @@ -620,8 +624,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline void SetNamespaceId(const Aws::String& value) { m_namespaceIdHasBeenSet = true; m_namespaceId = value; } @@ -631,8 +637,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline void SetNamespaceId(Aws::String&& value) { m_namespaceIdHasBeenSet = true; m_namespaceId = std::move(value); } @@ -642,8 +650,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline void SetNamespaceId(const char* value) { m_namespaceIdHasBeenSet = true; m_namespaceId.assign(value); } @@ -653,8 +663,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline CreateJobRequest& WithNamespaceId(const Aws::String& value) { SetNamespaceId(value); return *this;} @@ -664,8 +676,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline CreateJobRequest& WithNamespaceId(Aws::String&& value) { SetNamespaceId(std::move(value)); return *this;} @@ -675,8 +689,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline CreateJobRequest& WithNamespaceId(const char* value) { SetNamespaceId(value); return *this;} diff --git a/generated/src/aws-cpp-sdk-iot/include/aws/iot/model/DeleteJobExecutionRequest.h b/generated/src/aws-cpp-sdk-iot/include/aws/iot/model/DeleteJobExecutionRequest.h index 3c79bf3c1d8..33077ab4d3d 100644 --- a/generated/src/aws-cpp-sdk-iot/include/aws/iot/model/DeleteJobExecutionRequest.h +++ b/generated/src/aws-cpp-sdk-iot/include/aws/iot/model/DeleteJobExecutionRequest.h @@ -204,8 +204,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline const Aws::String& GetNamespaceId() const{ return m_namespaceId; } @@ -215,8 +217,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline bool NamespaceIdHasBeenSet() const { return m_namespaceIdHasBeenSet; } @@ -226,8 +230,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline void SetNamespaceId(const Aws::String& value) { m_namespaceIdHasBeenSet = true; m_namespaceId = value; } @@ -237,8 +243,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline void SetNamespaceId(Aws::String&& value) { m_namespaceIdHasBeenSet = true; m_namespaceId = std::move(value); } @@ -248,8 +256,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline void SetNamespaceId(const char* value) { m_namespaceIdHasBeenSet = true; m_namespaceId.assign(value); } @@ -259,8 +269,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline DeleteJobExecutionRequest& WithNamespaceId(const Aws::String& value) { SetNamespaceId(value); return *this;} @@ -270,8 +282,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline DeleteJobExecutionRequest& WithNamespaceId(Aws::String&& value) { SetNamespaceId(std::move(value)); return *this;} @@ -281,8 +295,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline DeleteJobExecutionRequest& WithNamespaceId(const char* value) { SetNamespaceId(value); return *this;} diff --git a/generated/src/aws-cpp-sdk-iot/include/aws/iot/model/DeleteJobRequest.h b/generated/src/aws-cpp-sdk-iot/include/aws/iot/model/DeleteJobRequest.h index 3cbcf094b9a..ad21c4be2ac 100644 --- a/generated/src/aws-cpp-sdk-iot/include/aws/iot/model/DeleteJobRequest.h +++ b/generated/src/aws-cpp-sdk-iot/include/aws/iot/model/DeleteJobRequest.h @@ -154,8 +154,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline const Aws::String& GetNamespaceId() const{ return m_namespaceId; } @@ -165,8 +167,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline bool NamespaceIdHasBeenSet() const { return m_namespaceIdHasBeenSet; } @@ -176,8 +180,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline void SetNamespaceId(const Aws::String& value) { m_namespaceIdHasBeenSet = true; m_namespaceId = value; } @@ -187,8 +193,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline void SetNamespaceId(Aws::String&& value) { m_namespaceIdHasBeenSet = true; m_namespaceId = std::move(value); } @@ -198,8 +206,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline void SetNamespaceId(const char* value) { m_namespaceIdHasBeenSet = true; m_namespaceId.assign(value); } @@ -209,8 +219,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline DeleteJobRequest& WithNamespaceId(const Aws::String& value) { SetNamespaceId(value); return *this;} @@ -220,8 +232,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline DeleteJobRequest& WithNamespaceId(Aws::String&& value) { SetNamespaceId(std::move(value)); return *this;} @@ -231,8 +245,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline DeleteJobRequest& WithNamespaceId(const char* value) { SetNamespaceId(value); return *this;} diff --git a/generated/src/aws-cpp-sdk-iot/include/aws/iot/model/Job.h b/generated/src/aws-cpp-sdk-iot/include/aws/iot/model/Job.h index 60136cc2d09..8c5589fa685 100644 --- a/generated/src/aws-cpp-sdk-iot/include/aws/iot/model/Job.h +++ b/generated/src/aws-cpp-sdk-iot/include/aws/iot/model/Job.h @@ -735,8 +735,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline const Aws::String& GetNamespaceId() const{ return m_namespaceId; } @@ -746,8 +748,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline bool NamespaceIdHasBeenSet() const { return m_namespaceIdHasBeenSet; } @@ -757,8 +761,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline void SetNamespaceId(const Aws::String& value) { m_namespaceIdHasBeenSet = true; m_namespaceId = value; } @@ -768,8 +774,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline void SetNamespaceId(Aws::String&& value) { m_namespaceIdHasBeenSet = true; m_namespaceId = std::move(value); } @@ -779,8 +787,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline void SetNamespaceId(const char* value) { m_namespaceIdHasBeenSet = true; m_namespaceId.assign(value); } @@ -790,8 +800,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline Job& WithNamespaceId(const Aws::String& value) { SetNamespaceId(value); return *this;} @@ -801,8 +813,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline Job& WithNamespaceId(Aws::String&& value) { SetNamespaceId(std::move(value)); return *this;} @@ -812,8 +826,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline Job& WithNamespaceId(const char* value) { SetNamespaceId(value); return *this;} diff --git a/generated/src/aws-cpp-sdk-iot/include/aws/iot/model/ListJobExecutionsForThingRequest.h b/generated/src/aws-cpp-sdk-iot/include/aws/iot/model/ListJobExecutionsForThingRequest.h index 06e0c45e32a..92f25353eac 100644 --- a/generated/src/aws-cpp-sdk-iot/include/aws/iot/model/ListJobExecutionsForThingRequest.h +++ b/generated/src/aws-cpp-sdk-iot/include/aws/iot/model/ListJobExecutionsForThingRequest.h @@ -123,8 +123,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline const Aws::String& GetNamespaceId() const{ return m_namespaceId; } @@ -134,8 +136,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline bool NamespaceIdHasBeenSet() const { return m_namespaceIdHasBeenSet; } @@ -145,8 +149,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline void SetNamespaceId(const Aws::String& value) { m_namespaceIdHasBeenSet = true; m_namespaceId = value; } @@ -156,8 +162,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline void SetNamespaceId(Aws::String&& value) { m_namespaceIdHasBeenSet = true; m_namespaceId = std::move(value); } @@ -167,8 +175,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline void SetNamespaceId(const char* value) { m_namespaceIdHasBeenSet = true; m_namespaceId.assign(value); } @@ -178,8 +188,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline ListJobExecutionsForThingRequest& WithNamespaceId(const Aws::String& value) { SetNamespaceId(value); return *this;} @@ -189,8 +201,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline ListJobExecutionsForThingRequest& WithNamespaceId(Aws::String&& value) { SetNamespaceId(std::move(value)); return *this;} @@ -200,8 +214,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline ListJobExecutionsForThingRequest& WithNamespaceId(const char* value) { SetNamespaceId(value); return *this;} diff --git a/generated/src/aws-cpp-sdk-iot/include/aws/iot/model/ListJobsRequest.h b/generated/src/aws-cpp-sdk-iot/include/aws/iot/model/ListJobsRequest.h index 8a6712cc508..079a23a117b 100644 --- a/generated/src/aws-cpp-sdk-iot/include/aws/iot/model/ListJobsRequest.h +++ b/generated/src/aws-cpp-sdk-iot/include/aws/iot/model/ListJobsRequest.h @@ -306,8 +306,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline const Aws::String& GetNamespaceId() const{ return m_namespaceId; } @@ -317,8 +319,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline bool NamespaceIdHasBeenSet() const { return m_namespaceIdHasBeenSet; } @@ -328,8 +332,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline void SetNamespaceId(const Aws::String& value) { m_namespaceIdHasBeenSet = true; m_namespaceId = value; } @@ -339,8 +345,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline void SetNamespaceId(Aws::String&& value) { m_namespaceIdHasBeenSet = true; m_namespaceId = std::move(value); } @@ -350,8 +358,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline void SetNamespaceId(const char* value) { m_namespaceIdHasBeenSet = true; m_namespaceId.assign(value); } @@ -361,8 +371,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline ListJobsRequest& WithNamespaceId(const Aws::String& value) { SetNamespaceId(value); return *this;} @@ -372,8 +384,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline ListJobsRequest& WithNamespaceId(Aws::String&& value) { SetNamespaceId(std::move(value)); return *this;} @@ -383,8 +397,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline ListJobsRequest& WithNamespaceId(const char* value) { SetNamespaceId(value); return *this;} diff --git a/generated/src/aws-cpp-sdk-iot/include/aws/iot/model/SearchIndexRequest.h b/generated/src/aws-cpp-sdk-iot/include/aws/iot/model/SearchIndexRequest.h index 73146b65054..d3b8043ac80 100644 --- a/generated/src/aws-cpp-sdk-iot/include/aws/iot/model/SearchIndexRequest.h +++ b/generated/src/aws-cpp-sdk-iot/include/aws/iot/model/SearchIndexRequest.h @@ -188,26 +188,42 @@ namespace Model /** - *

The maximum number of results to return per page at one time. The response - * might contain fewer results but will never contain more.

+ *

The maximum number of results to return per page at one time. This maximum + * number cannot exceed 100. The response might contain fewer results but will + * never contain more. You can use + * nextToken to retrieve the next set of results until + * nextToken returns NULL.

*/ inline int GetMaxResults() const{ return m_maxResults; } /** - *

The maximum number of results to return per page at one time. The response - * might contain fewer results but will never contain more.

+ *

The maximum number of results to return per page at one time. This maximum + * number cannot exceed 100. The response might contain fewer results but will + * never contain more. You can use + * nextToken to retrieve the next set of results until + * nextToken returns NULL.

*/ inline bool MaxResultsHasBeenSet() const { return m_maxResultsHasBeenSet; } /** - *

The maximum number of results to return per page at one time. The response - * might contain fewer results but will never contain more.

+ *

The maximum number of results to return per page at one time. This maximum + * number cannot exceed 100. The response might contain fewer results but will + * never contain more. You can use + * nextToken to retrieve the next set of results until + * nextToken returns NULL.

*/ inline void SetMaxResults(int value) { m_maxResultsHasBeenSet = true; m_maxResults = value; } /** - *

The maximum number of results to return per page at one time. The response - * might contain fewer results but will never contain more.

+ *

The maximum number of results to return per page at one time. This maximum + * number cannot exceed 100. The response might contain fewer results but will + * never contain more. You can use + * nextToken to retrieve the next set of results until + * nextToken returns NULL.

*/ inline SearchIndexRequest& WithMaxResults(int value) { SetMaxResults(value); return *this;} diff --git a/generated/src/aws-cpp-sdk-iot/include/aws/iot/model/UpdateJobRequest.h b/generated/src/aws-cpp-sdk-iot/include/aws/iot/model/UpdateJobRequest.h index a4e86a382e5..7240a8a4858 100644 --- a/generated/src/aws-cpp-sdk-iot/include/aws/iot/model/UpdateJobRequest.h +++ b/generated/src/aws-cpp-sdk-iot/include/aws/iot/model/UpdateJobRequest.h @@ -279,8 +279,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline const Aws::String& GetNamespaceId() const{ return m_namespaceId; } @@ -290,8 +292,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline bool NamespaceIdHasBeenSet() const { return m_namespaceIdHasBeenSet; } @@ -301,8 +305,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline void SetNamespaceId(const Aws::String& value) { m_namespaceIdHasBeenSet = true; m_namespaceId = value; } @@ -312,8 +318,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline void SetNamespaceId(Aws::String&& value) { m_namespaceIdHasBeenSet = true; m_namespaceId = std::move(value); } @@ -323,8 +331,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline void SetNamespaceId(const char* value) { m_namespaceIdHasBeenSet = true; m_namespaceId.assign(value); } @@ -334,8 +344,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline UpdateJobRequest& WithNamespaceId(const Aws::String& value) { SetNamespaceId(value); return *this;} @@ -345,8 +357,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline UpdateJobRequest& WithNamespaceId(Aws::String&& value) { SetNamespaceId(std::move(value)); return *this;} @@ -356,8 +370,10 @@ namespace Model * sends jobs notifications to MQTT topics that contain the value in the following * format.

* $aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/ - *

The namespaceId feature is in public preview.

- * + *

The namespaceId feature is only supported by IoT + * Greengrass at this time. For more information, see Setting + * up IoT Greengrass core devices.

*/ inline UpdateJobRequest& WithNamespaceId(const char* value) { SetNamespaceId(value); return *this;} diff --git a/generated/src/aws-cpp-sdk-wafv2/include/aws/wafv2/model/RateBasedStatement.h b/generated/src/aws-cpp-sdk-wafv2/include/aws/wafv2/model/RateBasedStatement.h index 2789773ee9e..b76f43ed28f 100644 --- a/generated/src/aws-cpp-sdk-wafv2/include/aws/wafv2/model/RateBasedStatement.h +++ b/generated/src/aws-cpp-sdk-wafv2/include/aws/wafv2/model/RateBasedStatement.h @@ -148,6 +148,51 @@ namespace Model inline RateBasedStatement& WithLimit(long long value) { SetLimit(value); return *this;} + /** + *

The amount of time, in seconds, that WAF should include in its request + * counts, looking back from the current time. For example, for a setting of 120, + * when WAF checks the rate, it counts the requests for the 2 minutes immediately + * preceding the current time. Valid settings are 60, 120, 300, and 600.

+ *

This setting doesn't determine how often WAF checks the rate, but how far + * back it looks each time it checks. WAF checks the rate about every 10 + * seconds.

Default: 300 (5 minutes)

+ */ + inline long long GetEvaluationWindowSec() const{ return m_evaluationWindowSec; } + + /** + *

The amount of time, in seconds, that WAF should include in its request + * counts, looking back from the current time. For example, for a setting of 120, + * when WAF checks the rate, it counts the requests for the 2 minutes immediately + * preceding the current time. Valid settings are 60, 120, 300, and 600.

+ *

This setting doesn't determine how often WAF checks the rate, but how far + * back it looks each time it checks. WAF checks the rate about every 10 + * seconds.

Default: 300 (5 minutes)

+ */ + inline bool EvaluationWindowSecHasBeenSet() const { return m_evaluationWindowSecHasBeenSet; } + + /** + *

The amount of time, in seconds, that WAF should include in its request + * counts, looking back from the current time. For example, for a setting of 120, + * when WAF checks the rate, it counts the requests for the 2 minutes immediately + * preceding the current time. Valid settings are 60, 120, 300, and 600.

+ *

This setting doesn't determine how often WAF checks the rate, but how far + * back it looks each time it checks. WAF checks the rate about every 10 + * seconds.

Default: 300 (5 minutes)

+ */ + inline void SetEvaluationWindowSec(long long value) { m_evaluationWindowSecHasBeenSet = true; m_evaluationWindowSec = value; } + + /** + *

The amount of time, in seconds, that WAF should include in its request + * counts, looking back from the current time. For example, for a setting of 120, + * when WAF checks the rate, it counts the requests for the 2 minutes immediately + * preceding the current time. Valid settings are 60, 120, 300, and 600.

+ *

This setting doesn't determine how often WAF checks the rate, but how far + * back it looks each time it checks. WAF checks the rate about every 10 + * seconds.

Default: 300 (5 minutes)

+ */ + inline RateBasedStatement& WithEvaluationWindowSec(long long value) { SetEvaluationWindowSec(value); return *this;} + + /** *

Setting that indicates how to aggregate the request counts.

*

Web requests that are missing any of the components specified in the @@ -490,6 +535,9 @@ namespace Model long long m_limit; bool m_limitHasBeenSet = false; + long long m_evaluationWindowSec; + bool m_evaluationWindowSecHasBeenSet = false; + RateBasedStatementAggregateKeyType m_aggregateKeyType; bool m_aggregateKeyTypeHasBeenSet = false; diff --git a/generated/src/aws-cpp-sdk-wafv2/source/model/RateBasedStatement.cpp b/generated/src/aws-cpp-sdk-wafv2/source/model/RateBasedStatement.cpp index 38f0766603c..23aa2c8ab52 100644 --- a/generated/src/aws-cpp-sdk-wafv2/source/model/RateBasedStatement.cpp +++ b/generated/src/aws-cpp-sdk-wafv2/source/model/RateBasedStatement.cpp @@ -22,6 +22,8 @@ namespace Model RateBasedStatement::RateBasedStatement() : m_limit(0), m_limitHasBeenSet(false), + m_evaluationWindowSec(0), + m_evaluationWindowSecHasBeenSet(false), m_aggregateKeyType(RateBasedStatementAggregateKeyType::NOT_SET), m_aggregateKeyTypeHasBeenSet(false), m_scopeDownStatementHasBeenSet(false), @@ -33,6 +35,8 @@ RateBasedStatement::RateBasedStatement() : RateBasedStatement::RateBasedStatement(JsonView jsonValue) : m_limit(0), m_limitHasBeenSet(false), + m_evaluationWindowSec(0), + m_evaluationWindowSecHasBeenSet(false), m_aggregateKeyType(RateBasedStatementAggregateKeyType::NOT_SET), m_aggregateKeyTypeHasBeenSet(false), m_scopeDownStatementHasBeenSet(false), @@ -58,6 +62,13 @@ RateBasedStatement& RateBasedStatement::operator =(JsonView jsonValue) m_limitHasBeenSet = true; } + if(jsonValue.ValueExists("EvaluationWindowSec")) + { + m_evaluationWindowSec = jsonValue.GetInt64("EvaluationWindowSec"); + + m_evaluationWindowSecHasBeenSet = true; + } + if(jsonValue.ValueExists("AggregateKeyType")) { m_aggregateKeyType = RateBasedStatementAggregateKeyTypeMapper::GetRateBasedStatementAggregateKeyTypeForName(jsonValue.GetString("AggregateKeyType")); @@ -102,6 +113,12 @@ JsonValue RateBasedStatement::Jsonize() const } + if(m_evaluationWindowSecHasBeenSet) + { + payload.WithInt64("EvaluationWindowSec", m_evaluationWindowSec); + + } + if(m_aggregateKeyTypeHasBeenSet) { payload.WithString("AggregateKeyType", RateBasedStatementAggregateKeyTypeMapper::GetNameForRateBasedStatementAggregateKeyType(m_aggregateKeyType)); diff --git a/src/aws-cpp-sdk-core/include/aws/core/VersionConfig.h b/src/aws-cpp-sdk-core/include/aws/core/VersionConfig.h index 527feeb3a47..3398d49d306 100644 --- a/src/aws-cpp-sdk-core/include/aws/core/VersionConfig.h +++ b/src/aws-cpp-sdk-core/include/aws/core/VersionConfig.h @@ -4,7 +4,7 @@ */ #pragma once -#define AWS_SDK_VERSION_STRING "1.11.274" +#define AWS_SDK_VERSION_STRING "1.11.275" #define AWS_SDK_VERSION_MAJOR 1 #define AWS_SDK_VERSION_MINOR 11 -#define AWS_SDK_VERSION_PATCH 274 +#define AWS_SDK_VERSION_PATCH 275 diff --git a/tools/code-generation/api-descriptions/batch-2016-08-10.normal.json b/tools/code-generation/api-descriptions/batch-2016-08-10.normal.json index 37005ba16bf..62331f378f8 100644 --- a/tools/code-generation/api-descriptions/batch-2016-08-10.normal.json +++ b/tools/code-generation/api-descriptions/batch-2016-08-10.normal.json @@ -641,7 +641,7 @@ "documentation":"

The Amazon Resource Name (ARN) of the compute environment.

" } }, - "documentation":"

The order that compute environments are tried in for job placement within a queue. Compute environments are tried in ascending order. For example, if two compute environments are associated with a job queue, the compute environment with a lower order integer value is tried for job placement first. Compute environments must be in the VALID state before you can associate them with a job queue. All of the compute environments must be either EC2 (EC2 or SPOT) or Fargate (FARGATE or FARGATE_SPOT); EC2 and Fargate compute environments can't be mixed.

All compute environments that are associated with a job queue must share the same architecture. Batch doesn't support mixing compute environment architecture types in a single job queue.

" + "documentation":"

The order that compute environments are tried in for job placement within a queue. Compute environments are tried in ascending order. For example, if two compute environments are associated with a job queue, the compute environment with a lower order integer value is tried for job placement first. Compute environments must be in the VALID state before you can associate them with a job queue. All of the compute environments must be either EC2 (EC2 or SPOT) or Fargate (FARGATE or FARGATE_SPOT); Amazon EC2 and Fargate compute environments can't be mixed.

All compute environments that are associated with a job queue must share the same architecture. Batch doesn't support mixing compute environment architecture types in a single job queue.

" }, "ComputeEnvironmentOrders":{ "type":"list", @@ -703,7 +703,7 @@ }, "tags":{ "shape":"TagsMap", - "documentation":"

Key-value pair tags to be applied to EC2 resources that are launched in the compute environment. For Batch, these take the form of \"String1\": \"String2\", where String1 is the tag key and String2 is the tag value-for example, { \"Name\": \"Batch Instance - C4OnDemand\" }. This is helpful for recognizing your Batch instances in the Amazon EC2 console. Updating these tags requires an infrastructure update to the compute environment. For more information, see Updating compute environments in the Batch User Guide. These tags aren't seen when using the Batch ListTagsForResource API operation.

This parameter isn't applicable to jobs that are running on Fargate resources. Don't specify it.

" + "documentation":"

Key-value pair tags to be applied to Amazon EC2 resources that are launched in the compute environment. For Batch, these take the form of \"String1\": \"String2\", where String1 is the tag key and String2 is the tag value-for example, { \"Name\": \"Batch Instance - C4OnDemand\" }. This is helpful for recognizing your Batch instances in the Amazon EC2 console. Updating these tags requires an infrastructure update to the compute environment. For more information, see Updating compute environments in the Batch User Guide. These tags aren't seen when using the Batch ListTagsForResource API operation.

This parameter isn't applicable to jobs that are running on Fargate resources. Don't specify it.

" }, "placementGroup":{ "shape":"String", @@ -719,11 +719,11 @@ }, "launchTemplate":{ "shape":"LaunchTemplateSpecification", - "documentation":"

The launch template to use for your compute resources. Any other compute resource parameters that you specify in a CreateComputeEnvironment API operation override the same parameters in the launch template. You must specify either the launch template ID or launch template name in the request, but not both. For more information, see Launch template support in the Batch User Guide.

This parameter isn't applicable to jobs that are running on Fargate resources. Don't specify it.

" + "documentation":"

The launch template to use for your compute resources. Any other compute resource parameters that you specify in a CreateComputeEnvironment API operation override the same parameters in the launch template. You must specify either the launch template ID or launch template name in the request, but not both. For more information, see Launch template support in the Batch User Guide.

This parameter isn't applicable to jobs that are running on Fargate resources. Don't specify it.

" }, "ec2Configuration":{ "shape":"Ec2ConfigurationList", - "documentation":"

Provides information that's used to select Amazon Machine Images (AMIs) for EC2 instances in the compute environment. If Ec2Configuration isn't specified, the default is ECS_AL2.

One or two values can be provided.

This parameter isn't applicable to jobs that are running on Fargate resources. Don't specify it.

" + "documentation":"

Provides information that's used to select Amazon Machine Images (AMIs) for Amazon EC2 instances in the compute environment. If Ec2Configuration isn't specified, the default is ECS_AL2.

One or two values can be provided.

This parameter isn't applicable to jobs that are running on Fargate resources. Don't specify it.

" } }, "documentation":"

An object that represents an Batch compute resource. For more information, see Compute environments in the Batch User Guide.

" @@ -745,11 +745,11 @@ }, "subnets":{ "shape":"StringList", - "documentation":"

The VPC subnets where the compute resources are launched. Fargate compute resources can contain up to 16 subnets. For Fargate compute resources, providing an empty list will be handled as if this parameter wasn't specified and no change is made. For EC2 compute resources, providing an empty list removes the VPC subnets from the compute resource. For more information, see VPCs and subnets in the Amazon VPC User Guide.

When updating a compute environment, changing the VPC subnets requires an infrastructure update of the compute environment. For more information, see Updating compute environments in the Batch User Guide.

Batch on Amazon EC2 and Batch on Amazon EKS support Local Zones. For more information, see Local Zones in the Amazon EC2 User Guide for Linux Instances, Amazon EKS and Amazon Web Services Local Zones in the Amazon EKS User Guide and Amazon ECS clusters in Local Zones, Wavelength Zones, and Amazon Web Services Outposts in the Amazon ECS Developer Guide.

Batch on Fargate doesn't currently support Local Zones.

" + "documentation":"

The VPC subnets where the compute resources are launched. Fargate compute resources can contain up to 16 subnets. For Fargate compute resources, providing an empty list will be handled as if this parameter wasn't specified and no change is made. For Amazon EC2 compute resources, providing an empty list removes the VPC subnets from the compute resource. For more information, see VPCs and subnets in the Amazon VPC User Guide.

When updating a compute environment, changing the VPC subnets requires an infrastructure update of the compute environment. For more information, see Updating compute environments in the Batch User Guide.

Batch on Amazon EC2 and Batch on Amazon EKS support Local Zones. For more information, see Local Zones in the Amazon EC2 User Guide for Linux Instances, Amazon EKS and Amazon Web Services Local Zones in the Amazon EKS User Guide and Amazon ECS clusters in Local Zones, Wavelength Zones, and Amazon Web Services Outposts in the Amazon ECS Developer Guide.

Batch on Fargate doesn't currently support Local Zones.

" }, "securityGroupIds":{ "shape":"StringList", - "documentation":"

The Amazon EC2 security groups that are associated with instances launched in the compute environment. This parameter is required for Fargate compute resources, where it can contain up to 5 security groups. For Fargate compute resources, providing an empty list is handled as if this parameter wasn't specified and no change is made. For EC2 compute resources, providing an empty list removes the security groups from the compute resource.

When updating a compute environment, changing the EC2 security groups requires an infrastructure update of the compute environment. For more information, see Updating compute environments in the Batch User Guide.

" + "documentation":"

The Amazon EC2 security groups that are associated with instances launched in the compute environment. This parameter is required for Fargate compute resources, where it can contain up to 5 security groups. For Fargate compute resources, providing an empty list is handled as if this parameter wasn't specified and no change is made. For Amazon EC2 compute resources, providing an empty list removes the security groups from the compute resource.

When updating a compute environment, changing the Amazon EC2 security groups requires an infrastructure update of the compute environment. For more information, see Updating compute environments in the Batch User Guide.

" }, "allocationStrategy":{ "shape":"CRUpdateAllocationStrategy", @@ -761,7 +761,7 @@ }, "ec2KeyPair":{ "shape":"String", - "documentation":"

The Amazon EC2 key pair that's used for instances launched in the compute environment. You can use this key pair to log in to your instances with SSH. To remove the Amazon EC2 key pair, set this value to an empty string.

When updating a compute environment, changing the EC2 key pair requires an infrastructure update of the compute environment. For more information, see Updating compute environments in the Batch User Guide.

This parameter isn't applicable to jobs that are running on Fargate resources. Don't specify it.

" + "documentation":"

The Amazon EC2 key pair that's used for instances launched in the compute environment. You can use this key pair to log in to your instances with SSH. To remove the Amazon EC2 key pair, set this value to an empty string.

When updating a compute environment, changing the Amazon EC2 key pair requires an infrastructure update of the compute environment. For more information, see Updating compute environments in the Batch User Guide.

This parameter isn't applicable to jobs that are running on Fargate resources. Don't specify it.

" }, "instanceRole":{ "shape":"String", @@ -769,7 +769,7 @@ }, "tags":{ "shape":"TagsMap", - "documentation":"

Key-value pair tags to be applied to EC2 resources that are launched in the compute environment. For Batch, these take the form of \"String1\": \"String2\", where String1 is the tag key and String2 is the tag value-for example, { \"Name\": \"Batch Instance - C4OnDemand\" }. This is helpful for recognizing your Batch instances in the Amazon EC2 console. These tags aren't seen when using the Batch ListTagsForResource API operation.

When updating a compute environment, changing this setting requires an infrastructure update of the compute environment. For more information, see Updating compute environments in the Batch User Guide.

This parameter isn't applicable to jobs that are running on Fargate resources. Don't specify it.

" + "documentation":"

Key-value pair tags to be applied to Amazon EC2 resources that are launched in the compute environment. For Batch, these take the form of \"String1\": \"String2\", where String1 is the tag key and String2 is the tag value-for example, { \"Name\": \"Batch Instance - C4OnDemand\" }. This is helpful for recognizing your Batch instances in the Amazon EC2 console. These tags aren't seen when using the Batch ListTagsForResource API operation.

When updating a compute environment, changing this setting requires an infrastructure update of the compute environment. For more information, see Updating compute environments in the Batch User Guide.

This parameter isn't applicable to jobs that are running on Fargate resources. Don't specify it.

" }, "placementGroup":{ "shape":"String", @@ -785,7 +785,7 @@ }, "ec2Configuration":{ "shape":"Ec2ConfigurationList", - "documentation":"

Provides information used to select Amazon Machine Images (AMIs) for EC2 instances in the compute environment. If Ec2Configuration isn't specified, the default is ECS_AL2.

When updating a compute environment, changing this setting requires an infrastructure update of the compute environment. For more information, see Updating compute environments in the Batch User Guide. To remove the EC2 configuration and any custom AMI ID specified in imageIdOverride, set this value to an empty string.

One or two values can be provided.

This parameter isn't applicable to jobs that are running on Fargate resources. Don't specify it.

" + "documentation":"

Provides information used to select Amazon Machine Images (AMIs) for Amazon EC2 instances in the compute environment. If Ec2Configuration isn't specified, the default is ECS_AL2.

When updating a compute environment, changing this setting requires an infrastructure update of the compute environment. For more information, see Updating compute environments in the Batch User Guide. To remove the Amazon EC2 configuration and any custom AMI ID specified in imageIdOverride, set this value to an empty string.

One or two values can be provided.

This parameter isn't applicable to jobs that are running on Fargate resources. Don't specify it.

" }, "updateToLatestImageVersion":{ "shape":"Boolean", @@ -811,11 +811,11 @@ }, "vcpus":{ "shape":"Integer", - "documentation":"

The number of vCPUs reserved for the container. For jobs that run on EC2 resources, you can specify the vCPU requirement for the job using resourceRequirements, but you can't specify the vCPU requirements in both the vcpus and resourceRequirements object. This parameter maps to CpuShares in the Create a container section of the Docker Remote API and the --cpu-shares option to docker run. Each vCPU is equivalent to 1,024 CPU shares. You must specify at least one vCPU. This is required but can be specified in several places. It must be specified for each node at least once.

This parameter isn't applicable to jobs that run on Fargate resources. For jobs that run on Fargate resources, you must specify the vCPU requirement for the job using resourceRequirements.

" + "documentation":"

The number of vCPUs reserved for the container. For jobs that run on Amazon EC2 resources, you can specify the vCPU requirement for the job using resourceRequirements, but you can't specify the vCPU requirements in both the vcpus and resourceRequirements object. This parameter maps to CpuShares in the Create a container section of the Docker Remote API and the --cpu-shares option to docker run. Each vCPU is equivalent to 1,024 CPU shares. You must specify at least one vCPU. This is required but can be specified in several places. It must be specified for each node at least once.

This parameter isn't applicable to jobs that run on Fargate resources. For jobs that run on Fargate resources, you must specify the vCPU requirement for the job using resourceRequirements.

" }, "memory":{ "shape":"Integer", - "documentation":"

For jobs running on EC2 resources that didn't specify memory requirements using resourceRequirements, the number of MiB of memory reserved for the job. For other jobs, including all run on Fargate resources, see resourceRequirements.

" + "documentation":"

For jobs running on Amazon EC2 resources that didn't specify memory requirements using resourceRequirements, the number of MiB of memory reserved for the job. For other jobs, including all run on Fargate resources, see resourceRequirements.

" }, "command":{ "shape":"StringList", @@ -859,7 +859,7 @@ }, "exitCode":{ "shape":"Integer", - "documentation":"

The exit code to return upon completion.

" + "documentation":"

The exit code returned upon completion.

" }, "reason":{ "shape":"String", @@ -895,7 +895,7 @@ }, "logConfiguration":{ "shape":"LogConfiguration", - "documentation":"

The log configuration specification for the container.

This parameter maps to LogConfig in the Create a container section of the Docker Remote API and the --log-driver option to docker run. By default, containers use the same logging driver that the Docker daemon uses. However, the container might use a different logging driver than the Docker daemon by specifying a log driver with this parameter in the container definition. To use a different logging driver for a container, the log system must be configured properly on the container instance. Or, alternatively, it must be configured on a different log server for remote logging options. For more information on the options for different supported log drivers, see Configure logging drivers in the Docker documentation.

Batch currently supports a subset of the logging drivers available to the Docker daemon (shown in the LogConfiguration data type). Additional log drivers might be available in future releases of the Amazon ECS container agent.

This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: sudo docker version | grep \"Server API version\"

The Amazon ECS container agent running on a container instance must register the logging drivers available on that instance with the ECS_AVAILABLE_LOGGING_DRIVERS environment variable before containers placed on that instance can use these log configuration options. For more information, see Amazon ECS container agent configuration in the Amazon Elastic Container Service Developer Guide.

" + "documentation":"

The log configuration specification for the container.

This parameter maps to LogConfig in the Create a container section of the Docker Remote API and the --log-driver option to docker run. By default, containers use the same logging driver that the Docker daemon uses. However, the container might use a different logging driver than the Docker daemon by specifying a log driver with this parameter in the container definition. To use a different logging driver for a container, the log system must be configured properly on the container instance. Or, alternatively, it must be configured on a different log server for remote logging options. For more information on the options for different supported log drivers, see Configure logging drivers in the Docker documentation.

Batch currently supports a subset of the logging drivers available to the Docker daemon (shown in the LogConfiguration data type). Additional log drivers might be available in future releases of the Amazon ECS container agent.

This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: sudo docker version | grep \"Server API version\"

The Amazon ECS container agent running on a container instance must register the logging drivers available on that instance with the ECS_AVAILABLE_LOGGING_DRIVERS environment variable before containers placed on that instance can use these log configuration options. For more information, see Amazon ECS container agent configuration in the Amazon Elastic Container Service Developer Guide.

" }, "secrets":{ "shape":"SecretList", @@ -903,11 +903,11 @@ }, "networkConfiguration":{ "shape":"NetworkConfiguration", - "documentation":"

The network configuration for jobs that are running on Fargate resources. Jobs that are running on EC2 resources must not specify this parameter.

" + "documentation":"

The network configuration for jobs that are running on Fargate resources. Jobs that are running on Amazon EC2 resources must not specify this parameter.

" }, "fargatePlatformConfiguration":{ "shape":"FargatePlatformConfiguration", - "documentation":"

The platform configuration for jobs that are running on Fargate resources. Jobs that are running on EC2 resources must not specify this parameter.

" + "documentation":"

The platform configuration for jobs that are running on Fargate resources. Jobs that are running on Amazon EC2 resources must not specify this parameter.

" }, "ephemeralStorage":{ "shape":"EphemeralStorage", @@ -929,13 +929,13 @@ "members":{ "vcpus":{ "shape":"Integer", - "documentation":"

This parameter is deprecated, use resourceRequirements to override the vcpus parameter that's set in the job definition. It's not supported for jobs running on Fargate resources. For jobs that run on EC2 resources, it overrides the vcpus parameter set in the job definition, but doesn't override any vCPU requirement specified in the resourceRequirements structure in the job definition. To override vCPU requirements that are specified in the resourceRequirements structure in the job definition, resourceRequirements must be specified in the SubmitJob request, with type set to VCPU and value set to the new value. For more information, see Can't override job definition resource requirements in the Batch User Guide.

", + "documentation":"

This parameter is deprecated, use resourceRequirements to override the vcpus parameter that's set in the job definition. It's not supported for jobs running on Fargate resources. For jobs that run on Amazon EC2 resources, it overrides the vcpus parameter set in the job definition, but doesn't override any vCPU requirement specified in the resourceRequirements structure in the job definition. To override vCPU requirements that are specified in the resourceRequirements structure in the job definition, resourceRequirements must be specified in the SubmitJob request, with type set to VCPU and value set to the new value. For more information, see Can't override job definition resource requirements in the Batch User Guide.

", "deprecated":true, "deprecatedMessage":"This field is deprecated, use resourceRequirements instead." }, "memory":{ "shape":"Integer", - "documentation":"

This parameter is deprecated, use resourceRequirements to override the memory requirements specified in the job definition. It's not supported for jobs running on Fargate resources. For jobs that run on EC2 resources, it overrides the memory parameter set in the job definition, but doesn't override any memory requirement that's specified in the resourceRequirements structure in the job definition. To override memory requirements that are specified in the resourceRequirements structure in the job definition, resourceRequirements must be specified in the SubmitJob request, with type set to MEMORY and value set to the new value. For more information, see Can't override job definition resource requirements in the Batch User Guide.

", + "documentation":"

This parameter is deprecated, use resourceRequirements to override the memory requirements specified in the job definition. It's not supported for jobs running on Fargate resources. For jobs that run on Amazon EC2 resources, it overrides the memory parameter set in the job definition, but doesn't override any memory requirement that's specified in the resourceRequirements structure in the job definition. To override memory requirements that are specified in the resourceRequirements structure in the job definition, resourceRequirements must be specified in the SubmitJob request, with type set to MEMORY and value set to the new value. For more information, see Can't override job definition resource requirements in the Batch User Guide.

", "deprecated":true, "deprecatedMessage":"This field is deprecated, use resourceRequirements instead." }, @@ -967,13 +967,13 @@ }, "vcpus":{ "shape":"Integer", - "documentation":"

This parameter is deprecated, use resourceRequirements to specify the vCPU requirements for the job definition. It's not supported for jobs running on Fargate resources. For jobs running on EC2 resources, it specifies the number of vCPUs reserved for the job.

Each vCPU is equivalent to 1,024 CPU shares. This parameter maps to CpuShares in the Create a container section of the Docker Remote API and the --cpu-shares option to docker run. The number of vCPUs must be specified but can be specified in several places. You must specify it at least once for each node.

", + "documentation":"

This parameter is deprecated, use resourceRequirements to specify the vCPU requirements for the job definition. It's not supported for jobs running on Fargate resources. For jobs running on Amazon EC2 resources, it specifies the number of vCPUs reserved for the job.

Each vCPU is equivalent to 1,024 CPU shares. This parameter maps to CpuShares in the Create a container section of the Docker Remote API and the --cpu-shares option to docker run. The number of vCPUs must be specified but can be specified in several places. You must specify it at least once for each node.

", "deprecated":true, "deprecatedMessage":"This field is deprecated, use resourceRequirements instead." }, "memory":{ "shape":"Integer", - "documentation":"

This parameter is deprecated, use resourceRequirements to specify the memory requirements for the job definition. It's not supported for jobs running on Fargate resources. For jobs that run on EC2 resources, it specifies the memory hard limit (in MiB) for a container. If your container attempts to exceed the specified number, it's terminated. You must specify at least 4 MiB of memory for a job using this parameter. The memory hard limit can be specified in several places. It must be specified for each node at least once.

", + "documentation":"

This parameter is deprecated, use resourceRequirements to specify the memory requirements for the job definition. It's not supported for jobs running on Fargate resources. For jobs that run on Amazon EC2 resources, it specifies the memory hard limit (in MiB) for a container. If your container attempts to exceed the specified number, it's terminated. You must specify at least 4 MiB of memory for a job using this parameter. The memory hard limit can be specified in several places. It must be specified for each node at least once.

", "deprecated":true, "deprecatedMessage":"This field is deprecated, use resourceRequirements instead." }, @@ -1031,7 +1031,7 @@ }, "logConfiguration":{ "shape":"LogConfiguration", - "documentation":"

The log configuration specification for the container.

This parameter maps to LogConfig in the Create a container section of the Docker Remote API and the --log-driver option to docker run. By default, containers use the same logging driver that the Docker daemon uses. However the container might use a different logging driver than the Docker daemon by specifying a log driver with this parameter in the container definition. To use a different logging driver for a container, the log system must be configured properly on the container instance (or on a different log server for remote logging options). For more information on the options for different supported log drivers, see Configure logging drivers in the Docker documentation.

Batch currently supports a subset of the logging drivers available to the Docker daemon (shown in the LogConfiguration data type).

This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: sudo docker version | grep \"Server API version\"

The Amazon ECS container agent running on a container instance must register the logging drivers available on that instance with the ECS_AVAILABLE_LOGGING_DRIVERS environment variable before containers placed on that instance can use these log configuration options. For more information, see Amazon ECS container agent configuration in the Amazon Elastic Container Service Developer Guide.

" + "documentation":"

The log configuration specification for the container.

This parameter maps to LogConfig in the Create a container section of the Docker Remote API and the --log-driver option to docker run. By default, containers use the same logging driver that the Docker daemon uses. However the container might use a different logging driver than the Docker daemon by specifying a log driver with this parameter in the container definition. To use a different logging driver for a container, the log system must be configured properly on the container instance (or on a different log server for remote logging options). For more information on the options for different supported log drivers, see Configure logging drivers in the Docker documentation.

Batch currently supports a subset of the logging drivers available to the Docker daemon (shown in the LogConfiguration data type).

This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: sudo docker version | grep \"Server API version\"

The Amazon ECS container agent running on a container instance must register the logging drivers available on that instance with the ECS_AVAILABLE_LOGGING_DRIVERS environment variable before containers placed on that instance can use these log configuration options. For more information, see Amazon ECS container agent configuration in the Amazon Elastic Container Service Developer Guide.

" }, "secrets":{ "shape":"SecretList", @@ -1039,11 +1039,11 @@ }, "networkConfiguration":{ "shape":"NetworkConfiguration", - "documentation":"

The network configuration for jobs that are running on Fargate resources. Jobs that are running on EC2 resources must not specify this parameter.

" + "documentation":"

The network configuration for jobs that are running on Fargate resources. Jobs that are running on Amazon EC2 resources must not specify this parameter.

" }, "fargatePlatformConfiguration":{ "shape":"FargatePlatformConfiguration", - "documentation":"

The platform configuration for jobs that are running on Fargate resources. Jobs that are running on EC2 resources must not specify this parameter.

" + "documentation":"

The platform configuration for jobs that are running on Fargate resources. Jobs that are running on Amazon EC2 resources must not specify this parameter.

" }, "ephemeralStorage":{ "shape":"EphemeralStorage", @@ -1534,12 +1534,144 @@ "type":"list", "member":{"shape":"Ec2Configuration"} }, + "EcsProperties":{ + "type":"structure", + "required":["taskProperties"], + "members":{ + "taskProperties":{ + "shape":"ListEcsTaskProperties", + "documentation":"

An object that contains the properties for the Amazon ECS task definition of a job.

This object is currently limited to one element.

" + } + }, + "documentation":"

An object that contains the properties for the Amazon ECS resources of a job.

" + }, + "EcsPropertiesDetail":{ + "type":"structure", + "members":{ + "taskProperties":{ + "shape":"ListEcsTaskDetails", + "documentation":"

The properties for the Amazon ECS task definition of a job.

" + } + }, + "documentation":"

An object that contains the details for the Amazon ECS resources of a job.

" + }, + "EcsPropertiesOverride":{ + "type":"structure", + "members":{ + "taskProperties":{ + "shape":"ListTaskPropertiesOverride", + "documentation":"

The overrides for the Amazon ECS task definition of a job.

This object is currently limited to one element.

" + } + }, + "documentation":"

An object that contains overrides for the Amazon ECS task definition of a job.

" + }, + "EcsTaskDetails":{ + "type":"structure", + "members":{ + "containers":{ + "shape":"ListTaskContainerDetails", + "documentation":"

A list of containers that are included in the taskProperties list.

" + }, + "containerInstanceArn":{ + "shape":"String", + "documentation":"

The Amazon Resource Name (ARN) of the container instance that hosts the task.

" + }, + "taskArn":{ + "shape":"String", + "documentation":"

The ARN of the Amazon ECS task.

" + }, + "ephemeralStorage":{ + "shape":"EphemeralStorage", + "documentation":"

The amount of ephemeral storage allocated for the task.

" + }, + "executionRoleArn":{ + "shape":"String", + "documentation":"

The Amazon Resource Name (ARN) of the execution role that Batch can assume. For more information, see Batch execution IAM role in the Batch User Guide.

" + }, + "platformVersion":{ + "shape":"String", + "documentation":"

The Fargate platform version where the jobs are running.

" + }, + "ipcMode":{ + "shape":"String", + "documentation":"

The IPC resource namespace to use for the containers in the task.

" + }, + "taskRoleArn":{ + "shape":"String", + "documentation":"

The Amazon Resource Name (ARN) of the IAM role that the container can assume for Amazon Web Services permissions. For more information, see IAM roles for tasks in the Amazon Elastic Container Service Developer Guide.

This is object is comparable to ContainerProperties:jobRoleArn.

" + }, + "pidMode":{ + "shape":"String", + "documentation":"

The process namespace to use for the containers in the task.

" + }, + "networkConfiguration":{ + "shape":"NetworkConfiguration", + "documentation":"

The network configuration for jobs that are running on Fargate resources. Jobs that are running on Amazon EC2 resources must not specify this parameter.

" + }, + "runtimePlatform":{ + "shape":"RuntimePlatform", + "documentation":"

An object that represents the compute environment architecture for Batch jobs on Fargate.

" + }, + "volumes":{ + "shape":"Volumes", + "documentation":"

A list of data volumes used in a job.

" + } + }, + "documentation":"

The details of a task definition that describes the container and volume definitions of an Amazon ECS task.

" + }, + "EcsTaskProperties":{ + "type":"structure", + "required":["containers"], + "members":{ + "containers":{ + "shape":"ListTaskContainerProperties", + "documentation":"

This object is a list of containers.

" + }, + "ephemeralStorage":{ + "shape":"EphemeralStorage", + "documentation":"

The amount of ephemeral storage to allocate for the task. This parameter is used to expand the total amount of ephemeral storage available, beyond the default amount, for tasks hosted on Fargate.

" + }, + "executionRoleArn":{ + "shape":"String", + "documentation":"

The Amazon Resource Name (ARN) of the execution role that Batch can assume. For jobs that run on Fargate resources, you must provide an execution role. For more information, see Batch execution IAM role in the Batch User Guide.

" + }, + "platformVersion":{ + "shape":"String", + "documentation":"

The Fargate platform version where the jobs are running. A platform version is specified only for jobs that are running on Fargate resources. If one isn't specified, the LATEST platform version is used by default. This uses a recent, approved version of the Fargate platform for compute resources. For more information, see Fargate platform versions in the Amazon Elastic Container Service Developer Guide.

" + }, + "ipcMode":{ + "shape":"String", + "documentation":"

The IPC resource namespace to use for the containers in the task. The valid values are host, task, or none.

If host is specified, all containers within the tasks that specified the host IPC mode on the same container instance share the same IPC resources with the host Amazon EC2 instance.

If task is specified, all containers within the specified task share the same IPC resources.

If none is specified, the IPC resources within the containers of a task are private, and are not shared with other containers in a task or on the container instance.

If no value is specified, then the IPC resource namespace sharing depends on the Docker daemon setting on the container instance. For more information, see IPC settings in the Docker run reference.

" + }, + "taskRoleArn":{ + "shape":"String", + "documentation":"

The Amazon Resource Name (ARN) that's associated with the Amazon ECS task.

This is object is comparable to ContainerProperties:jobRoleArn.

" + }, + "pidMode":{ + "shape":"String", + "documentation":"

The process namespace to use for the containers in the task. The valid values are host or task. For example, monitoring sidecars might need pidMode to access information about other containers running in the same task.

If host is specified, all containers within the tasks that specified the host PID mode on the same container instance share the process namespace with the host Amazon EC2 instance.

If task is specified, all containers within the specified task share the same process namespace.

If no value is specified, the default is a private namespace for each container. For more information, see PID settings in the Docker run reference.

" + }, + "networkConfiguration":{ + "shape":"NetworkConfiguration", + "documentation":"

The network configuration for jobs that are running on Fargate resources. Jobs that are running on Amazon EC2 resources must not specify this parameter.

" + }, + "runtimePlatform":{ + "shape":"RuntimePlatform", + "documentation":"

An object that represents the compute environment architecture for Batch jobs on Fargate.

" + }, + "volumes":{ + "shape":"Volumes", + "documentation":"

A list of volumes that are associated with the job.

" + } + }, + "documentation":"

The properties for a task definition that describes the container and volume definitions of an Amazon ECS task. You can specify which Docker images to use, the required resources, and other configurations related to launching the task definition through an Amazon ECS service or task.

" + }, "EksAttemptContainerDetail":{ "type":"structure", "members":{ "exitCode":{ "shape":"Integer", - "documentation":"

The exit code for the job attempt. A non-zero exit code is considered failed.

" + "documentation":"

The exit code returned for the job attempt. A non-zero exit code is considered failed.

" }, "reason":{ "shape":"String", @@ -1559,6 +1691,10 @@ "shape":"EksAttemptContainerDetails", "documentation":"

The details for the final status of the containers for this job attempt.

" }, + "initContainers":{ + "shape":"EksAttemptContainerDetails", + "documentation":"

The details for the init containers.

" + }, "podName":{ "shape":"String", "documentation":"

The name of the pod for this job attempt.

" @@ -1626,7 +1762,7 @@ }, "args":{ "shape":"StringList", - "documentation":"

An array of arguments to the entrypoint. If this isn't specified, the CMD of the container image is used. This corresponds to the args member in the Entrypoint portion of the Pod in Kubernetes. Environment variable references are expanded using the container's environment.

If the referenced environment variable doesn't exist, the reference in the command isn't changed. For example, if the reference is to \"$(NAME1)\" and the NAME1 environment variable doesn't exist, the command string will remain \"$(NAME1).\" $$ is replaced with $, and the resulting string isn't expanded. For example, $$(VAR_NAME) is passed as $(VAR_NAME) whether or not the VAR_NAME environment variable exists. For more information, see CMD in the Dockerfile reference and Define a command and arguments for a pod in the Kubernetes documentation.

" + "documentation":"

An array of arguments to the entrypoint. If this isn't specified, the CMD of the container image is used. This corresponds to the args member in the Entrypoint portion of the Pod in Kubernetes. Environment variable references are expanded using the container's environment.

If the referenced environment variable doesn't exist, the reference in the command isn't changed. For example, if the reference is to \"$(NAME1)\" and the NAME1 environment variable doesn't exist, the command string will remain \"$(NAME1).\" $$ is replaced with $, and the resulting string isn't expanded. For example, $$(VAR_NAME) is passed as $(VAR_NAME) whether or not the VAR_NAME environment variable exists. For more information, see Dockerfile reference: CMD and Define a command and arguments for a pod in the Kubernetes documentation.

" }, "env":{ "shape":"EksContainerEnvironmentVariables", @@ -1668,7 +1804,7 @@ }, "args":{ "shape":"StringList", - "documentation":"

An array of arguments to the entrypoint. If this isn't specified, the CMD of the container image is used. This corresponds to the args member in the Entrypoint portion of the Pod in Kubernetes. Environment variable references are expanded using the container's environment.

If the referenced environment variable doesn't exist, the reference in the command isn't changed. For example, if the reference is to \"$(NAME1)\" and the NAME1 environment variable doesn't exist, the command string will remain \"$(NAME1)\". $$ is replaced with $ and the resulting string isn't expanded. For example, $$(VAR_NAME) is passed as $(VAR_NAME) whether or not the VAR_NAME environment variable exists. For more information, see CMD in the Dockerfile reference and Define a command and arguments for a pod in the Kubernetes documentation.

" + "documentation":"

An array of arguments to the entrypoint. If this isn't specified, the CMD of the container image is used. This corresponds to the args member in the Entrypoint portion of the Pod in Kubernetes. Environment variable references are expanded using the container's environment.

If the referenced environment variable doesn't exist, the reference in the command isn't changed. For example, if the reference is to \"$(NAME1)\" and the NAME1 environment variable doesn't exist, the command string will remain \"$(NAME1)\". $$ is replaced with $ and the resulting string isn't expanded. For example, $$(VAR_NAME) is passed as $(VAR_NAME) whether or not the VAR_NAME environment variable exists. For more information, see Dockerfile reference: CMD and Define a command and arguments for a pod in the Kubernetes documentation.

" }, "env":{ "shape":"EksContainerEnvironmentVariables", @@ -1680,7 +1816,7 @@ }, "exitCode":{ "shape":"Integer", - "documentation":"

The exit code for the job attempt. A non-zero exit code is considered failed.

" + "documentation":"

The exit code returned for the job attempt. A non-zero exit code is considered failed.

" }, "reason":{ "shape":"String", @@ -1723,6 +1859,10 @@ "EksContainerOverride":{ "type":"structure", "members":{ + "name":{ + "shape":"String", + "documentation":"

A pointer to the container that you want to override. The name must match a unique container name that you wish to override.

" + }, "image":{ "shape":"String", "documentation":"

The override of the Docker image that's used to start the container.

" @@ -1733,7 +1873,7 @@ }, "args":{ "shape":"StringList", - "documentation":"

The arguments to the entrypoint to send to the container that overrides the default arguments from the Docker image or the job definition. For more information, see CMD in the Dockerfile reference and Define a command an arguments for a pod in the Kubernetes documentation.

" + "documentation":"

The arguments to the entrypoint to send to the container that overrides the default arguments from the Docker image or the job definition. For more information, see Dockerfile reference: CMD and Define a command an arguments for a pod in the Kubernetes documentation.

" }, "env":{ "shape":"EksContainerEnvironmentVariables", @@ -1744,7 +1884,7 @@ "documentation":"

The type and amount of resources to assign to a container. These override the settings in the job definition. The supported resources include memory, cpu, and nvidia.com/gpu. For more information, see Resource management for pods and containers in the Kubernetes documentation.

" } }, - "documentation":"

Object representing any Kubernetes overrides to a job definition that's used in a SubmitJob API operation.

" + "documentation":"

Object representing any Kubernetes overrides to a job definition that's used in a SubmitJob API operation.

" }, "EksContainerOverrideList":{ "type":"list", @@ -1879,6 +2019,10 @@ "shape":"EksContainers", "documentation":"

The properties of the container that's used on the Amazon EKS pod.

" }, + "initContainers":{ + "shape":"EksContainers", + "documentation":"

These containers run before application containers, always runs to completion, and must complete successfully before the next container starts. These containers are registered with the Amazon EKS Connector agent and persists the registration information in the Kubernetes backend data store. For more information, see Init Containers in the Kubernetes documentation.

This object is limited to 10 elements

" + }, "volumes":{ "shape":"EksVolumes", "documentation":"

Specifies the volumes for a job definition that uses Amazon EKS resources.

" @@ -1886,6 +2030,10 @@ "metadata":{ "shape":"EksMetadata", "documentation":"

Metadata about the Kubernetes pod. For more information, see Understanding Kubernetes Objects in the Kubernetes documentation.

" + }, + "shareProcessNamespace":{ + "shape":"Boolean", + "documentation":"

Indicates if the processes in a container are shared, or visible, to other containers in the same pod. For more information, see Share Process Namespace between Containers in a Pod.

" } }, "documentation":"

The properties for the pod.

" @@ -1909,6 +2057,10 @@ "shape":"EksContainerDetails", "documentation":"

The properties of the container that's used on the Amazon EKS pod.

" }, + "initContainers":{ + "shape":"EksContainerDetails", + "documentation":"

The container registered with the Amazon EKS Connector agent and persists the registration information in the Kubernetes backend data store.

" + }, "volumes":{ "shape":"EksVolumes", "documentation":"

Specifies the volumes for a job definition using Amazon EKS resources.

" @@ -1924,6 +2076,10 @@ "metadata":{ "shape":"EksMetadata", "documentation":"

Describes and uniquely identifies Kubernetes resources. For example, the compute environment that a pod runs in or the jobID for a job running in the pod. For more information, see Understanding Kubernetes Objects in the Kubernetes documentation.

" + }, + "shareProcessNamespace":{ + "shape":"Boolean", + "documentation":"

Indicates if the processes in a container are shared, or visible, to other containers in the same pod. For more information, see Share Process Namespace between Containers in a Pod.

" } }, "documentation":"

The details for the pod.

" @@ -1935,6 +2091,10 @@ "shape":"EksContainerOverrideList", "documentation":"

The overrides for the container that's used on the Amazon EKS pod.

" }, + "initContainers":{ + "shape":"EksContainerOverrideList", + "documentation":"

The overrides for the conatainers defined in the Amazon EKS pod. These containers run before application containers, always runs to completion, and must complete successfully before the next container starts. These containers are registered with the Amazon EKS Connector agent and persists the registration information in the Kubernetes backend data store. For more information, see Init Containers in the Kubernetes documentation.

This object is limited to 10 elements

" + }, "metadata":{ "shape":"EksMetadata", "documentation":"

Metadata about the overrides for the container that's used on the Amazon EKS pod.

" @@ -2087,7 +2247,7 @@ "documentation":"

The Fargate platform version where the jobs are running. A platform version is specified only for jobs that are running on Fargate resources. If one isn't specified, the LATEST platform version is used by default. This uses a recent, approved version of the Fargate platform for compute resources. For more information, see Fargate platform versions in the Amazon Elastic Container Service Developer Guide.

" } }, - "documentation":"

The platform configuration for jobs that are running on Fargate resources. Jobs that run on EC2 resources must not specify this parameter.

" + "documentation":"

The platform configuration for jobs that are running on Fargate resources. Jobs that run on Amazon EC2 resources must not specify this parameter.

" }, "Float":{"type":"float"}, "Host":{ @@ -2172,7 +2332,7 @@ }, "containerProperties":{ "shape":"ContainerProperties", - "documentation":"

An object with various properties specific to Amazon ECS based jobs. Valid values are containerProperties, eksProperties, and nodeProperties. Only one can be specified.

" + "documentation":"

An object with properties specific to Amazon ECS-based jobs. When containerProperties is used in the job definition, it can't be used in addition to eksProperties, ecsProperties, or nodeProperties.

" }, "timeout":{ "shape":"JobTimeout", @@ -2180,7 +2340,7 @@ }, "nodeProperties":{ "shape":"NodeProperties", - "documentation":"

An object with various properties that are specific to multi-node parallel jobs. Valid values are containerProperties, eksProperties, and nodeProperties. Only one can be specified.

If the job runs on Fargate resources, don't specify nodeProperties. Use containerProperties instead.

" + "documentation":"

An object with properties that are specific to multi-node parallel jobs. When nodeProperties is used in the job definition, it can't be used in addition to containerProperties, ecsProperties, or eksProperties.

If the job runs on Fargate resources, don't specify nodeProperties. Use containerProperties instead.

" }, "tags":{ "shape":"TagrisTagsMap", @@ -2194,9 +2354,13 @@ "shape":"PlatformCapabilityList", "documentation":"

The platform capabilities required by the job definition. If no value is specified, it defaults to EC2. Jobs run on Fargate resources specify FARGATE.

" }, + "ecsProperties":{ + "shape":"EcsProperties", + "documentation":"

An object that contains the properties for the Amazon ECS resources of a job.When ecsProperties is used in the job definition, it can't be used in addition to containerProperties, eksProperties, or nodeProperties.

" + }, "eksProperties":{ "shape":"EksProperties", - "documentation":"

An object with various properties that are specific to Amazon EKS based jobs. Valid values are containerProperties, eksProperties, and nodeProperties. Only one can be specified.

" + "documentation":"

An object with properties that are specific to Amazon EKS-based jobs. When eksProperties is used in the job definition, it can't be used in addition to containerProperties, ecsProperties, or nodeProperties.

" }, "containerOrchestrationType":{ "shape":"OrchestrationType", @@ -2283,7 +2447,7 @@ }, "createdAt":{ "shape":"Long", - "documentation":"

The Unix timestamp (in milliseconds) for when the job was created. For non-array jobs and parent array jobs, this is when the job entered the SUBMITTED state. This is specifically at the time SubmitJob was called. For array child jobs, this is when the child job was spawned by its parent and entered the PENDING state.

" + "documentation":"

The Unix timestamp (in milliseconds) for when the job was created. For non-array jobs and parent array jobs, this is when the job entered the SUBMITTED state. This is specifically at the time SubmitJob was called. For array child jobs, this is when the child job was spawned by its parent and entered the PENDING state.

" }, "retryStrategy":{ "shape":"RetryStrategy", @@ -2311,7 +2475,7 @@ }, "container":{ "shape":"ContainerDetail", - "documentation":"

An object that represents the details for the container that's associated with the job.

" + "documentation":"

An object that represents the details for the container that's associated with the job. If the details are for a multiple-container job, this object will be empty.

" }, "nodeDetails":{ "shape":"NodeDetails", @@ -2343,12 +2507,16 @@ }, "eksProperties":{ "shape":"EksPropertiesDetail", - "documentation":"

An object with various properties that are specific to Amazon EKS based jobs. Only one of container, eksProperties, or nodeDetails is specified.

" + "documentation":"

An object with various properties that are specific to Amazon EKS based jobs.

" }, "eksAttempts":{ "shape":"EksAttemptDetails", "documentation":"

A list of job attempts that are associated with this job.

" }, + "ecsProperties":{ + "shape":"EcsPropertiesDetail", + "documentation":"

An object with properties that are specific to Amazon ECS-based jobs.

" + }, "isCancelled":{ "shape":"Boolean", "documentation":"

Indicates whether the job is canceled.

" @@ -2405,7 +2573,7 @@ }, "priority":{ "shape":"Integer", - "documentation":"

The priority of the job queue. Job queues with a higher priority (or a higher integer value for the priority parameter) are evaluated first when associated with the same compute environment. Priority is determined in descending order. For example, a job queue with a priority value of 10 is given scheduling preference over a job queue with a priority value of 1. All of the compute environments must be either EC2 (EC2 or SPOT) or Fargate (FARGATE or FARGATE_SPOT). EC2 and Fargate compute environments can't be mixed.

" + "documentation":"

The priority of the job queue. Job queues with a higher priority (or a higher integer value for the priority parameter) are evaluated first when associated with the same compute environment. Priority is determined in descending order. For example, a job queue with a priority value of 10 is given scheduling preference over a job queue with a priority value of 1. All of the compute environments must be either Amazon EC2 (EC2 or SPOT) or Fargate (FARGATE or FARGATE_SPOT). Amazon EC2 and Fargate compute environments can't be mixed.

" }, "computeEnvironmentOrder":{ "shape":"ComputeEnvironmentOrders", @@ -2455,7 +2623,7 @@ }, "createdAt":{ "shape":"Long", - "documentation":"

The Unix timestamp (in milliseconds) for when the job was created. For non-array jobs and parent array jobs, this is when the job entered the SUBMITTED state (at the time SubmitJob was called). For array child jobs, this is when the child job was spawned by its parent and entered the PENDING state.

" + "documentation":"

The Unix timestamp (in milliseconds) for when the job was created. For non-array jobs and parent array jobs, this is when the job entered the SUBMITTED state (at the time SubmitJob was called). For array child jobs, this is when the child job was spawned by its parent and entered the PENDING state.

" }, "status":{ "shape":"JobStatus", @@ -2587,6 +2755,14 @@ }, "documentation":"

Linux-specific modifications that are applied to the container, such as details for device mappings.

" }, + "ListEcsTaskDetails":{ + "type":"list", + "member":{"shape":"EcsTaskDetails"} + }, + "ListEcsTaskProperties":{ + "type":"list", + "member":{"shape":"EcsTaskProperties"} + }, "ListJobsFilterList":{ "type":"list", "member":{"shape":"KeyValuesPair"} @@ -2688,6 +2864,22 @@ } } }, + "ListTaskContainerDetails":{ + "type":"list", + "member":{"shape":"TaskContainerDetails"} + }, + "ListTaskContainerOverrides":{ + "type":"list", + "member":{"shape":"TaskContainerOverrides"} + }, + "ListTaskContainerProperties":{ + "type":"list", + "member":{"shape":"TaskContainerProperties"} + }, + "ListTaskPropertiesOverride":{ + "type":"list", + "member":{"shape":"TaskPropertiesOverride"} + }, "LogConfiguration":{ "type":"structure", "required":["logDriver"], @@ -2755,7 +2947,7 @@ "documentation":"

Indicates whether the job has a public IP address. For a job that's running on Fargate resources in a private subnet to send outbound traffic to the internet (for example, to pull container images), the private subnet requires a NAT gateway be attached to route requests to the internet. For more information, see Amazon ECS task networking in the Amazon Elastic Container Service Developer Guide. The default value is \"DISABLED\".

" } }, - "documentation":"

The network configuration for jobs that are running on Fargate resources. Jobs that are running on EC2 resources must not specify this parameter.

" + "documentation":"

The network configuration for jobs that are running on Fargate resources. Jobs that are running on Amazon EC2 resources must not specify this parameter.

" }, "NetworkInterface":{ "type":"structure", @@ -2805,7 +2997,7 @@ "documentation":"

The node property overrides for the job.

" } }, - "documentation":"

An object that represents any node overrides to a job definition that's used in a SubmitJob API operation.

This parameter isn't applicable to jobs that are running on Fargate resources. Don't provide it for these jobs. Rather, use containerOverrides instead.

" + "documentation":"

An object that represents any node overrides to a job definition that's used in a SubmitJob API operation.

This parameter isn't applicable to jobs that are running on Fargate resources. Don't provide it for these jobs. Rather, use containerOverrides instead.

" }, "NodeProperties":{ "type":"structure", @@ -2859,9 +3051,17 @@ "containerOverrides":{ "shape":"ContainerOverrides", "documentation":"

The overrides that are sent to a node range.

" + }, + "ecsPropertiesOverride":{ + "shape":"EcsPropertiesOverride", + "documentation":"

An object that contains the properties that you want to replace for the existing Amazon ECS resources of a job.

" + }, + "instanceTypes":{ + "shape":"StringList", + "documentation":"

An object that contains the instance types that you want to replace for the existing resources of a job.

" } }, - "documentation":"

The object that represents any node overrides to a job definition that's used in a SubmitJob API operation.

" + "documentation":"

The object that represents any node overrides to a job definition that's used in a SubmitJob API operation.

" }, "NodePropertyOverrides":{ "type":"list", @@ -2882,9 +3082,17 @@ "container":{ "shape":"ContainerProperties", "documentation":"

The container details for the node range.

" + }, + "instanceTypes":{ + "shape":"StringList", + "documentation":"

The instance types of the underlying host infrastructure of a multi-node parallel job.

This parameter isn't applicable to jobs that are running on Fargate resources.

In addition, this list object is currently limited to one element.

" + }, + "ecsProperties":{ + "shape":"EcsProperties", + "documentation":"

This is an object that represents the properties of the node range for a multi-node parallel job.

" } }, - "documentation":"

An object that represents the properties of the node range for a multi-node parallel job.

" + "documentation":"

This is an object that represents the properties of the node range for a multi-node parallel job.

" }, "OrchestrationType":{ "type":"string", @@ -2927,7 +3135,7 @@ }, "type":{ "shape":"JobDefinitionType", - "documentation":"

The type of job definition. For more information about multi-node parallel jobs, see Creating a multi-node parallel job definition in the Batch User Guide.

If the job is run on Fargate resources, then multinode isn't supported.

" + "documentation":"

The type of job definition. For more information about multi-node parallel jobs, see Creating a multi-node parallel job definition in the Batch User Guide.

  • If the value is container, then one of the following is required: containerProperties, ecsProperties, or eksProperties.

  • If the value is multinode, then nodeProperties is required.

If the job is run on Fargate resources, then multinode isn't supported.

" }, "parameters":{ "shape":"ParametersMap", @@ -2939,11 +3147,11 @@ }, "containerProperties":{ "shape":"ContainerProperties", - "documentation":"

An object with various properties specific to Amazon ECS based single-node container-based jobs. If the job definition's type parameter is container, then you must specify either containerProperties or nodeProperties. This must not be specified for Amazon EKS based job definitions.

If the job runs on Fargate resources, then you must not specify nodeProperties; use only containerProperties.

" + "documentation":"

An object with properties specific to Amazon ECS-based single-node container-based jobs. If the job definition's type parameter is container, then you must specify either containerProperties or nodeProperties. This must not be specified for Amazon EKS-based job definitions.

If the job runs on Fargate resources, then you must not specify nodeProperties; use only containerProperties.

" }, "nodeProperties":{ "shape":"NodeProperties", - "documentation":"

An object with various properties specific to multi-node parallel jobs. If you specify node properties for a job, it becomes a multi-node parallel job. For more information, see Multi-node Parallel Jobs in the Batch User Guide. If the job definition's type parameter is container, then you must specify either containerProperties or nodeProperties.

If the job runs on Fargate resources, then you must not specify nodeProperties; use containerProperties instead.

If the job runs on Amazon EKS resources, then you must not specify nodeProperties.

" + "documentation":"

An object with properties specific to multi-node parallel jobs. If you specify node properties for a job, it becomes a multi-node parallel job. For more information, see Multi-node Parallel Jobs in the Batch User Guide.

If the job runs on Fargate resources, then you must not specify nodeProperties; use containerProperties instead.

If the job runs on Amazon EKS resources, then you must not specify nodeProperties.

" }, "retryStrategy":{ "shape":"RetryStrategy", @@ -2967,7 +3175,11 @@ }, "eksProperties":{ "shape":"EksProperties", - "documentation":"

An object with various properties that are specific to Amazon EKS based jobs. This must not be specified for Amazon ECS based job definitions.

" + "documentation":"

An object with properties that are specific to Amazon EKS-based jobs. This must not be specified for Amazon ECS based job definitions.

" + }, + "ecsProperties":{ + "shape":"EcsProperties", + "documentation":"

An object with properties that are specific to Amazon ECS-based jobs. This must not be specified for Amazon EKS-based job definitions.

" } }, "documentation":"

Contains the parameters for RegisterJobDefinition.

" @@ -3014,7 +3226,7 @@ "members":{ "value":{ "shape":"String", - "documentation":"

The quantity of the specified resource to reserve for the container. The values vary based on the type specified.

type=\"GPU\"

The number of physical GPUs to reserve for the container. Make sure that the number of GPUs reserved for all containers in a job doesn't exceed the number of available GPUs on the compute resource that the job is launched on.

GPUs aren't available for jobs that are running on Fargate resources.

type=\"MEMORY\"

The memory hard limit (in MiB) present to the container. This parameter is supported for jobs that are running on EC2 resources. If your container attempts to exceed the memory specified, the container is terminated. This parameter maps to Memory in the Create a container section of the Docker Remote API and the --memory option to docker run. You must specify at least 4 MiB of memory for a job. This is required but can be specified in several places for multi-node parallel (MNP) jobs. It must be specified for each node at least once. This parameter maps to Memory in the Create a container section of the Docker Remote API and the --memory option to docker run.

If you're trying to maximize your resource utilization by providing your jobs as much memory as possible for a particular instance type, see Memory management in the Batch User Guide.

For jobs that are running on Fargate resources, then value is the hard limit (in MiB), and must match one of the supported values and the VCPU values must be one of the values supported for that memory value.

value = 512

VCPU = 0.25

value = 1024

VCPU = 0.25 or 0.5

value = 2048

VCPU = 0.25, 0.5, or 1

value = 3072

VCPU = 0.5, or 1

value = 4096

VCPU = 0.5, 1, or 2

value = 5120, 6144, or 7168

VCPU = 1 or 2

value = 8192

VCPU = 1, 2, or 4

value = 9216, 10240, 11264, 12288, 13312, 14336, or 15360

VCPU = 2 or 4

value = 16384

VCPU = 2, 4, or 8

value = 17408, 18432, 19456, 21504, 22528, 23552, 25600, 26624, 27648, 29696, or 30720

VCPU = 4

value = 20480, 24576, or 28672

VCPU = 4 or 8

value = 36864, 45056, 53248, or 61440

VCPU = 8

value = 32768, 40960, 49152, or 57344

VCPU = 8 or 16

value = 65536, 73728, 81920, 90112, 98304, 106496, 114688, or 122880

VCPU = 16

type=\"VCPU\"

The number of vCPUs reserved for the container. This parameter maps to CpuShares in the Create a container section of the Docker Remote API and the --cpu-shares option to docker run. Each vCPU is equivalent to 1,024 CPU shares. For EC2 resources, you must specify at least one vCPU. This is required but can be specified in several places; it must be specified for each node at least once.

The default for the Fargate On-Demand vCPU resource count quota is 6 vCPUs. For more information about Fargate quotas, see Fargate quotas in the Amazon Web Services General Reference.

For jobs that are running on Fargate resources, then value must match one of the supported values and the MEMORY values must be one of the values supported for that VCPU value. The supported values are 0.25, 0.5, 1, 2, 4, 8, and 16

value = 0.25

MEMORY = 512, 1024, or 2048

value = 0.5

MEMORY = 1024, 2048, 3072, or 4096

value = 1

MEMORY = 2048, 3072, 4096, 5120, 6144, 7168, or 8192

value = 2

MEMORY = 4096, 5120, 6144, 7168, 8192, 9216, 10240, 11264, 12288, 13312, 14336, 15360, or 16384

value = 4

MEMORY = 8192, 9216, 10240, 11264, 12288, 13312, 14336, 15360, 16384, 17408, 18432, 19456, 20480, 21504, 22528, 23552, 24576, 25600, 26624, 27648, 28672, 29696, or 30720

value = 8

MEMORY = 16384, 20480, 24576, 28672, 32768, 36864, 40960, 45056, 49152, 53248, 57344, or 61440

value = 16

MEMORY = 32768, 40960, 49152, 57344, 65536, 73728, 81920, 90112, 98304, 106496, 114688, or 122880

" + "documentation":"

The quantity of the specified resource to reserve for the container. The values vary based on the type specified.

type=\"GPU\"

The number of physical GPUs to reserve for the container. Make sure that the number of GPUs reserved for all containers in a job doesn't exceed the number of available GPUs on the compute resource that the job is launched on.

GPUs aren't available for jobs that are running on Fargate resources.

type=\"MEMORY\"

The memory hard limit (in MiB) present to the container. This parameter is supported for jobs that are running on Amazon EC2 resources. If your container attempts to exceed the memory specified, the container is terminated. This parameter maps to Memory in the Create a container section of the Docker Remote API and the --memory option to docker run. You must specify at least 4 MiB of memory for a job. This is required but can be specified in several places for multi-node parallel (MNP) jobs. It must be specified for each node at least once. This parameter maps to Memory in the Create a container section of the Docker Remote API and the --memory option to docker run.

If you're trying to maximize your resource utilization by providing your jobs as much memory as possible for a particular instance type, see Memory management in the Batch User Guide.

For jobs that are running on Fargate resources, then value is the hard limit (in MiB), and must match one of the supported values and the VCPU values must be one of the values supported for that memory value.

value = 512

VCPU = 0.25

value = 1024

VCPU = 0.25 or 0.5

value = 2048

VCPU = 0.25, 0.5, or 1

value = 3072

VCPU = 0.5, or 1

value = 4096

VCPU = 0.5, 1, or 2

value = 5120, 6144, or 7168

VCPU = 1 or 2

value = 8192

VCPU = 1, 2, or 4

value = 9216, 10240, 11264, 12288, 13312, 14336, or 15360

VCPU = 2 or 4

value = 16384

VCPU = 2, 4, or 8

value = 17408, 18432, 19456, 21504, 22528, 23552, 25600, 26624, 27648, 29696, or 30720

VCPU = 4

value = 20480, 24576, or 28672

VCPU = 4 or 8

value = 36864, 45056, 53248, or 61440

VCPU = 8

value = 32768, 40960, 49152, or 57344

VCPU = 8 or 16

value = 65536, 73728, 81920, 90112, 98304, 106496, 114688, or 122880

VCPU = 16

type=\"VCPU\"

The number of vCPUs reserved for the container. This parameter maps to CpuShares in the Create a container section of the Docker Remote API and the --cpu-shares option to docker run. Each vCPU is equivalent to 1,024 CPU shares. For Amazon EC2 resources, you must specify at least one vCPU. This is required but can be specified in several places; it must be specified for each node at least once.

The default for the Fargate On-Demand vCPU resource count quota is 6 vCPUs. For more information about Fargate quotas, see Fargate quotas in the Amazon Web Services General Reference.

For jobs that are running on Fargate resources, then value must match one of the supported values and the MEMORY values must be one of the values supported for that VCPU value. The supported values are 0.25, 0.5, 1, 2, 4, 8, and 16

value = 0.25

MEMORY = 512, 1024, or 2048

value = 0.5

MEMORY = 1024, 2048, 3072, or 4096

value = 1

MEMORY = 2048, 3072, 4096, 5120, 6144, 7168, or 8192

value = 2

MEMORY = 4096, 5120, 6144, 7168, 8192, 9216, 10240, 11264, 12288, 13312, 14336, 15360, or 16384

value = 4

MEMORY = 8192, 9216, 10240, 11264, 12288, 13312, 14336, 15360, 16384, 17408, 18432, 19456, 20480, 21504, 22528, 23552, 24576, 25600, 26624, 27648, 28672, 29696, or 30720

value = 8

MEMORY = 16384, 20480, 24576, 28672, 32768, 36864, 40960, 45056, 49152, 53248, 57344, or 61440

value = 16

MEMORY = 32768, 40960, 49152, 57344, 65536, 73728, 81920, 90112, 98304, 106496, 114688, or 122880

" }, "type":{ "shape":"ResourceType", @@ -3213,7 +3425,7 @@ }, "containerOverrides":{ "shape":"ContainerOverrides", - "documentation":"

An object with various properties that override the defaults for the job definition that specify the name of a container in the specified job definition and the overrides it should receive. You can override the default command for a container, which is specified in the job definition or the Docker image, with a command override. You can also override existing environment variables on a container or add new environment variables to it with an environment override.

" + "documentation":"

An object with properties that override the defaults for the job definition that specify the name of a container in the specified job definition and the overrides it should receive. You can override the default command for a container, which is specified in the job definition or the Docker image, with a command override. You can also override existing environment variables on a container or add new environment variables to it with an environment override.

" }, "nodeOverrides":{ "shape":"NodeOverrides", @@ -3237,7 +3449,11 @@ }, "eksPropertiesOverride":{ "shape":"EksPropertiesOverride", - "documentation":"

An object that can only be specified for jobs that are run on Amazon EKS resources with various properties that override defaults for the job definition.

" + "documentation":"

An object, with properties that override defaults for the job definition, can only be specified for jobs that are run on Amazon EKS resources.

" + }, + "ecsPropertiesOverride":{ + "shape":"EcsPropertiesOverride", + "documentation":"

An object, with properties that override defaults for the job definition, can only be specified for jobs that are run on Amazon ECS resources.

" } }, "documentation":"

Contains the parameters for SubmitJob.

" @@ -3315,6 +3531,213 @@ "key":{"shape":"String"}, "value":{"shape":"String"} }, + "TaskContainerDependency":{ + "type":"structure", + "members":{ + "containerName":{ + "shape":"String", + "documentation":"

A unique identifier for the container.

" + }, + "condition":{ + "shape":"String", + "documentation":"

The dependency condition of the container. The following are the available conditions and their behavior:

  • START - This condition emulates the behavior of links and volumes today. It validates that a dependent container is started before permitting other containers to start.

  • COMPLETE - This condition validates that a dependent container runs to completion (exits) before permitting other containers to start. This can be useful for nonessential containers that run a script and then exit. This condition can't be set on an essential container.

  • SUCCESS - This condition is the same as COMPLETE, but it also requires that the container exits with a zero status. This condition can't be set on an essential container.

" + } + }, + "documentation":"

A list of containers that this task depends on.

" + }, + "TaskContainerDependencyList":{ + "type":"list", + "member":{"shape":"TaskContainerDependency"} + }, + "TaskContainerDetails":{ + "type":"structure", + "members":{ + "command":{ + "shape":"StringList", + "documentation":"

The command that's passed to the container. This parameter maps to Cmd in the Create a container section of the Docker Remote API and the COMMAND parameter to docker run. For more information, see https://docs.docker.com/engine/reference/builder/#cmd.

" + }, + "dependsOn":{ + "shape":"TaskContainerDependencyList", + "documentation":"

A list of containers that this container depends on.

" + }, + "environment":{ + "shape":"EnvironmentVariables", + "documentation":"

The environment variables to pass to a container. This parameter maps to Env in the Create a container section of the Docker Remote API and the --env option to docker run.

We don't recommend using plaintext environment variables for sensitive information, such as credential data.

" + }, + "essential":{ + "shape":"Boolean", + "documentation":"

If the essential parameter of a container is marked as true, and that container fails or stops for any reason, all other containers that are part of the task are stopped. If the essential parameter of a container is marked as false, its failure doesn't affect the rest of the containers in a task. If this parameter is omitted, a container is assumed to be essential.

All tasks must have at least one essential container. If you have an application that's composed of multiple containers, group containers that are used for a common purpose into components, and separate the different components into multiple task definitions. For more information, see Application Architecture in the Amazon Elastic Container Service Developer Guide.

" + }, + "image":{ + "shape":"String", + "documentation":"

The image used to start a container. This string is passed directly to the Docker daemon. By default, images in the Docker Hub registry are available. Other repositories are specified with either repository-url/image:tag or repository-url/image@digest. Up to 255 letters (uppercase and lowercase), numbers, hyphens, underscores, colons, periods, forward slashes, and number signs are allowed. This parameter maps to Image in the Create a container section of the Docker Remote API and the IMAGE parameter of the docker run .

" + }, + "linuxParameters":{ + "shape":"LinuxParameters", + "documentation":"

Linux-specific modifications that are applied to the container, such as Linux kernel capabilities. For more information, see KernelCapabilities.

This parameter is not supported for Windows containers.

" + }, + "logConfiguration":{ + "shape":"LogConfiguration", + "documentation":"

The log configuration specification for the container.

This parameter maps to LogConfig in the Create a container section of the Docker Remote API and the --log-driver option to docker run.

By default, containers use the same logging driver that the Docker daemon uses. However the container can use a different logging driver than the Docker daemon by specifying a log driver with this parameter in the container definition. To use a different logging driver for a container, the log system must be configured properly on the container instance (or on a different log server for remote logging options). For more information about the options for different supported log drivers, see Configure logging drivers in the Docker documentation.

Amazon ECS currently supports a subset of the logging drivers available to the Docker daemon (shown in the LogConfiguration data type). Additional log drivers may be available in future releases of the Amazon ECS container agent.

This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: sudo docker version --format '{{.Server.APIVersion}}'

The Amazon ECS container agent running on a container instance must register the logging drivers available on that instance with the ECS_AVAILABLE_LOGGING_DRIVERS environment variable before containers placed on that instance can use these log configuration options. For more information, see Amazon ECS container agent configuration in the Amazon Elastic Container Service Developer Guide.

" + }, + "mountPoints":{ + "shape":"MountPoints", + "documentation":"

The mount points for data volumes in your container.

This parameter maps to Volumes in the Create a container section of the Docker Remote API and the --volume option to docker run.

Windows containers can mount whole directories on the same drive as $env:ProgramData. Windows containers can't mount directories on a different drive, and mount point can't be across drives.

" + }, + "name":{ + "shape":"String", + "documentation":"

The name of a container.

" + }, + "privileged":{ + "shape":"Boolean", + "documentation":"

When this parameter is true, the container is given elevated privileges on the host container instance (similar to the root user). This parameter maps to Privileged in the Create a container section of the Docker Remote API and the --privileged option to docker run.

This parameter is not supported for Windows containers or tasks run on Fargate.

" + }, + "readonlyRootFilesystem":{ + "shape":"Boolean", + "documentation":"

When this parameter is true, the container is given read-only access to its root file system. This parameter maps to ReadonlyRootfs in the Create a container section of the Docker Remote API and the --read-only option to docker run.

This parameter is not supported for Windows containers.

" + }, + "repositoryCredentials":{ + "shape":"RepositoryCredentials", + "documentation":"

The private repository authentication credentials to use.

" + }, + "resourceRequirements":{ + "shape":"ResourceRequirements", + "documentation":"

The type and amount of a resource to assign to a container. The only supported resource is a GPU.

" + }, + "secrets":{ + "shape":"SecretList", + "documentation":"

The secrets to pass to the container. For more information, see Specifying Sensitive Data in the Amazon Elastic Container Service Developer Guide.

" + }, + "ulimits":{ + "shape":"Ulimits", + "documentation":"

A list of ulimits to set in the container. If a ulimit value is specified in a task definition, it overrides the default values set by Docker. This parameter maps to Ulimits in the Create a container section of the Docker Remote API and the --ulimit option to docker run.

Amazon ECS tasks hosted on Fargate use the default resource limit values set by the operating system with the exception of the nofile resource limit parameter which Fargate overrides. The nofile resource limit sets a restriction on the number of open files that a container can use. The default nofile soft limit is 1024 and the default hard limit is 65535.

This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: sudo docker version --format '{{.Server.APIVersion}}'

This parameter is not supported for Windows containers.

" + }, + "user":{ + "shape":"String", + "documentation":"

The user to use inside the container. This parameter maps to User in the Create a container section of the Docker Remote API and the --user option to docker run.

When running tasks using the host network mode, don't run containers using the root user (UID 0). We recommend using a non-root user for better security.

You can specify the user using the following formats. If specifying a UID or GID, you must specify it as a positive integer.

  • user

  • user:group

  • uid

  • uid:gid

  • user:gi

  • uid:group

This parameter is not supported for Windows containers.

" + }, + "exitCode":{ + "shape":"Integer", + "documentation":"

The exit code returned upon completion.

" + }, + "reason":{ + "shape":"String", + "documentation":"

A short (255 max characters) human-readable string to provide additional details for a running or stopped container.

" + }, + "logStreamName":{ + "shape":"String", + "documentation":"

The name of the CloudWatch Logs log stream that's associated with the container. The log group for Batch jobs is /aws/batch/job. Each container attempt receives a log stream name when they reach the RUNNING status.

" + }, + "networkInterfaces":{ + "shape":"NetworkInterfaceList", + "documentation":"

The network interfaces that are associated with the job.

" + } + }, + "documentation":"

The details for the container in this task attempt.

" + }, + "TaskContainerOverrides":{ + "type":"structure", + "members":{ + "command":{ + "shape":"StringList", + "documentation":"

The command to send to the container that overrides the default command from the Docker image or the job definition.

This parameter can't contain an empty string.

" + }, + "environment":{ + "shape":"EnvironmentVariables", + "documentation":"

The environment variables to send to the container. You can add new environment variables, which are added to the container at launch, or you can override the existing environment variables from the Docker image or the job definition.

Environment variables cannot start with AWS_BATCH. This naming convention is reserved for variables that Batch sets.

" + }, + "name":{ + "shape":"String", + "documentation":"

A pointer to the container that you want to override. The container's name provides a unique identifier for the container being used.

" + }, + "resourceRequirements":{ + "shape":"ResourceRequirements", + "documentation":"

The type and amount of resources to assign to a container. This overrides the settings in the job definition. The supported resources include GPU, MEMORY, and VCPU.

" + } + }, + "documentation":"

The overrides that should be sent to a container.

For information about using Batch overrides when you connect event sources to targets, see BatchContainerOverrides.

" + }, + "TaskContainerProperties":{ + "type":"structure", + "required":["image"], + "members":{ + "command":{ + "shape":"StringList", + "documentation":"

The command that's passed to the container. This parameter maps to Cmd in the Create a container section of the Docker Remote API and the COMMAND parameter to docker run. For more information, see Dockerfile reference: CMD.

" + }, + "dependsOn":{ + "shape":"TaskContainerDependencyList", + "documentation":"

A list of containers that this container depends on.

" + }, + "environment":{ + "shape":"EnvironmentVariables", + "documentation":"

The environment variables to pass to a container. This parameter maps to Env inthe Create a container section of the Docker Remote API and the --env parameter to docker run.

We don't recommend using plaintext environment variables for sensitive information, such as credential data.

Environment variables cannot start with AWS_BATCH. This naming convention is reserved for variables that Batch sets.

" + }, + "essential":{ + "shape":"Boolean", + "documentation":"

If the essential parameter of a container is marked as true, and that container fails or stops for any reason, all other containers that are part of the task are stopped. If the essential parameter of a container is marked as false, its failure doesn't affect the rest of the containers in a task. If this parameter is omitted, a container is assumed to be essential.

All tasks must have at least one essential container. If you have an application that's composed of multiple containers, group containers that are used for a common purpose into components, and separate the different components into multiple task definitions. For more information, see Application Architecture in the Amazon Elastic Container Service Developer Guide.

" + }, + "image":{ + "shape":"String", + "documentation":"

The image used to start a container. This string is passed directly to the Docker daemon. By default, images in the Docker Hub registry are available. Other repositories are specified with either repository-url/image:tag or repository-url/image@digest. Up to 255 letters (uppercase and lowercase), numbers, hyphens, underscores, colons, periods, forward slashes, and number signs are allowed. This parameter maps to Image in the Create a container section of the Docker Remote API and the IMAGE parameter of the docker run .

" + }, + "linuxParameters":{ + "shape":"LinuxParameters", + "documentation":"

Linux-specific modifications that are applied to the container, such as Linux kernel capabilities. For more information, see KernelCapabilities.

" + }, + "logConfiguration":{ + "shape":"LogConfiguration", + "documentation":"

The log configuration specification for the container.

This parameter maps to LogConfig in the Create a container section of the Docker Remote API and the --log-driver option to docker run.

By default, containers use the same logging driver that the Docker daemon uses. However the container can use a different logging driver than the Docker daemon by specifying a log driver with this parameter in the container definition. To use a different logging driver for a container, the log system must be configured properly on the container instance (or on a different log server for remote logging options). For more information about the options for different supported log drivers, see Configure logging drivers in the Docker documentation.

Amazon ECS currently supports a subset of the logging drivers available to the Docker daemon (shown in the LogConfiguration data type). Additional log drivers may be available in future releases of the Amazon ECS container agent.

This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: sudo docker version --format '{{.Server.APIVersion}}'

The Amazon ECS container agent running on a container instance must register the logging drivers available on that instance with the ECS_AVAILABLE_LOGGING_DRIVERS environment variable before containers placed on that instance can use these log configuration options. For more information, see Amazon ECS container agent configuration in the Amazon Elastic Container Service Developer Guide.

" + }, + "mountPoints":{ + "shape":"MountPoints", + "documentation":"

The mount points for data volumes in your container.

This parameter maps to Volumes in the Create a container section of the Docker Remote API and the --volume option to docker run.

Windows containers can mount whole directories on the same drive as $env:ProgramData. Windows containers can't mount directories on a different drive, and mount point can't be across drives.

" + }, + "name":{ + "shape":"String", + "documentation":"

The name of a container. The name can be used as a unique identifier to target your dependsOn and Overrides objects.

" + }, + "privileged":{ + "shape":"Boolean", + "documentation":"

When this parameter is true, the container is given elevated privileges on the host container instance (similar to the root user). This parameter maps to Privileged in the Create a container section of the Docker Remote API and the --privileged option to docker run.

This parameter is not supported for Windows containers or tasks run on Fargate.

" + }, + "readonlyRootFilesystem":{ + "shape":"Boolean", + "documentation":"

When this parameter is true, the container is given read-only access to its root file system. This parameter maps to ReadonlyRootfs in the Create a container section of the Docker Remote API and the --read-only option to docker run.

This parameter is not supported for Windows containers.

" + }, + "repositoryCredentials":{ + "shape":"RepositoryCredentials", + "documentation":"

The private repository authentication credentials to use.

" + }, + "resourceRequirements":{ + "shape":"ResourceRequirements", + "documentation":"

The type and amount of a resource to assign to a container. The only supported resource is a GPU.

" + }, + "secrets":{ + "shape":"SecretList", + "documentation":"

The secrets to pass to the container. For more information, see Specifying Sensitive Data in the Amazon Elastic Container Service Developer Guide.

" + }, + "ulimits":{ + "shape":"Ulimits", + "documentation":"

A list of ulimits to set in the container. If a ulimit value is specified in a task definition, it overrides the default values set by Docker. This parameter maps to Ulimits in the Create a container section of the Docker Remote API and the --ulimit option to docker run.

Amazon ECS tasks hosted on Fargate use the default resource limit values set by the operating system with the exception of the nofile resource limit parameter which Fargate overrides. The nofile resource limit sets a restriction on the number of open files that a container can use. The default nofile soft limit is 1024 and the default hard limit is 65535.

This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: sudo docker version --format '{{.Server.APIVersion}}'

This parameter is not supported for Windows containers.

" + }, + "user":{ + "shape":"String", + "documentation":"

The user to use inside the container. This parameter maps to User in the Create a container section of the Docker Remote API and the --user option to docker run.

When running tasks using the host network mode, don't run containers using the root user (UID 0). We recommend using a non-root user for better security.

You can specify the user using the following formats. If specifying a UID or GID, you must specify it as a positive integer.

  • user

  • user:group

  • uid

  • uid:gid

  • user:gi

  • uid:group

This parameter is not supported for Windows containers.

" + } + }, + "documentation":"

Container properties are used for Amazon ECS-based job definitions. These properties to describe the container that's launched as part of a job.

" + }, + "TaskPropertiesOverride":{ + "type":"structure", + "members":{ + "containers":{ + "shape":"ListTaskContainerOverrides", + "documentation":"

The overrides for the container definition of a job.

" + } + }, + "documentation":"

An object that contains overrides for the task definition of a job.

" + }, "TerminateJobRequest":{ "type":"structure", "required":[ diff --git a/tools/code-generation/api-descriptions/bedrock-agent-runtime-2023-07-26.normal.json b/tools/code-generation/api-descriptions/bedrock-agent-runtime-2023-07-26.normal.json index 9677842f01e..8e6520f01b7 100644 --- a/tools/code-generation/api-descriptions/bedrock-agent-runtime-2023-07-26.normal.json +++ b/tools/code-generation/api-descriptions/bedrock-agent-runtime-2023-07-26.normal.json @@ -465,17 +465,22 @@ ], "members":{ "knowledgeBaseId":{"shape":"KnowledgeBaseId"}, - "modelArn":{"shape":"BedrockModelArn"} + "modelArn":{"shape":"BedrockModelArn"}, + "retrievalConfiguration":{"shape":"KnowledgeBaseRetrievalConfiguration"} }, "documentation":"

Configurations for retrieval and generation for knowledge base.

" }, "KnowledgeBaseVectorSearchConfiguration":{ "type":"structure", - "required":["numberOfResults"], "members":{ "numberOfResults":{ "shape":"KnowledgeBaseVectorSearchConfigurationNumberOfResultsInteger", - "documentation":"

Top-K results to retrieve from knowledge base.

" + "documentation":"

Top-K results to retrieve from knowledge base.

", + "box":true + }, + "overrideSearchType":{ + "shape":"SearchType", + "documentation":"

Override the type of query to be performed on data store

" } }, "documentation":"

Knowledge base vector search configuration

" @@ -483,7 +488,7 @@ "KnowledgeBaseVectorSearchConfigurationNumberOfResultsInteger":{ "type":"integer", "box":true, - "max":10, + "max":25, "min":1 }, "LambdaArn":{ @@ -748,7 +753,8 @@ "documentation":"

Content of a retrieval result in text

" } }, - "documentation":"

Content of a retrieval result.

" + "documentation":"

Content of a retrieval result.

", + "sensitive":true }, "RetrievalResultLocation":{ "type":"structure", @@ -757,7 +763,8 @@ "type":{"shape":"RetrievalResultLocationType"}, "s3Location":{"shape":"RetrievalResultS3Location"} }, - "documentation":"

The source location of a retrieval result.

" + "documentation":"

The source location of a retrieval result.

", + "sensitive":true }, "RetrievalResultLocationType":{ "type":"string", @@ -888,6 +895,14 @@ "member":{"shape":"RetrievedReference"}, "documentation":"

list of retrieved references

" }, + "SearchType":{ + "type":"string", + "documentation":"

Query type to be performed on data store.

", + "enum":[ + "HYBRID", + "SEMANTIC" + ] + }, "ServiceQuotaExceededException":{ "type":"structure", "members":{ @@ -985,7 +1000,8 @@ }, "span":{"shape":"Span"} }, - "documentation":"

Text response part

" + "documentation":"

Text response part

", + "sensitive":true }, "ThrottlingException":{ "type":"structure", diff --git a/tools/code-generation/api-descriptions/ce-2017-10-25.normal.json b/tools/code-generation/api-descriptions/ce-2017-10-25.normal.json index d87c8946a21..fc065683209 100644 --- a/tools/code-generation/api-descriptions/ce-2017-10-25.normal.json +++ b/tools/code-generation/api-descriptions/ce-2017-10-25.normal.json @@ -155,6 +155,20 @@ ], "documentation":"

Retrieves the cost anomaly subscription objects for your account. You can filter using a list of cost anomaly monitor Amazon Resource Names (ARNs).

" }, + "GetApproximateUsageRecords":{ + "name":"GetApproximateUsageRecords", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetApproximateUsageRecordsRequest"}, + "output":{"shape":"GetApproximateUsageRecordsResponse"}, + "errors":[ + {"shape":"LimitExceededException"}, + {"shape":"DataUnavailableException"} + ], + "documentation":"

Retrieves estimated usage records for hourly granularity or resource-level data at daily granularity.

" + }, "GetCostAndUsage":{ "name":"GetCostAndUsage", "http":{ @@ -780,6 +794,18 @@ "type":"list", "member":{"shape":"AnomalySubscription"} }, + "ApproximateUsageRecordsPerService":{ + "type":"map", + "key":{"shape":"GenericString"}, + "value":{"shape":"NonNegativeLong"} + }, + "ApproximationDimension":{ + "type":"string", + "enum":[ + "SERVICE", + "RESOURCE" + ] + }, "Arn":{ "type":"string", "max":2048, @@ -2063,6 +2089,44 @@ } } }, + "GetApproximateUsageRecordsRequest":{ + "type":"structure", + "required":[ + "Granularity", + "ApproximationDimension" + ], + "members":{ + "Granularity":{ + "shape":"Granularity", + "documentation":"

How granular you want the data to be. You can enable data at hourly or daily granularity.

" + }, + "Services":{ + "shape":"UsageServices", + "documentation":"

The service metadata for the service or services you want to query. If not specified, all elements are returned.

" + }, + "ApproximationDimension":{ + "shape":"ApproximationDimension", + "documentation":"

The service to evaluate for the usage records. You can choose resource-level data at daily granularity, or hourly granularity with or without resource-level data.

" + } + } + }, + "GetApproximateUsageRecordsResponse":{ + "type":"structure", + "members":{ + "Services":{ + "shape":"ApproximateUsageRecordsPerService", + "documentation":"

The service metadata for the service or services in the response.

" + }, + "TotalRecords":{ + "shape":"NonNegativeLong", + "documentation":"

The total number of usage records for all services in the services list.

" + }, + "LookbackPeriod":{ + "shape":"DateInterval", + "documentation":"

The lookback period that's used for the estimation.

" + } + } + }, "GetCostAndUsageRequest":{ "type":"structure", "required":[ @@ -3297,6 +3361,10 @@ "type":"integer", "min":0 }, + "NonNegativeLong":{ + "type":"long", + "min":0 + }, "NullableNonNegativeDouble":{ "type":"double", "min":0.0 @@ -4995,6 +5063,10 @@ } } }, + "UsageServices":{ + "type":"list", + "member":{"shape":"GenericString"} + }, "UtilizationByTime":{ "type":"structure", "members":{ diff --git a/tools/code-generation/api-descriptions/ec2-2016-11-15.normal.json b/tools/code-generation/api-descriptions/ec2-2016-11-15.normal.json index df6be36f336..7d418574c65 100644 --- a/tools/code-generation/api-descriptions/ec2-2016-11-15.normal.json +++ b/tools/code-generation/api-descriptions/ec2-2016-11-15.normal.json @@ -31197,6 +31197,11 @@ } } }, + "GetNetworkInsightsAccessScopeAnalysisFindingsMaxResults":{ + "type":"integer", + "max":1000, + "min":1 + }, "GetNetworkInsightsAccessScopeAnalysisFindingsRequest":{ "type":"structure", "required":["NetworkInsightsAccessScopeAnalysisId"], @@ -31206,7 +31211,7 @@ "documentation":"

The ID of the Network Access Scope analysis.

" }, "MaxResults":{ - "shape":"NetworkInsightsMaxResults", + "shape":"GetNetworkInsightsAccessScopeAnalysisFindingsMaxResults", "documentation":"

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

" }, "NextToken":{ diff --git a/tools/code-generation/api-descriptions/iot-2015-05-28.normal.json b/tools/code-generation/api-descriptions/iot-2015-05-28.normal.json index 9a6d1ee3b81..dfd8d6af250 100644 --- a/tools/code-generation/api-descriptions/iot-2015-05-28.normal.json +++ b/tools/code-generation/api-descriptions/iot-2015-05-28.normal.json @@ -4881,7 +4881,7 @@ }, "namespaceId":{ "shape":"NamespaceId", - "documentation":"

The namespace used to indicate that a job is a customer-managed job.

When you specify a value for this parameter, Amazon Web Services IoT Core sends jobs notifications to MQTT topics that contain the value in the following format.

$aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/

The namespaceId feature is in public preview.

", + "documentation":"

The namespace used to indicate that a job is a customer-managed job.

When you specify a value for this parameter, Amazon Web Services IoT Core sends jobs notifications to MQTT topics that contain the value in the following format.

$aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/

The namespaceId feature is only supported by IoT Greengrass at this time. For more information, see Setting up IoT Greengrass core devices.

", "location":"querystring", "locationName":"namespaceId" } @@ -7217,7 +7217,7 @@ }, "namespaceId":{ "shape":"NamespaceId", - "documentation":"

The namespace used to indicate that a job is a customer-managed job.

When you specify a value for this parameter, Amazon Web Services IoT Core sends jobs notifications to MQTT topics that contain the value in the following format.

$aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/

The namespaceId feature is in public preview.

" + "documentation":"

The namespace used to indicate that a job is a customer-managed job.

When you specify a value for this parameter, Amazon Web Services IoT Core sends jobs notifications to MQTT topics that contain the value in the following format.

$aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/

The namespaceId feature is only supported by IoT Greengrass at this time. For more information, see Setting up IoT Greengrass core devices.

" }, "jobTemplateArn":{ "shape":"JobTemplateArn", @@ -8541,7 +8541,7 @@ }, "namespaceId":{ "shape":"NamespaceId", - "documentation":"

The namespace used to indicate that a job is a customer-managed job.

When you specify a value for this parameter, Amazon Web Services IoT Core sends jobs notifications to MQTT topics that contain the value in the following format.

$aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/

The namespaceId feature is in public preview.

", + "documentation":"

The namespace used to indicate that a job is a customer-managed job.

When you specify a value for this parameter, Amazon Web Services IoT Core sends jobs notifications to MQTT topics that contain the value in the following format.

$aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/

The namespaceId feature is only supported by IoT Greengrass at this time. For more information, see Setting up IoT Greengrass core devices.

", "location":"querystring", "locationName":"namespaceId" } @@ -8565,7 +8565,7 @@ }, "namespaceId":{ "shape":"NamespaceId", - "documentation":"

The namespace used to indicate that a job is a customer-managed job.

When you specify a value for this parameter, Amazon Web Services IoT Core sends jobs notifications to MQTT topics that contain the value in the following format.

$aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/

The namespaceId feature is in public preview.

", + "documentation":"

The namespace used to indicate that a job is a customer-managed job.

When you specify a value for this parameter, Amazon Web Services IoT Core sends jobs notifications to MQTT topics that contain the value in the following format.

$aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/

The namespaceId feature is only supported by IoT Greengrass at this time. For more information, see Setting up IoT Greengrass core devices.

", "location":"querystring", "locationName":"namespaceId" } @@ -12312,7 +12312,7 @@ }, "namespaceId":{ "shape":"NamespaceId", - "documentation":"

The namespace used to indicate that a job is a customer-managed job.

When you specify a value for this parameter, Amazon Web Services IoT Core sends jobs notifications to MQTT topics that contain the value in the following format.

$aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/

The namespaceId feature is in public preview.

" + "documentation":"

The namespace used to indicate that a job is a customer-managed job.

When you specify a value for this parameter, Amazon Web Services IoT Core sends jobs notifications to MQTT topics that contain the value in the following format.

$aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/

The namespaceId feature is only supported by IoT Greengrass at this time. For more information, see Setting up IoT Greengrass core devices.

" }, "jobTemplateArn":{ "shape":"JobTemplateArn", @@ -13753,7 +13753,7 @@ }, "namespaceId":{ "shape":"NamespaceId", - "documentation":"

The namespace used to indicate that a job is a customer-managed job.

When you specify a value for this parameter, Amazon Web Services IoT Core sends jobs notifications to MQTT topics that contain the value in the following format.

$aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/

The namespaceId feature is in public preview.

", + "documentation":"

The namespace used to indicate that a job is a customer-managed job.

When you specify a value for this parameter, Amazon Web Services IoT Core sends jobs notifications to MQTT topics that contain the value in the following format.

$aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/

The namespaceId feature is only supported by IoT Greengrass at this time. For more information, see Setting up IoT Greengrass core devices.

", "location":"querystring", "locationName":"namespaceId" }, @@ -13861,7 +13861,7 @@ }, "namespaceId":{ "shape":"NamespaceId", - "documentation":"

The namespace used to indicate that a job is a customer-managed job.

When you specify a value for this parameter, Amazon Web Services IoT Core sends jobs notifications to MQTT topics that contain the value in the following format.

$aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/

The namespaceId feature is in public preview.

", + "documentation":"

The namespace used to indicate that a job is a customer-managed job.

When you specify a value for this parameter, Amazon Web Services IoT Core sends jobs notifications to MQTT topics that contain the value in the following format.

$aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/

The namespaceId feature is only supported by IoT Greengrass at this time. For more information, see Setting up IoT Greengrass core devices.

", "location":"querystring", "locationName":"namespaceId" } @@ -17515,8 +17515,8 @@ "documentation":"

The token used to get the next set of results, or null if there are no additional results.

" }, "maxResults":{ - "shape":"QueryMaxResults", - "documentation":"

The maximum number of results to return per page at one time. The response might contain fewer results but will never contain more.

" + "shape":"SearchQueryMaxResults", + "documentation":"

The maximum number of results to return per page at one time. This maximum number cannot exceed 100. The response might contain fewer results but will never contain more. You can use nextToken to retrieve the next set of results until nextToken returns NULL.

" }, "queryVersion":{ "shape":"QueryVersion", @@ -17541,6 +17541,10 @@ } } }, + "SearchQueryMaxResults":{ + "type":"integer", + "min":1 + }, "SearchableAttributes":{ "type":"list", "member":{"shape":"AttributeName"} @@ -20017,7 +20021,7 @@ }, "namespaceId":{ "shape":"NamespaceId", - "documentation":"

The namespace used to indicate that a job is a customer-managed job.

When you specify a value for this parameter, Amazon Web Services IoT Core sends jobs notifications to MQTT topics that contain the value in the following format.

$aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/

The namespaceId feature is in public preview.

", + "documentation":"

The namespace used to indicate that a job is a customer-managed job.

When you specify a value for this parameter, Amazon Web Services IoT Core sends jobs notifications to MQTT topics that contain the value in the following format.

$aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/

The namespaceId feature is only supported by IoT Greengrass at this time. For more information, see Setting up IoT Greengrass core devices.

", "location":"querystring", "locationName":"namespaceId" }, diff --git a/tools/code-generation/api-descriptions/wafv2-2019-07-29.normal.json b/tools/code-generation/api-descriptions/wafv2-2019-07-29.normal.json index a75899c9d4b..401c71b432b 100644 --- a/tools/code-generation/api-descriptions/wafv2-2019-07-29.normal.json +++ b/tools/code-generation/api-descriptions/wafv2-2019-07-29.normal.json @@ -2379,6 +2379,7 @@ }, "ErrorMessage":{"type":"string"}, "ErrorReason":{"type":"string"}, + "EvaluationWindowSec":{"type":"long"}, "ExcludedRule":{ "type":"structure", "required":["Name"], @@ -4546,6 +4547,10 @@ "shape":"RateLimit", "documentation":"

The limit on requests per 5-minute period for a single aggregation instance for the rate-based rule. If the rate-based statement includes a ScopeDownStatement, this limit is applied only to the requests that match the statement.

Examples:

  • If you aggregate on just the IP address, this is the limit on requests from any single IP address.

  • If you aggregate on the HTTP method and the query argument name \"city\", then this is the limit on requests for any single method, city pair.

" }, + "EvaluationWindowSec":{ + "shape":"EvaluationWindowSec", + "documentation":"

The amount of time, in seconds, that WAF should include in its request counts, looking back from the current time. For example, for a setting of 120, when WAF checks the rate, it counts the requests for the 2 minutes immediately preceding the current time. Valid settings are 60, 120, 300, and 600.

This setting doesn't determine how often WAF checks the rate, but how far back it looks each time it checks. WAF checks the rate about every 10 seconds.

Default: 300 (5 minutes)

" + }, "AggregateKeyType":{ "shape":"RateBasedStatementAggregateKeyType", "documentation":"

Setting that indicates how to aggregate the request counts.

Web requests that are missing any of the components specified in the aggregation keys are omitted from the rate-based rule evaluation and handling.

  • CONSTANT - Count and limit the requests that match the rate-based rule's scope-down statement. With this option, the counted requests aren't further aggregated. The scope-down statement is the only specification used. When the count of all requests that satisfy the scope-down statement goes over the limit, WAF applies the rule action to all requests that satisfy the scope-down statement.

    With this option, you must configure the ScopeDownStatement property.

  • CUSTOM_KEYS - Aggregate the request counts using one or more web request components as the aggregate keys.

    With this option, you must specify the aggregate keys in the CustomKeys property.

    To aggregate on only the IP address or only the forwarded IP address, don't use custom keys. Instead, set the aggregate key type to IP or FORWARDED_IP.

  • FORWARDED_IP - Aggregate the request counts on the first IP address in an HTTP header.

    With this option, you must specify the header to use in the ForwardedIPConfig property.

    To aggregate on a combination of the forwarded IP address with other aggregate keys, use CUSTOM_KEYS.

  • IP - Aggregate the request counts on the IP address from the web request origin.

    To aggregate on a combination of the IP address with other aggregate keys, use CUSTOM_KEYS.

"