/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include The templated target type for the Amazon ECS
* RunTask
API operation.See Also:
AWS
* API Reference
The capacity provider strategy to use for the task.
*/ inline const Aws::VectorThe capacity provider strategy to use for the task.
*/ inline bool CapacityProviderStrategyHasBeenSet() const { return m_capacityProviderStrategyHasBeenSet; } /** *The capacity provider strategy to use for the task.
*/ inline void SetCapacityProviderStrategy(const Aws::VectorThe capacity provider strategy to use for the task.
*/ inline void SetCapacityProviderStrategy(Aws::VectorThe capacity provider strategy to use for the task.
*/ inline EcsParameters& WithCapacityProviderStrategy(const Aws::VectorThe capacity provider strategy to use for the task.
*/ inline EcsParameters& WithCapacityProviderStrategy(Aws::VectorThe capacity provider strategy to use for the task.
*/ inline EcsParameters& AddCapacityProviderStrategy(const CapacityProviderStrategyItem& value) { m_capacityProviderStrategyHasBeenSet = true; m_capacityProviderStrategy.push_back(value); return *this; } /** *The capacity provider strategy to use for the task.
*/ inline EcsParameters& AddCapacityProviderStrategy(CapacityProviderStrategyItem&& value) { m_capacityProviderStrategyHasBeenSet = true; m_capacityProviderStrategy.push_back(std::move(value)); return *this; } /** *Specifies whether to enable Amazon ECS managed tags for the task. For more * information, see Tagging * Your Amazon ECS Resources in the Amazon ECS Developer Guide.
*/ inline bool GetEnableECSManagedTags() const{ return m_enableECSManagedTags; } /** *Specifies whether to enable Amazon ECS managed tags for the task. For more * information, see Tagging * Your Amazon ECS Resources in the Amazon ECS Developer Guide.
*/ inline bool EnableECSManagedTagsHasBeenSet() const { return m_enableECSManagedTagsHasBeenSet; } /** *Specifies whether to enable Amazon ECS managed tags for the task. For more * information, see Tagging * Your Amazon ECS Resources in the Amazon ECS Developer Guide.
*/ inline void SetEnableECSManagedTags(bool value) { m_enableECSManagedTagsHasBeenSet = true; m_enableECSManagedTags = value; } /** *Specifies whether to enable Amazon ECS managed tags for the task. For more * information, see Tagging * Your Amazon ECS Resources in the Amazon ECS Developer Guide.
*/ inline EcsParameters& WithEnableECSManagedTags(bool value) { SetEnableECSManagedTags(value); return *this;} /** *Whether or not to enable the execute command functionality for the containers * in this task. If true, this enables execute command functionality on all * containers in the task.
*/ inline bool GetEnableExecuteCommand() const{ return m_enableExecuteCommand; } /** *Whether or not to enable the execute command functionality for the containers * in this task. If true, this enables execute command functionality on all * containers in the task.
*/ inline bool EnableExecuteCommandHasBeenSet() const { return m_enableExecuteCommandHasBeenSet; } /** *Whether or not to enable the execute command functionality for the containers * in this task. If true, this enables execute command functionality on all * containers in the task.
*/ inline void SetEnableExecuteCommand(bool value) { m_enableExecuteCommandHasBeenSet = true; m_enableExecuteCommand = value; } /** *Whether or not to enable the execute command functionality for the containers * in this task. If true, this enables execute command functionality on all * containers in the task.
*/ inline EcsParameters& WithEnableExecuteCommand(bool value) { SetEnableExecuteCommand(value); return *this;} /** *Specifies an ECS task group for the task. The maximum length is 255 * characters.
*/ inline const Aws::String& GetGroup() const{ return m_group; } /** *Specifies an ECS task group for the task. The maximum length is 255 * characters.
*/ inline bool GroupHasBeenSet() const { return m_groupHasBeenSet; } /** *Specifies an ECS task group for the task. The maximum length is 255 * characters.
*/ inline void SetGroup(const Aws::String& value) { m_groupHasBeenSet = true; m_group = value; } /** *Specifies an ECS task group for the task. The maximum length is 255 * characters.
*/ inline void SetGroup(Aws::String&& value) { m_groupHasBeenSet = true; m_group = std::move(value); } /** *Specifies an ECS task group for the task. The maximum length is 255 * characters.
*/ inline void SetGroup(const char* value) { m_groupHasBeenSet = true; m_group.assign(value); } /** *Specifies an ECS task group for the task. The maximum length is 255 * characters.
*/ inline EcsParameters& WithGroup(const Aws::String& value) { SetGroup(value); return *this;} /** *Specifies an ECS task group for the task. The maximum length is 255 * characters.
*/ inline EcsParameters& WithGroup(Aws::String&& value) { SetGroup(std::move(value)); return *this;} /** *Specifies an ECS task group for the task. The maximum length is 255 * characters.
*/ inline EcsParameters& WithGroup(const char* value) { SetGroup(value); return *this;} /** *Specifies the launch type on which your task is running. The launch type that
* you specify here must match one of the launch type (compatibilities) of the
* target task. The FARGATE
value is supported only in the Regions
* where Fargate with Amazon ECS is supported. For more information, see AWS
* Fargate on Amazon ECS in the Amazon ECS Developer Guide.
Specifies the launch type on which your task is running. The launch type that
* you specify here must match one of the launch type (compatibilities) of the
* target task. The FARGATE
value is supported only in the Regions
* where Fargate with Amazon ECS is supported. For more information, see AWS
* Fargate on Amazon ECS in the Amazon ECS Developer Guide.
Specifies the launch type on which your task is running. The launch type that
* you specify here must match one of the launch type (compatibilities) of the
* target task. The FARGATE
value is supported only in the Regions
* where Fargate with Amazon ECS is supported. For more information, see AWS
* Fargate on Amazon ECS in the Amazon ECS Developer Guide.
Specifies the launch type on which your task is running. The launch type that
* you specify here must match one of the launch type (compatibilities) of the
* target task. The FARGATE
value is supported only in the Regions
* where Fargate with Amazon ECS is supported. For more information, see AWS
* Fargate on Amazon ECS in the Amazon ECS Developer Guide.
Specifies the launch type on which your task is running. The launch type that
* you specify here must match one of the launch type (compatibilities) of the
* target task. The FARGATE
value is supported only in the Regions
* where Fargate with Amazon ECS is supported. For more information, see AWS
* Fargate on Amazon ECS in the Amazon ECS Developer Guide.
Specifies the launch type on which your task is running. The launch type that
* you specify here must match one of the launch type (compatibilities) of the
* target task. The FARGATE
value is supported only in the Regions
* where Fargate with Amazon ECS is supported. For more information, see AWS
* Fargate on Amazon ECS in the Amazon ECS Developer Guide.
This structure specifies the network configuration for an ECS task.
*/ inline const NetworkConfiguration& GetNetworkConfiguration() const{ return m_networkConfiguration; } /** *This structure specifies the network configuration for an ECS task.
*/ inline bool NetworkConfigurationHasBeenSet() const { return m_networkConfigurationHasBeenSet; } /** *This structure specifies the network configuration for an ECS task.
*/ inline void SetNetworkConfiguration(const NetworkConfiguration& value) { m_networkConfigurationHasBeenSet = true; m_networkConfiguration = value; } /** *This structure specifies the network configuration for an ECS task.
*/ inline void SetNetworkConfiguration(NetworkConfiguration&& value) { m_networkConfigurationHasBeenSet = true; m_networkConfiguration = std::move(value); } /** *This structure specifies the network configuration for an ECS task.
*/ inline EcsParameters& WithNetworkConfiguration(const NetworkConfiguration& value) { SetNetworkConfiguration(value); return *this;} /** *This structure specifies the network configuration for an ECS task.
*/ inline EcsParameters& WithNetworkConfiguration(NetworkConfiguration&& value) { SetNetworkConfiguration(std::move(value)); return *this;} /** *An array of placement constraint objects to use for the task. You can specify * up to 10 constraints per task (including constraints in the task definition and * those specified at runtime).
*/ inline const Aws::VectorAn array of placement constraint objects to use for the task. You can specify * up to 10 constraints per task (including constraints in the task definition and * those specified at runtime).
*/ inline bool PlacementConstraintsHasBeenSet() const { return m_placementConstraintsHasBeenSet; } /** *An array of placement constraint objects to use for the task. You can specify * up to 10 constraints per task (including constraints in the task definition and * those specified at runtime).
*/ inline void SetPlacementConstraints(const Aws::VectorAn array of placement constraint objects to use for the task. You can specify * up to 10 constraints per task (including constraints in the task definition and * those specified at runtime).
*/ inline void SetPlacementConstraints(Aws::VectorAn array of placement constraint objects to use for the task. You can specify * up to 10 constraints per task (including constraints in the task definition and * those specified at runtime).
*/ inline EcsParameters& WithPlacementConstraints(const Aws::VectorAn array of placement constraint objects to use for the task. You can specify * up to 10 constraints per task (including constraints in the task definition and * those specified at runtime).
*/ inline EcsParameters& WithPlacementConstraints(Aws::VectorAn array of placement constraint objects to use for the task. You can specify * up to 10 constraints per task (including constraints in the task definition and * those specified at runtime).
*/ inline EcsParameters& AddPlacementConstraints(const PlacementConstraint& value) { m_placementConstraintsHasBeenSet = true; m_placementConstraints.push_back(value); return *this; } /** *An array of placement constraint objects to use for the task. You can specify * up to 10 constraints per task (including constraints in the task definition and * those specified at runtime).
*/ inline EcsParameters& AddPlacementConstraints(PlacementConstraint&& value) { m_placementConstraintsHasBeenSet = true; m_placementConstraints.push_back(std::move(value)); return *this; } /** *The task placement strategy for a task or service.
*/ inline const Aws::VectorThe task placement strategy for a task or service.
*/ inline bool PlacementStrategyHasBeenSet() const { return m_placementStrategyHasBeenSet; } /** *The task placement strategy for a task or service.
*/ inline void SetPlacementStrategy(const Aws::VectorThe task placement strategy for a task or service.
*/ inline void SetPlacementStrategy(Aws::VectorThe task placement strategy for a task or service.
*/ inline EcsParameters& WithPlacementStrategy(const Aws::VectorThe task placement strategy for a task or service.
*/ inline EcsParameters& WithPlacementStrategy(Aws::VectorThe task placement strategy for a task or service.
*/ inline EcsParameters& AddPlacementStrategy(const PlacementStrategy& value) { m_placementStrategyHasBeenSet = true; m_placementStrategy.push_back(value); return *this; } /** *The task placement strategy for a task or service.
*/ inline EcsParameters& AddPlacementStrategy(PlacementStrategy&& value) { m_placementStrategyHasBeenSet = true; m_placementStrategy.push_back(std::move(value)); return *this; } /** *Specifies the platform version for the task. Specify only the numeric portion
* of the platform version, such as 1.1.0
.
Specifies the platform version for the task. Specify only the numeric portion
* of the platform version, such as 1.1.0
.
Specifies the platform version for the task. Specify only the numeric portion
* of the platform version, such as 1.1.0
.
Specifies the platform version for the task. Specify only the numeric portion
* of the platform version, such as 1.1.0
.
Specifies the platform version for the task. Specify only the numeric portion
* of the platform version, such as 1.1.0
.
Specifies the platform version for the task. Specify only the numeric portion
* of the platform version, such as 1.1.0
.
Specifies the platform version for the task. Specify only the numeric portion
* of the platform version, such as 1.1.0
.
Specifies the platform version for the task. Specify only the numeric portion
* of the platform version, such as 1.1.0
.
Specifies whether to propagate the tags from the task definition to the task.
* If no value is specified, the tags are not propagated. Tags can only be
* propagated to the task during task creation. To add tags to a task after task
* creation, use Amazon ECS's
* TagResource
API action.
Specifies whether to propagate the tags from the task definition to the task.
* If no value is specified, the tags are not propagated. Tags can only be
* propagated to the task during task creation. To add tags to a task after task
* creation, use Amazon ECS's
* TagResource
API action.
Specifies whether to propagate the tags from the task definition to the task.
* If no value is specified, the tags are not propagated. Tags can only be
* propagated to the task during task creation. To add tags to a task after task
* creation, use Amazon ECS's
* TagResource
API action.
Specifies whether to propagate the tags from the task definition to the task.
* If no value is specified, the tags are not propagated. Tags can only be
* propagated to the task during task creation. To add tags to a task after task
* creation, use Amazon ECS's
* TagResource
API action.
Specifies whether to propagate the tags from the task definition to the task.
* If no value is specified, the tags are not propagated. Tags can only be
* propagated to the task during task creation. To add tags to a task after task
* creation, use Amazon ECS's
* TagResource
API action.
Specifies whether to propagate the tags from the task definition to the task.
* If no value is specified, the tags are not propagated. Tags can only be
* propagated to the task during task creation. To add tags to a task after task
* creation, use Amazon ECS's
* TagResource
API action.
The reference ID to use for the task.
*/ inline const Aws::String& GetReferenceId() const{ return m_referenceId; } /** *The reference ID to use for the task.
*/ inline bool ReferenceIdHasBeenSet() const { return m_referenceIdHasBeenSet; } /** *The reference ID to use for the task.
*/ inline void SetReferenceId(const Aws::String& value) { m_referenceIdHasBeenSet = true; m_referenceId = value; } /** *The reference ID to use for the task.
*/ inline void SetReferenceId(Aws::String&& value) { m_referenceIdHasBeenSet = true; m_referenceId = std::move(value); } /** *The reference ID to use for the task.
*/ inline void SetReferenceId(const char* value) { m_referenceIdHasBeenSet = true; m_referenceId.assign(value); } /** *The reference ID to use for the task.
*/ inline EcsParameters& WithReferenceId(const Aws::String& value) { SetReferenceId(value); return *this;} /** *The reference ID to use for the task.
*/ inline EcsParameters& WithReferenceId(Aws::String&& value) { SetReferenceId(std::move(value)); return *this;} /** *The reference ID to use for the task.
*/ inline EcsParameters& WithReferenceId(const char* value) { SetReferenceId(value); return *this;} /** *The metadata that you apply to the task to help you categorize and organize
* them. Each tag consists of a key and an optional value, both of which you
* define. For more information, see
* RunTask
in the Amazon ECS API Reference.
The metadata that you apply to the task to help you categorize and organize
* them. Each tag consists of a key and an optional value, both of which you
* define. For more information, see
* RunTask
in the Amazon ECS API Reference.
The metadata that you apply to the task to help you categorize and organize
* them. Each tag consists of a key and an optional value, both of which you
* define. For more information, see
* RunTask
in the Amazon ECS API Reference.
The metadata that you apply to the task to help you categorize and organize
* them. Each tag consists of a key and an optional value, both of which you
* define. For more information, see
* RunTask
in the Amazon ECS API Reference.
The metadata that you apply to the task to help you categorize and organize
* them. Each tag consists of a key and an optional value, both of which you
* define. For more information, see
* RunTask
in the Amazon ECS API Reference.
The metadata that you apply to the task to help you categorize and organize
* them. Each tag consists of a key and an optional value, both of which you
* define. For more information, see
* RunTask
in the Amazon ECS API Reference.
The metadata that you apply to the task to help you categorize and organize
* them. Each tag consists of a key and an optional value, both of which you
* define. For more information, see
* RunTask
in the Amazon ECS API Reference.
The metadata that you apply to the task to help you categorize and organize
* them. Each tag consists of a key and an optional value, both of which you
* define. For more information, see
* RunTask
in the Amazon ECS API Reference.
The number of tasks to create based on TaskDefinition
. The
* default is 1
.
The number of tasks to create based on TaskDefinition
. The
* default is 1
.
The number of tasks to create based on TaskDefinition
. The
* default is 1
.
The number of tasks to create based on TaskDefinition
. The
* default is 1
.
The Amazon Resource Name (ARN) of the task definition to use if the event * target is an Amazon ECS task.
*/ inline const Aws::String& GetTaskDefinitionArn() const{ return m_taskDefinitionArn; } /** *The Amazon Resource Name (ARN) of the task definition to use if the event * target is an Amazon ECS task.
*/ inline bool TaskDefinitionArnHasBeenSet() const { return m_taskDefinitionArnHasBeenSet; } /** *The Amazon Resource Name (ARN) of the task definition to use if the event * target is an Amazon ECS task.
*/ inline void SetTaskDefinitionArn(const Aws::String& value) { m_taskDefinitionArnHasBeenSet = true; m_taskDefinitionArn = value; } /** *The Amazon Resource Name (ARN) of the task definition to use if the event * target is an Amazon ECS task.
*/ inline void SetTaskDefinitionArn(Aws::String&& value) { m_taskDefinitionArnHasBeenSet = true; m_taskDefinitionArn = std::move(value); } /** *The Amazon Resource Name (ARN) of the task definition to use if the event * target is an Amazon ECS task.
*/ inline void SetTaskDefinitionArn(const char* value) { m_taskDefinitionArnHasBeenSet = true; m_taskDefinitionArn.assign(value); } /** *The Amazon Resource Name (ARN) of the task definition to use if the event * target is an Amazon ECS task.
*/ inline EcsParameters& WithTaskDefinitionArn(const Aws::String& value) { SetTaskDefinitionArn(value); return *this;} /** *The Amazon Resource Name (ARN) of the task definition to use if the event * target is an Amazon ECS task.
*/ inline EcsParameters& WithTaskDefinitionArn(Aws::String&& value) { SetTaskDefinitionArn(std::move(value)); return *this;} /** *The Amazon Resource Name (ARN) of the task definition to use if the event * target is an Amazon ECS task.
*/ inline EcsParameters& WithTaskDefinitionArn(const char* value) { SetTaskDefinitionArn(value); return *this;} private: Aws::Vector