Struct aws_sdk_ssm::input::CreateAssociationInput
source · [−]#[non_exhaustive]pub struct CreateAssociationInput {Show 16 fields
pub name: Option<String>,
pub document_version: Option<String>,
pub instance_id: Option<String>,
pub parameters: Option<HashMap<String, Vec<String>>>,
pub targets: Option<Vec<Target>>,
pub schedule_expression: Option<String>,
pub output_location: Option<InstanceAssociationOutputLocation>,
pub association_name: Option<String>,
pub automation_target_parameter_name: Option<String>,
pub max_errors: Option<String>,
pub max_concurrency: Option<String>,
pub compliance_severity: Option<AssociationComplianceSeverity>,
pub sync_compliance: Option<AssociationSyncCompliance>,
pub apply_only_at_cron_interval: bool,
pub calendar_names: Option<Vec<String>>,
pub target_locations: Option<Vec<TargetLocation>>,
}
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.name: Option<String>
The name of the SSM Command document or Automation runbook that contains the configuration information for the managed node.
You can specify Amazon Web Services-predefined documents, documents you created, or a document that is shared with you from another account.
For Systems Manager documents (SSM documents) that are shared with you from other Amazon Web Services accounts, you must specify the complete SSM document ARN, in the following format:
arn:partition:ssm:region:account-id:document/document-name
For example:
arn:aws:ssm:us-east-2:12345678912:document/My-Shared-Document
For Amazon Web Services-predefined documents and SSM documents you created in your account, you only need to specify the document name. For example, AWS-ApplyPatchBaseline
or My-Document
.
document_version: Option<String>
The document version you want to associate with the target(s). Can be a specific version or the default version.
State Manager doesn't support running associations that use a new version of a document if that document is shared from another account. State Manager always runs the default
version of a document if shared from another account, even though the Systems Manager console shows that a new version was processed. If you want to run an association using a new version of a document shared form another account, you must set the document version to default
.
instance_id: Option<String>
The managed node ID.
InstanceId
has been deprecated. To specify a managed node ID for an association, use the Targets
parameter. Requests that include the parameter InstanceID
with Systems Manager documents (SSM documents) that use schema version 2.0 or later will fail. In addition, if you use the parameter InstanceId
, you can't use the parameters AssociationName
, DocumentVersion
, MaxErrors
, MaxConcurrency
, OutputLocation
, or ScheduleExpression
. To use these parameters, you must use the Targets
parameter.
parameters: Option<HashMap<String, Vec<String>>>
The parameters for the runtime configuration of the document.
targets: Option<Vec<Target>>
The targets for the association. You can target managed nodes by using tags, Amazon Web Services resource groups, all managed nodes in an Amazon Web Services account, or individual managed node IDs. You can target all managed nodes in an Amazon Web Services account by specifying the InstanceIds
key with a value of *
. For more information about choosing targets for an association, see Using targets and rate controls with State Manager associations in the Amazon Web Services Systems Manager User Guide.
schedule_expression: Option<String>
A cron expression when the association will be applied to the target(s).
output_location: Option<InstanceAssociationOutputLocation>
An Amazon Simple Storage Service (Amazon S3) bucket where you want to store the output details of the request.
association_name: Option<String>
Specify a descriptive name for the association.
automation_target_parameter_name: Option<String>
Choose the parameter that will define how your automation will branch out. This target is required for associations that use an Automation runbook and target resources by using rate controls. Automation is a capability of Amazon Web Services Systems Manager.
max_errors: Option<String>
The number of errors that are allowed before the system stops sending requests to run the association on additional targets. You can specify either an absolute number of errors, for example 10, or a percentage of the target set, for example 10%. If you specify 3, for example, the system stops sending requests when the fourth error is received. If you specify 0, then the system stops sending requests after the first error is returned. If you run an association on 50 managed nodes and set MaxError
to 10%, then the system stops sending the request when the sixth error is received.
Executions that are already running an association when MaxErrors
is reached are allowed to complete, but some of these executions may fail as well. If you need to ensure that there won't be more than max-errors failed executions, set MaxConcurrency
to 1 so that executions proceed one at a time.
max_concurrency: Option<String>
The maximum number of targets allowed to run the association at the same time. You can specify a number, for example 10, or a percentage of the target set, for example 10%. The default value is 100%, which means all targets run the association at the same time.
If a new managed node starts and attempts to run an association while Systems Manager is running MaxConcurrency
associations, the association is allowed to run. During the next association interval, the new managed node will process its association within the limit specified for MaxConcurrency
.
compliance_severity: Option<AssociationComplianceSeverity>
The severity level to assign to the association.
sync_compliance: Option<AssociationSyncCompliance>
The mode for generating association compliance. You can specify AUTO
or MANUAL
. In AUTO
mode, the system uses the status of the association execution to determine the compliance status. If the association execution runs successfully, then the association is COMPLIANT
. If the association execution doesn't run successfully, the association is NON-COMPLIANT
.
In MANUAL
mode, you must specify the AssociationId
as a parameter for the PutComplianceItems
API operation. In this case, compliance data isn't managed by State Manager. It is managed by your direct call to the PutComplianceItems
API operation.
By default, all associations use AUTO
mode.
apply_only_at_cron_interval: bool
By default, when you create a new association, the system runs it immediately after it is created and then according to the schedule you specified. Specify this option if you don't want an association to run immediately after you create it. This parameter isn't supported for rate expressions.
calendar_names: Option<Vec<String>>
The names or Amazon Resource Names (ARNs) of the Change Calendar type documents you want to gate your associations under. The associations only run when that change calendar is open. For more information, see Amazon Web Services Systems Manager Change Calendar.
target_locations: Option<Vec<TargetLocation>>
A location is a combination of Amazon Web Services Regions and Amazon Web Services accounts where you want to run the association. Use this action to create an association in multiple Regions and multiple accounts.
Implementations
pub async fn make_operation(
&self,
_config: &Config
) -> Result<Operation<CreateAssociation, AwsErrorRetryPolicy>, BuildError>
pub async fn make_operation(
&self,
_config: &Config
) -> Result<Operation<CreateAssociation, AwsErrorRetryPolicy>, BuildError>
Consumes the builder and constructs an Operation<CreateAssociation
>
Creates a new builder-style object to manufacture CreateAssociationInput
The name of the SSM Command document or Automation runbook that contains the configuration information for the managed node.
You can specify Amazon Web Services-predefined documents, documents you created, or a document that is shared with you from another account.
For Systems Manager documents (SSM documents) that are shared with you from other Amazon Web Services accounts, you must specify the complete SSM document ARN, in the following format:
arn:partition:ssm:region:account-id:document/document-name
For example:
arn:aws:ssm:us-east-2:12345678912:document/My-Shared-Document
For Amazon Web Services-predefined documents and SSM documents you created in your account, you only need to specify the document name. For example, AWS-ApplyPatchBaseline
or My-Document
.
The document version you want to associate with the target(s). Can be a specific version or the default version.
State Manager doesn't support running associations that use a new version of a document if that document is shared from another account. State Manager always runs the default
version of a document if shared from another account, even though the Systems Manager console shows that a new version was processed. If you want to run an association using a new version of a document shared form another account, you must set the document version to default
.
The managed node ID.
InstanceId
has been deprecated. To specify a managed node ID for an association, use the Targets
parameter. Requests that include the parameter InstanceID
with Systems Manager documents (SSM documents) that use schema version 2.0 or later will fail. In addition, if you use the parameter InstanceId
, you can't use the parameters AssociationName
, DocumentVersion
, MaxErrors
, MaxConcurrency
, OutputLocation
, or ScheduleExpression
. To use these parameters, you must use the Targets
parameter.
The parameters for the runtime configuration of the document.
The targets for the association. You can target managed nodes by using tags, Amazon Web Services resource groups, all managed nodes in an Amazon Web Services account, or individual managed node IDs. You can target all managed nodes in an Amazon Web Services account by specifying the InstanceIds
key with a value of *
. For more information about choosing targets for an association, see Using targets and rate controls with State Manager associations in the Amazon Web Services Systems Manager User Guide.
A cron expression when the association will be applied to the target(s).
An Amazon Simple Storage Service (Amazon S3) bucket where you want to store the output details of the request.
Specify a descriptive name for the association.
Choose the parameter that will define how your automation will branch out. This target is required for associations that use an Automation runbook and target resources by using rate controls. Automation is a capability of Amazon Web Services Systems Manager.
The number of errors that are allowed before the system stops sending requests to run the association on additional targets. You can specify either an absolute number of errors, for example 10, or a percentage of the target set, for example 10%. If you specify 3, for example, the system stops sending requests when the fourth error is received. If you specify 0, then the system stops sending requests after the first error is returned. If you run an association on 50 managed nodes and set MaxError
to 10%, then the system stops sending the request when the sixth error is received.
Executions that are already running an association when MaxErrors
is reached are allowed to complete, but some of these executions may fail as well. If you need to ensure that there won't be more than max-errors failed executions, set MaxConcurrency
to 1 so that executions proceed one at a time.
The maximum number of targets allowed to run the association at the same time. You can specify a number, for example 10, or a percentage of the target set, for example 10%. The default value is 100%, which means all targets run the association at the same time.
If a new managed node starts and attempts to run an association while Systems Manager is running MaxConcurrency
associations, the association is allowed to run. During the next association interval, the new managed node will process its association within the limit specified for MaxConcurrency
.
The severity level to assign to the association.
The mode for generating association compliance. You can specify AUTO
or MANUAL
. In AUTO
mode, the system uses the status of the association execution to determine the compliance status. If the association execution runs successfully, then the association is COMPLIANT
. If the association execution doesn't run successfully, the association is NON-COMPLIANT
.
In MANUAL
mode, you must specify the AssociationId
as a parameter for the PutComplianceItems
API operation. In this case, compliance data isn't managed by State Manager. It is managed by your direct call to the PutComplianceItems
API operation.
By default, all associations use AUTO
mode.
By default, when you create a new association, the system runs it immediately after it is created and then according to the schedule you specified. Specify this option if you don't want an association to run immediately after you create it. This parameter isn't supported for rate expressions.
The names or Amazon Resource Names (ARNs) of the Change Calendar type documents you want to gate your associations under. The associations only run when that change calendar is open. For more information, see Amazon Web Services Systems Manager Change Calendar.
A location is a combination of Amazon Web Services Regions and Amazon Web Services accounts where you want to run the association. Use this action to create an association in multiple Regions and multiple accounts.
Trait Implementations
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
This method tests for !=
.
Auto Trait Implementations
impl RefUnwindSafe for CreateAssociationInput
impl Send for CreateAssociationInput
impl Sync for CreateAssociationInput
impl Unpin for CreateAssociationInput
impl UnwindSafe for CreateAssociationInput
Blanket Implementations
Mutably borrows from an owned value. Read more
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more