#[non_exhaustive]pub struct Cluster {Show 16 fields
pub cluster_arn: Option<String>,
pub cluster_name: Option<String>,
pub configuration: Option<ClusterConfiguration>,
pub status: Option<String>,
pub registered_container_instances_count: i32,
pub running_tasks_count: i32,
pub pending_tasks_count: i32,
pub active_services_count: i32,
pub statistics: Option<Vec<KeyValuePair>>,
pub tags: Option<Vec<Tag>>,
pub settings: Option<Vec<ClusterSetting>>,
pub capacity_providers: Option<Vec<String>>,
pub default_capacity_provider_strategy: Option<Vec<CapacityProviderStrategyItem>>,
pub attachments: Option<Vec<Attachment>>,
pub attachments_status: Option<String>,
pub service_connect_defaults: Option<ClusterServiceConnectDefaults>,
}
Expand description
A regional grouping of one or more container instances where you can run task requests. Each account receives a default cluster the first time you use the Amazon ECS service, but you may also create other clusters. Clusters may contain more than one instance type simultaneously.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. }
syntax; cannot be matched against without a wildcard ..
; and struct update syntax will not work.cluster_arn: Option<String>
The Amazon Resource Name (ARN) that identifies the cluster. For more information about the ARN format, see Amazon Resource Name (ARN) in the Amazon ECS Developer Guide.
cluster_name: Option<String>
A user-generated string that you use to identify your cluster.
configuration: Option<ClusterConfiguration>
The execute command and managed storage configuration for the cluster.
status: Option<String>
The status of the cluster. The following are the possible states that are returned.
- ACTIVE
-
The cluster is ready to accept tasks and if applicable you can register container instances with the cluster.
- PROVISIONING
-
The cluster has capacity providers that are associated with it and the resources needed for the capacity provider are being created.
- DEPROVISIONING
-
The cluster has capacity providers that are associated with it and the resources needed for the capacity provider are being deleted.
- FAILED
-
The cluster has capacity providers that are associated with it and the resources needed for the capacity provider have failed to create.
- INACTIVE
-
The cluster has been deleted. Clusters with an
INACTIVE
status may remain discoverable in your account for a period of time. However, this behavior is subject to change in the future. We don't recommend that you rely onINACTIVE
clusters persisting.
registered_container_instances_count: i32
The number of container instances registered into the cluster. This includes container instances in both ACTIVE
and DRAINING
status.
running_tasks_count: i32
The number of tasks in the cluster that are in the RUNNING
state.
pending_tasks_count: i32
The number of tasks in the cluster that are in the PENDING
state.
active_services_count: i32
The number of services that are running on the cluster in an ACTIVE
state. You can view these services with PListServices.
statistics: Option<Vec<KeyValuePair>>
Additional information about your clusters that are separated by launch type. They include the following:
-
runningEC2TasksCount
-
RunningFargateTasksCount
-
pendingEC2TasksCount
-
pendingFargateTasksCount
-
activeEC2ServiceCount
-
activeFargateServiceCount
-
drainingEC2ServiceCount
-
drainingFargateServiceCount
The metadata that you apply to the cluster to help you categorize and organize them. Each tag consists of a key and an optional value. You define both.
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.
settings: Option<Vec<ClusterSetting>>
The settings for the cluster. This parameter indicates whether CloudWatch Container Insights is on or off for a cluster.
capacity_providers: Option<Vec<String>>
The capacity providers associated with the cluster.
default_capacity_provider_strategy: Option<Vec<CapacityProviderStrategyItem>>
The default capacity provider strategy for the cluster. When services or tasks are run in the cluster with no launch type or capacity provider strategy specified, the default capacity provider strategy is used.
attachments: Option<Vec<Attachment>>
The resources attached to a cluster. When using a capacity provider with a cluster, the capacity provider and associated resources are returned as cluster attachments.
attachments_status: Option<String>
The status of the capacity providers associated with the cluster. The following are the states that are returned.
- UPDATE_IN_PROGRESS
-
The available capacity providers for the cluster are updating.
- UPDATE_COMPLETE
-
The capacity providers have successfully updated.
- UPDATE_FAILED
-
The capacity provider updates failed.
service_connect_defaults: Option<ClusterServiceConnectDefaults>
Use this parameter to set a default Service Connect namespace. After you set a default Service Connect namespace, any new services with Service Connect turned on that are created in the cluster are added as client services in the namespace. This setting only applies to new services that set the enabled
parameter to true
in the ServiceConnectConfiguration
. You can set the namespace of each service individually in the ServiceConnectConfiguration
to override this default parameter.
Tasks that run in a namespace can use short names to connect to services in the namespace. Tasks can connect to services across all of the clusters in the namespace. Tasks connect through a managed proxy container that collects logs and metrics for increased visibility. Only the tasks that Amazon ECS services create are supported with Service Connect. For more information, see Service Connect in the Amazon Elastic Container Service Developer Guide.
Implementations§
Source§impl Cluster
impl Cluster
Sourcepub fn cluster_arn(&self) -> Option<&str>
pub fn cluster_arn(&self) -> Option<&str>
The Amazon Resource Name (ARN) that identifies the cluster. For more information about the ARN format, see Amazon Resource Name (ARN) in the Amazon ECS Developer Guide.
Sourcepub fn cluster_name(&self) -> Option<&str>
pub fn cluster_name(&self) -> Option<&str>
A user-generated string that you use to identify your cluster.
Sourcepub fn configuration(&self) -> Option<&ClusterConfiguration>
pub fn configuration(&self) -> Option<&ClusterConfiguration>
The execute command and managed storage configuration for the cluster.
Sourcepub fn status(&self) -> Option<&str>
pub fn status(&self) -> Option<&str>
The status of the cluster. The following are the possible states that are returned.
- ACTIVE
-
The cluster is ready to accept tasks and if applicable you can register container instances with the cluster.
- PROVISIONING
-
The cluster has capacity providers that are associated with it and the resources needed for the capacity provider are being created.
- DEPROVISIONING
-
The cluster has capacity providers that are associated with it and the resources needed for the capacity provider are being deleted.
- FAILED
-
The cluster has capacity providers that are associated with it and the resources needed for the capacity provider have failed to create.
- INACTIVE
-
The cluster has been deleted. Clusters with an
INACTIVE
status may remain discoverable in your account for a period of time. However, this behavior is subject to change in the future. We don't recommend that you rely onINACTIVE
clusters persisting.
Sourcepub fn registered_container_instances_count(&self) -> i32
pub fn registered_container_instances_count(&self) -> i32
The number of container instances registered into the cluster. This includes container instances in both ACTIVE
and DRAINING
status.
Sourcepub fn running_tasks_count(&self) -> i32
pub fn running_tasks_count(&self) -> i32
The number of tasks in the cluster that are in the RUNNING
state.
Sourcepub fn pending_tasks_count(&self) -> i32
pub fn pending_tasks_count(&self) -> i32
The number of tasks in the cluster that are in the PENDING
state.
Sourcepub fn active_services_count(&self) -> i32
pub fn active_services_count(&self) -> i32
The number of services that are running on the cluster in an ACTIVE
state. You can view these services with PListServices.
Sourcepub fn statistics(&self) -> &[KeyValuePair]
pub fn statistics(&self) -> &[KeyValuePair]
Additional information about your clusters that are separated by launch type. They include the following:
-
runningEC2TasksCount
-
RunningFargateTasksCount
-
pendingEC2TasksCount
-
pendingFargateTasksCount
-
activeEC2ServiceCount
-
activeFargateServiceCount
-
drainingEC2ServiceCount
-
drainingFargateServiceCount
If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use .statistics.is_none()
.
The metadata that you apply to the cluster to help you categorize and organize them. Each tag consists of a key and an optional value. You define both.
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.
If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use .tags.is_none()
.
Sourcepub fn settings(&self) -> &[ClusterSetting]
pub fn settings(&self) -> &[ClusterSetting]
The settings for the cluster. This parameter indicates whether CloudWatch Container Insights is on or off for a cluster.
If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use .settings.is_none()
.
Sourcepub fn capacity_providers(&self) -> &[String]
pub fn capacity_providers(&self) -> &[String]
The capacity providers associated with the cluster.
If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use .capacity_providers.is_none()
.
Sourcepub fn default_capacity_provider_strategy(
&self,
) -> &[CapacityProviderStrategyItem]
pub fn default_capacity_provider_strategy( &self, ) -> &[CapacityProviderStrategyItem]
The default capacity provider strategy for the cluster. When services or tasks are run in the cluster with no launch type or capacity provider strategy specified, the default capacity provider strategy is used.
If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use .default_capacity_provider_strategy.is_none()
.
Sourcepub fn attachments(&self) -> &[Attachment]
pub fn attachments(&self) -> &[Attachment]
The resources attached to a cluster. When using a capacity provider with a cluster, the capacity provider and associated resources are returned as cluster attachments.
If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use .attachments.is_none()
.
Sourcepub fn attachments_status(&self) -> Option<&str>
pub fn attachments_status(&self) -> Option<&str>
The status of the capacity providers associated with the cluster. The following are the states that are returned.
- UPDATE_IN_PROGRESS
-
The available capacity providers for the cluster are updating.
- UPDATE_COMPLETE
-
The capacity providers have successfully updated.
- UPDATE_FAILED
-
The capacity provider updates failed.
Sourcepub fn service_connect_defaults(&self) -> Option<&ClusterServiceConnectDefaults>
pub fn service_connect_defaults(&self) -> Option<&ClusterServiceConnectDefaults>
Use this parameter to set a default Service Connect namespace. After you set a default Service Connect namespace, any new services with Service Connect turned on that are created in the cluster are added as client services in the namespace. This setting only applies to new services that set the enabled
parameter to true
in the ServiceConnectConfiguration
. You can set the namespace of each service individually in the ServiceConnectConfiguration
to override this default parameter.
Tasks that run in a namespace can use short names to connect to services in the namespace. Tasks can connect to services across all of the clusters in the namespace. Tasks connect through a managed proxy container that collects logs and metrics for increased visibility. Only the tasks that Amazon ECS services create are supported with Service Connect. For more information, see Service Connect in the Amazon Elastic Container Service Developer Guide.
Trait Implementations§
impl StructuralPartialEq for Cluster
Auto Trait Implementations§
impl Freeze for Cluster
impl RefUnwindSafe for Cluster
impl Send for Cluster
impl Sync for Cluster
impl Unpin for Cluster
impl UnwindSafe for Cluster
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Paint for Twhere
T: ?Sized,
impl<T> Paint for Twhere
T: ?Sized,
Source§fn fg(&self, value: Color) -> Painted<&T>
fn fg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self
with the foreground set to
value
.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like red()
and
green()
, which have the same functionality but are
pithier.
§Example
Set foreground color to white using fg()
:
use yansi::{Paint, Color};
painted.fg(Color::White);
Set foreground color to white using white()
.
use yansi::Paint;
painted.white();
Source§fn bright_black(&self) -> Painted<&T>
fn bright_black(&self) -> Painted<&T>
Source§fn bright_red(&self) -> Painted<&T>
fn bright_red(&self) -> Painted<&T>
Source§fn bright_green(&self) -> Painted<&T>
fn bright_green(&self) -> Painted<&T>
Source§fn bright_yellow(&self) -> Painted<&T>
fn bright_yellow(&self) -> Painted<&T>
Source§fn bright_blue(&self) -> Painted<&T>
fn bright_blue(&self) -> Painted<&T>
Source§fn bright_magenta(&self) -> Painted<&T>
fn bright_magenta(&self) -> Painted<&T>
Source§fn bright_cyan(&self) -> Painted<&T>
fn bright_cyan(&self) -> Painted<&T>
Source§fn bright_white(&self) -> Painted<&T>
fn bright_white(&self) -> Painted<&T>
Source§fn bg(&self, value: Color) -> Painted<&T>
fn bg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self
with the background set to
value
.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like on_red()
and
on_green()
, which have the same functionality but
are pithier.
§Example
Set background color to red using fg()
:
use yansi::{Paint, Color};
painted.bg(Color::Red);
Set background color to red using on_red()
.
use yansi::Paint;
painted.on_red();
Source§fn on_primary(&self) -> Painted<&T>
fn on_primary(&self) -> Painted<&T>
Source§fn on_magenta(&self) -> Painted<&T>
fn on_magenta(&self) -> Painted<&T>
Source§fn on_bright_black(&self) -> Painted<&T>
fn on_bright_black(&self) -> Painted<&T>
Source§fn on_bright_red(&self) -> Painted<&T>
fn on_bright_red(&self) -> Painted<&T>
Source§fn on_bright_green(&self) -> Painted<&T>
fn on_bright_green(&self) -> Painted<&T>
Source§fn on_bright_yellow(&self) -> Painted<&T>
fn on_bright_yellow(&self) -> Painted<&T>
Source§fn on_bright_blue(&self) -> Painted<&T>
fn on_bright_blue(&self) -> Painted<&T>
Source§fn on_bright_magenta(&self) -> Painted<&T>
fn on_bright_magenta(&self) -> Painted<&T>
Source§fn on_bright_cyan(&self) -> Painted<&T>
fn on_bright_cyan(&self) -> Painted<&T>
Source§fn on_bright_white(&self) -> Painted<&T>
fn on_bright_white(&self) -> Painted<&T>
Source§fn attr(&self, value: Attribute) -> Painted<&T>
fn attr(&self, value: Attribute) -> Painted<&T>
Enables the styling Attribute
value
.
This method should be used rarely. Instead, prefer to use
attribute-specific builder methods like bold()
and
underline()
, which have the same functionality
but are pithier.
§Example
Make text bold using attr()
:
use yansi::{Paint, Attribute};
painted.attr(Attribute::Bold);
Make text bold using using bold()
.
use yansi::Paint;
painted.bold();
Source§fn rapid_blink(&self) -> Painted<&T>
fn rapid_blink(&self) -> Painted<&T>
Source§fn quirk(&self, value: Quirk) -> Painted<&T>
fn quirk(&self, value: Quirk) -> Painted<&T>
Enables the yansi
Quirk
value
.
This method should be used rarely. Instead, prefer to use quirk-specific
builder methods like mask()
and
wrap()
, which have the same functionality but are
pithier.
§Example
Enable wrapping using .quirk()
:
use yansi::{Paint, Quirk};
painted.quirk(Quirk::Wrap);
Enable wrapping using wrap()
.
use yansi::Paint;
painted.wrap();
Source§fn clear(&self) -> Painted<&T>
👎Deprecated since 1.0.1: renamed to resetting()
due to conflicts with Vec::clear()
.
The clear()
method will be removed in a future release.
fn clear(&self) -> Painted<&T>
resetting()
due to conflicts with Vec::clear()
.
The clear()
method will be removed in a future release.Source§fn whenever(&self, value: Condition) -> Painted<&T>
fn whenever(&self, value: Condition) -> Painted<&T>
Conditionally enable styling based on whether the Condition
value
applies. Replaces any previous condition.
See the crate level docs for more details.
§Example
Enable styling painted
only when both stdout
and stderr
are TTYs:
use yansi::{Paint, Condition};
painted.red().on_yellow().whenever(Condition::STDOUTERR_ARE_TTY);