#[non_exhaustive]pub struct Builder { /* private fields */ }
Expand description
A builder for Service
Implementations
sourceimpl Builder
impl Builder
sourcepub fn service_arn(self, input: impl Into<String>) -> Self
pub fn service_arn(self, input: impl Into<String>) -> Self
The ARN that identifies the service. The ARN contains the arn:aws:ecs
namespace, followed by the Region of the service, the Amazon Web Services account ID of the service owner, the service
namespace, and then the service name. For example, arn:aws:ecs:region:012345678910:service/my-service
.
sourcepub fn set_service_arn(self, input: Option<String>) -> Self
pub fn set_service_arn(self, input: Option<String>) -> Self
The ARN that identifies the service. The ARN contains the arn:aws:ecs
namespace, followed by the Region of the service, the Amazon Web Services account ID of the service owner, the service
namespace, and then the service name. For example, arn:aws:ecs:region:012345678910:service/my-service
.
sourcepub fn service_name(self, input: impl Into<String>) -> Self
pub fn service_name(self, input: impl Into<String>) -> Self
The name of your service. Up to 255 letters (uppercase and lowercase), numbers, underscores, and hyphens are allowed. Service names must be unique within a cluster. However, you can have similarly named services in multiple clusters within a Region or across multiple Regions.
sourcepub fn set_service_name(self, input: Option<String>) -> Self
pub fn set_service_name(self, input: Option<String>) -> Self
The name of your service. Up to 255 letters (uppercase and lowercase), numbers, underscores, and hyphens are allowed. Service names must be unique within a cluster. However, you can have similarly named services in multiple clusters within a Region or across multiple Regions.
sourcepub fn cluster_arn(self, input: impl Into<String>) -> Self
pub fn cluster_arn(self, input: impl Into<String>) -> Self
The Amazon Resource Name (ARN) of the cluster that hosts the service.
sourcepub fn set_cluster_arn(self, input: Option<String>) -> Self
pub fn set_cluster_arn(self, input: Option<String>) -> Self
The Amazon Resource Name (ARN) of the cluster that hosts the service.
sourcepub fn load_balancers(self, input: LoadBalancer) -> Self
pub fn load_balancers(self, input: LoadBalancer) -> Self
Appends an item to load_balancers
.
To override the contents of this collection use set_load_balancers
.
A list of Elastic Load Balancing load balancer objects. It contains the load balancer name, the container name, and the container port to access from the load balancer. The container name is as it appears in a container definition.
sourcepub fn set_load_balancers(self, input: Option<Vec<LoadBalancer>>) -> Self
pub fn set_load_balancers(self, input: Option<Vec<LoadBalancer>>) -> Self
A list of Elastic Load Balancing load balancer objects. It contains the load balancer name, the container name, and the container port to access from the load balancer. The container name is as it appears in a container definition.
sourcepub fn service_registries(self, input: ServiceRegistry) -> Self
pub fn service_registries(self, input: ServiceRegistry) -> Self
Appends an item to service_registries
.
To override the contents of this collection use set_service_registries
.
The details for the service discovery registries to assign to this service. For more information, see Service Discovery.
sourcepub fn set_service_registries(self, input: Option<Vec<ServiceRegistry>>) -> Self
pub fn set_service_registries(self, input: Option<Vec<ServiceRegistry>>) -> Self
The details for the service discovery registries to assign to this service. For more information, see Service Discovery.
sourcepub fn status(self, input: impl Into<String>) -> Self
pub fn status(self, input: impl Into<String>) -> Self
The status of the service. The valid values are ACTIVE
, DRAINING
, or INACTIVE
.
sourcepub fn set_status(self, input: Option<String>) -> Self
pub fn set_status(self, input: Option<String>) -> Self
The status of the service. The valid values are ACTIVE
, DRAINING
, or INACTIVE
.
sourcepub fn desired_count(self, input: i32) -> Self
pub fn desired_count(self, input: i32) -> Self
The desired number of instantiations of the task definition to keep running on the service. This value is specified when the service is created with CreateService
, and it can be modified with UpdateService
.
sourcepub fn set_desired_count(self, input: Option<i32>) -> Self
pub fn set_desired_count(self, input: Option<i32>) -> Self
The desired number of instantiations of the task definition to keep running on the service. This value is specified when the service is created with CreateService
, and it can be modified with UpdateService
.
sourcepub fn running_count(self, input: i32) -> Self
pub fn running_count(self, input: i32) -> Self
The number of tasks in the cluster that are in the RUNNING
state.
sourcepub fn set_running_count(self, input: Option<i32>) -> Self
pub fn set_running_count(self, input: Option<i32>) -> Self
The number of tasks in the cluster that are in the RUNNING
state.
sourcepub fn pending_count(self, input: i32) -> Self
pub fn pending_count(self, input: i32) -> Self
The number of tasks in the cluster that are in the PENDING
state.
sourcepub fn set_pending_count(self, input: Option<i32>) -> Self
pub fn set_pending_count(self, input: Option<i32>) -> Self
The number of tasks in the cluster that are in the PENDING
state.
sourcepub fn launch_type(self, input: LaunchType) -> Self
pub fn launch_type(self, input: LaunchType) -> Self
The launch type the service is using. When using the DescribeServices API, this field is omitted if the service was created using a capacity provider strategy.
sourcepub fn set_launch_type(self, input: Option<LaunchType>) -> Self
pub fn set_launch_type(self, input: Option<LaunchType>) -> Self
The launch type the service is using. When using the DescribeServices API, this field is omitted if the service was created using a capacity provider strategy.
sourcepub fn capacity_provider_strategy(
self,
input: CapacityProviderStrategyItem
) -> Self
pub fn capacity_provider_strategy(
self,
input: CapacityProviderStrategyItem
) -> Self
Appends an item to capacity_provider_strategy
.
To override the contents of this collection use set_capacity_provider_strategy
.
The capacity provider strategy the service uses. When using the DescribeServices API, this field is omitted if the service was created using a launch type.
sourcepub fn set_capacity_provider_strategy(
self,
input: Option<Vec<CapacityProviderStrategyItem>>
) -> Self
pub fn set_capacity_provider_strategy(
self,
input: Option<Vec<CapacityProviderStrategyItem>>
) -> Self
The capacity provider strategy the service uses. When using the DescribeServices API, this field is omitted if the service was created using a launch type.
sourcepub fn platform_version(self, input: impl Into<String>) -> Self
pub fn platform_version(self, input: impl Into<String>) -> Self
The platform version to run your service on. A platform version is only specified for tasks that are hosted on Fargate. If one isn't specified, the LATEST
platform version is used. For more information, see Fargate Platform Versions in the Amazon Elastic Container Service Developer Guide.
sourcepub fn set_platform_version(self, input: Option<String>) -> Self
pub fn set_platform_version(self, input: Option<String>) -> Self
The platform version to run your service on. A platform version is only specified for tasks that are hosted on Fargate. If one isn't specified, the LATEST
platform version is used. For more information, see Fargate Platform Versions in the Amazon Elastic Container Service Developer Guide.
sourcepub fn platform_family(self, input: impl Into<String>) -> Self
pub fn platform_family(self, input: impl Into<String>) -> Self
The operating system that your tasks in the service run on. A platform family is specified only for tasks using the Fargate launch type.
All tasks that run as part of this service must use the same platformFamily
value as the service (for example, LINUX
).
sourcepub fn set_platform_family(self, input: Option<String>) -> Self
pub fn set_platform_family(self, input: Option<String>) -> Self
The operating system that your tasks in the service run on. A platform family is specified only for tasks using the Fargate launch type.
All tasks that run as part of this service must use the same platformFamily
value as the service (for example, LINUX
).
sourcepub fn task_definition(self, input: impl Into<String>) -> Self
pub fn task_definition(self, input: impl Into<String>) -> Self
The task definition to use for tasks in the service. This value is specified when the service is created with CreateService
, and it can be modified with UpdateService
.
sourcepub fn set_task_definition(self, input: Option<String>) -> Self
pub fn set_task_definition(self, input: Option<String>) -> Self
The task definition to use for tasks in the service. This value is specified when the service is created with CreateService
, and it can be modified with UpdateService
.
sourcepub fn deployment_configuration(self, input: DeploymentConfiguration) -> Self
pub fn deployment_configuration(self, input: DeploymentConfiguration) -> Self
Optional deployment parameters that control how many tasks run during the deployment and the ordering of stopping and starting tasks.
sourcepub fn set_deployment_configuration(
self,
input: Option<DeploymentConfiguration>
) -> Self
pub fn set_deployment_configuration(
self,
input: Option<DeploymentConfiguration>
) -> Self
Optional deployment parameters that control how many tasks run during the deployment and the ordering of stopping and starting tasks.
sourcepub fn task_sets(self, input: TaskSet) -> Self
pub fn task_sets(self, input: TaskSet) -> Self
Appends an item to task_sets
.
To override the contents of this collection use set_task_sets
.
Information about a set of Amazon ECS tasks in either an CodeDeploy or an EXTERNAL
deployment. An Amazon ECS task set includes details such as the desired number of tasks, how many tasks are running, and whether the task set serves production traffic.
sourcepub fn set_task_sets(self, input: Option<Vec<TaskSet>>) -> Self
pub fn set_task_sets(self, input: Option<Vec<TaskSet>>) -> Self
Information about a set of Amazon ECS tasks in either an CodeDeploy or an EXTERNAL
deployment. An Amazon ECS task set includes details such as the desired number of tasks, how many tasks are running, and whether the task set serves production traffic.
sourcepub fn deployments(self, input: Deployment) -> Self
pub fn deployments(self, input: Deployment) -> Self
Appends an item to deployments
.
To override the contents of this collection use set_deployments
.
The current state of deployments for the service.
sourcepub fn set_deployments(self, input: Option<Vec<Deployment>>) -> Self
pub fn set_deployments(self, input: Option<Vec<Deployment>>) -> Self
The current state of deployments for the service.
sourcepub fn role_arn(self, input: impl Into<String>) -> Self
pub fn role_arn(self, input: impl Into<String>) -> Self
The ARN of the IAM role that's associated with the service. It allows the Amazon ECS container agent to register container instances with an Elastic Load Balancing load balancer.
sourcepub fn set_role_arn(self, input: Option<String>) -> Self
pub fn set_role_arn(self, input: Option<String>) -> Self
The ARN of the IAM role that's associated with the service. It allows the Amazon ECS container agent to register container instances with an Elastic Load Balancing load balancer.
sourcepub fn events(self, input: ServiceEvent) -> Self
pub fn events(self, input: ServiceEvent) -> Self
Appends an item to events
.
To override the contents of this collection use set_events
.
The event stream for your service. A maximum of 100 of the latest events are displayed.
sourcepub fn set_events(self, input: Option<Vec<ServiceEvent>>) -> Self
pub fn set_events(self, input: Option<Vec<ServiceEvent>>) -> Self
The event stream for your service. A maximum of 100 of the latest events are displayed.
sourcepub fn created_at(self, input: DateTime) -> Self
pub fn created_at(self, input: DateTime) -> Self
The Unix timestamp for the time when the service was created.
sourcepub fn set_created_at(self, input: Option<DateTime>) -> Self
pub fn set_created_at(self, input: Option<DateTime>) -> Self
The Unix timestamp for the time when the service was created.
sourcepub fn placement_constraints(self, input: PlacementConstraint) -> Self
pub fn placement_constraints(self, input: PlacementConstraint) -> Self
Appends an item to placement_constraints
.
To override the contents of this collection use set_placement_constraints
.
The placement constraints for the tasks in the service.
sourcepub fn set_placement_constraints(
self,
input: Option<Vec<PlacementConstraint>>
) -> Self
pub fn set_placement_constraints(
self,
input: Option<Vec<PlacementConstraint>>
) -> Self
The placement constraints for the tasks in the service.
sourcepub fn placement_strategy(self, input: PlacementStrategy) -> Self
pub fn placement_strategy(self, input: PlacementStrategy) -> Self
Appends an item to placement_strategy
.
To override the contents of this collection use set_placement_strategy
.
The placement strategy that determines how tasks for the service are placed.
sourcepub fn set_placement_strategy(
self,
input: Option<Vec<PlacementStrategy>>
) -> Self
pub fn set_placement_strategy(
self,
input: Option<Vec<PlacementStrategy>>
) -> Self
The placement strategy that determines how tasks for the service are placed.
sourcepub fn network_configuration(self, input: NetworkConfiguration) -> Self
pub fn network_configuration(self, input: NetworkConfiguration) -> Self
The VPC subnet and security group configuration for tasks that receive their own elastic network interface by using the awsvpc
networking mode.
sourcepub fn set_network_configuration(
self,
input: Option<NetworkConfiguration>
) -> Self
pub fn set_network_configuration(
self,
input: Option<NetworkConfiguration>
) -> Self
The VPC subnet and security group configuration for tasks that receive their own elastic network interface by using the awsvpc
networking mode.
sourcepub fn health_check_grace_period_seconds(self, input: i32) -> Self
pub fn health_check_grace_period_seconds(self, input: i32) -> Self
The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing target health checks after a task has first started.
sourcepub fn set_health_check_grace_period_seconds(self, input: Option<i32>) -> Self
pub fn set_health_check_grace_period_seconds(self, input: Option<i32>) -> Self
The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing target health checks after a task has first started.
sourcepub fn scheduling_strategy(self, input: SchedulingStrategy) -> Self
pub fn scheduling_strategy(self, input: SchedulingStrategy) -> Self
The scheduling strategy to use for the service. For more information, see Services.
There are two service scheduler strategies available.
-
REPLICA
-The replica scheduling strategy places and maintains the desired number of tasks across your cluster. By default, the service scheduler spreads tasks across Availability Zones. You can use task placement strategies and constraints to customize task placement decisions. -
DAEMON
-The daemon scheduling strategy deploys exactly one task on each active container instance. This task meets all of the task placement constraints that you specify in your cluster. The service scheduler also evaluates the task placement constraints for running tasks. It stop tasks that don't meet the placement constraints.Fargate tasks don't support the
DAEMON
scheduling strategy.
sourcepub fn set_scheduling_strategy(self, input: Option<SchedulingStrategy>) -> Self
pub fn set_scheduling_strategy(self, input: Option<SchedulingStrategy>) -> Self
The scheduling strategy to use for the service. For more information, see Services.
There are two service scheduler strategies available.
-
REPLICA
-The replica scheduling strategy places and maintains the desired number of tasks across your cluster. By default, the service scheduler spreads tasks across Availability Zones. You can use task placement strategies and constraints to customize task placement decisions. -
DAEMON
-The daemon scheduling strategy deploys exactly one task on each active container instance. This task meets all of the task placement constraints that you specify in your cluster. The service scheduler also evaluates the task placement constraints for running tasks. It stop tasks that don't meet the placement constraints.Fargate tasks don't support the
DAEMON
scheduling strategy.
sourcepub fn deployment_controller(self, input: DeploymentController) -> Self
pub fn deployment_controller(self, input: DeploymentController) -> Self
The deployment controller type the service is using. When using the DescribeServices API, this field is omitted if the service uses the ECS
deployment controller type.
sourcepub fn set_deployment_controller(
self,
input: Option<DeploymentController>
) -> Self
pub fn set_deployment_controller(
self,
input: Option<DeploymentController>
) -> Self
The deployment controller type the service is using. When using the DescribeServices API, this field is omitted if the service uses the ECS
deployment controller type.
Appends an item to tags
.
To override the contents of this collection use set_tags
.
The metadata that you apply to the service to help you categorize and organize them. Each tag consists of a key and an optional value. You define bot the key and value.
The following basic restrictions apply to tags:
-
Maximum number of tags per resource - 50
-
For each resource, each tag key must be unique, and each tag key can have only one value.
-
Maximum key length - 128 Unicode characters in UTF-8
-
Maximum value length - 256 Unicode characters in UTF-8
-
If your tagging schema is used across multiple services and resources, remember that other services may have restrictions on allowed characters. Generally allowed characters are: letters, numbers, and spaces representable in UTF-8, and the following characters: + - = . _ : / @.
-
Tag keys and values are case-sensitive.
-
Do not use
aws:
,AWS:
, or any upper or lowercase combination of such as a prefix for either keys or values as it is reserved for Amazon Web Services use. You cannot edit or delete tag keys or values with this prefix. Tags with this prefix do not count against your tags per resource limit.
The metadata that you apply to the service to help you categorize and organize them. Each tag consists of a key and an optional value. You define bot the key and value.
The following basic restrictions apply to tags:
-
Maximum number of tags per resource - 50
-
For each resource, each tag key must be unique, and each tag key can have only one value.
-
Maximum key length - 128 Unicode characters in UTF-8
-
Maximum value length - 256 Unicode characters in UTF-8
-
If your tagging schema is used across multiple services and resources, remember that other services may have restrictions on allowed characters. Generally allowed characters are: letters, numbers, and spaces representable in UTF-8, and the following characters: + - = . _ : / @.
-
Tag keys and values are case-sensitive.
-
Do not use
aws:
,AWS:
, or any upper or lowercase combination of such as a prefix for either keys or values as it is reserved for Amazon Web Services use. You cannot edit or delete tag keys or values with this prefix. Tags with this prefix do not count against your tags per resource limit.
sourcepub fn created_by(self, input: impl Into<String>) -> Self
pub fn created_by(self, input: impl Into<String>) -> Self
The principal that created the service.
sourcepub fn set_created_by(self, input: Option<String>) -> Self
pub fn set_created_by(self, input: Option<String>) -> Self
The principal that created the service.
Determines whether to use Amazon ECS managed tags for the tasks in the service. For more information, see Tagging Your Amazon ECS Resources in the Amazon Elastic Container Service Developer Guide.
Determines whether to use Amazon ECS managed tags for the tasks in the service. For more information, see Tagging Your Amazon ECS Resources in the Amazon Elastic Container Service Developer Guide.
Determines whether to propagate the tags from the task definition or the service to the task. If no value is specified, the tags aren't propagated.
Determines whether to propagate the tags from the task definition or the service to the task. If no value is specified, the tags aren't propagated.
sourcepub fn enable_execute_command(self, input: bool) -> Self
pub fn enable_execute_command(self, input: bool) -> Self
Determines whether the execute command functionality is enabled for the service. If true
, the execute command functionality is enabled for all containers in tasks as part of the service.
sourcepub fn set_enable_execute_command(self, input: Option<bool>) -> Self
pub fn set_enable_execute_command(self, input: Option<bool>) -> Self
Determines whether the execute command functionality is enabled for the service. If true
, the execute command functionality is enabled for all containers in tasks as part of the service.
Trait Implementations
impl StructuralPartialEq for Builder
Auto Trait Implementations
impl RefUnwindSafe for Builder
impl Send for Builder
impl Sync for Builder
impl Unpin for Builder
impl UnwindSafe for Builder
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
sourceimpl<T> WithSubscriber for T
impl<T> WithSubscriber for T
sourcefn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
sourcefn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more