AWS SDK

AWS SDK

rev. 3388bf5e18f4269f2b46f39cdc814c5c39d413d0

Files changed:

tmp-codegen-diff/aws-sdk/sdk/ssm/src/client/cancel_maintenance_window_execution.rs

@@ -0,1 +0,15 @@
           1  +
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
impl super::Client {
           3  +
    /// Constructs a fluent builder for the [`CancelMaintenanceWindowExecution`](crate::operation::cancel_maintenance_window_execution::builders::CancelMaintenanceWindowExecutionFluentBuilder) operation.
           4  +
    ///
           5  +
    /// - The fluent builder is configurable:
           6  +
    ///   - [`window_execution_id(impl Into<String>)`](crate::operation::cancel_maintenance_window_execution::builders::CancelMaintenanceWindowExecutionFluentBuilder::window_execution_id) / [`set_window_execution_id(Option<String>)`](crate::operation::cancel_maintenance_window_execution::builders::CancelMaintenanceWindowExecutionFluentBuilder::set_window_execution_id):<br>required: **true**<br><p>The ID of the maintenance window execution to stop.</p><br>
           7  +
    /// - On success, responds with [`CancelMaintenanceWindowExecutionOutput`](crate::operation::cancel_maintenance_window_execution::CancelMaintenanceWindowExecutionOutput) with field(s):
           8  +
    ///   - [`window_execution_id(Option<String>)`](crate::operation::cancel_maintenance_window_execution::CancelMaintenanceWindowExecutionOutput::window_execution_id): <p>The ID of the maintenance window execution that has been stopped.</p>
           9  +
    /// - On failure, responds with [`SdkError<CancelMaintenanceWindowExecutionError>`](crate::operation::cancel_maintenance_window_execution::CancelMaintenanceWindowExecutionError)
          10  +
    pub fn cancel_maintenance_window_execution(
          11  +
        &self,
          12  +
    ) -> crate::operation::cancel_maintenance_window_execution::builders::CancelMaintenanceWindowExecutionFluentBuilder {
          13  +
        crate::operation::cancel_maintenance_window_execution::builders::CancelMaintenanceWindowExecutionFluentBuilder::new(self.handle.clone())
          14  +
    }
          15  +
}

tmp-codegen-diff/aws-sdk/sdk/ssm/src/client/create_activation.rs

@@ -0,1 +0,20 @@
           1  +
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
impl super::Client {
           3  +
    /// Constructs a fluent builder for the [`CreateActivation`](crate::operation::create_activation::builders::CreateActivationFluentBuilder) operation.
           4  +
    ///
           5  +
    /// - The fluent builder is configurable:
           6  +
    ///   - [`description(impl Into<String>)`](crate::operation::create_activation::builders::CreateActivationFluentBuilder::description) / [`set_description(Option<String>)`](crate::operation::create_activation::builders::CreateActivationFluentBuilder::set_description):<br>required: **false**<br><p>A user-defined description of the resource that you want to register with Systems Manager.</p><important>  <p>Don't enter personally identifiable information in this field.</p> </important><br>
           7  +
    ///   - [`default_instance_name(impl Into<String>)`](crate::operation::create_activation::builders::CreateActivationFluentBuilder::default_instance_name) / [`set_default_instance_name(Option<String>)`](crate::operation::create_activation::builders::CreateActivationFluentBuilder::set_default_instance_name):<br>required: **false**<br><p>The name of the registered, managed node as it will appear in the Amazon Web Services Systems Manager console or when you use the Amazon Web Services command line tools to list Systems Manager resources.</p><important>  <p>Don't enter personally identifiable information in this field.</p> </important><br>
           8  +
    ///   - [`iam_role(impl Into<String>)`](crate::operation::create_activation::builders::CreateActivationFluentBuilder::iam_role) / [`set_iam_role(Option<String>)`](crate::operation::create_activation::builders::CreateActivationFluentBuilder::set_iam_role):<br>required: **true**<br><p>The name of the Identity and Access Management (IAM) role that you want to assign to the managed node. This IAM role must provide AssumeRole permissions for the Amazon Web Services Systems Manager service principal <code>ssm.amazonaws.com</code>. For more information, see <a href="https://docs.aws.amazon.com/systems-manager/latest/userguide/hybrid-multicloud-service-role.html">Create the IAM service role required for Systems Manager in a hybrid and multicloud environments</a> in the <i>Amazon Web Services Systems Manager User Guide</i>.</p><note>  <p>You can't specify an IAM service-linked role for this parameter. You must create a unique role.</p> </note><br>
           9  +
    ///   - [`registration_limit(i32)`](crate::operation::create_activation::builders::CreateActivationFluentBuilder::registration_limit) / [`set_registration_limit(Option<i32>)`](crate::operation::create_activation::builders::CreateActivationFluentBuilder::set_registration_limit):<br>required: **false**<br><p>Specify the maximum number of managed nodes you want to register. The default value is <code>1</code>.</p><br>
          10  +
    ///   - [`expiration_date(DateTime)`](crate::operation::create_activation::builders::CreateActivationFluentBuilder::expiration_date) / [`set_expiration_date(Option<DateTime>)`](crate::operation::create_activation::builders::CreateActivationFluentBuilder::set_expiration_date):<br>required: **false**<br><p>The date by which this activation request should expire, in timestamp format, such as "2024-07-07T00:00:00". You can specify a date up to 30 days in advance. If you don't provide an expiration date, the activation code expires in 24 hours.</p><br>
          11  +
    ///   - [`tags(Tag)`](crate::operation::create_activation::builders::CreateActivationFluentBuilder::tags) / [`set_tags(Option<Vec::<Tag>>)`](crate::operation::create_activation::builders::CreateActivationFluentBuilder::set_tags):<br>required: **false**<br><p>Optional metadata that you assign to a resource. Tags enable you to categorize a resource in different ways, such as by purpose, owner, or environment. For example, you might want to tag an activation to identify which servers or virtual machines (VMs) in your on-premises environment you intend to activate. In this case, you could specify the following key-value pairs:</p> <ul>  <li>   <p><code>Key=OS,Value=Windows</code></p></li>  <li>   <p><code>Key=Environment,Value=Production</code></p></li> </ul><important>  <p>When you install SSM Agent on your on-premises servers and VMs, you specify an activation ID and code. When you specify the activation ID and code, tags assigned to the activation are automatically applied to the on-premises servers or VMs.</p> </important> <p>You can't add tags to or delete tags from an existing activation. You can tag your on-premises servers, edge devices, and VMs after they connect to Systems Manager for the first time and are assigned a managed node ID. This means they are listed in the Amazon Web Services Systems Manager console with an ID that is prefixed with "mi-". For information about how to add tags to your managed nodes, see <code>AddTagsToResource</code>. For information about how to remove tags from your managed nodes, see <code>RemoveTagsFromResource</code>.</p><br>
          12  +
    ///   - [`registration_metadata(RegistrationMetadataItem)`](crate::operation::create_activation::builders::CreateActivationFluentBuilder::registration_metadata) / [`set_registration_metadata(Option<Vec::<RegistrationMetadataItem>>)`](crate::operation::create_activation::builders::CreateActivationFluentBuilder::set_registration_metadata):<br>required: **false**<br><p>Reserved for internal use.</p><br>
          13  +
    /// - On success, responds with [`CreateActivationOutput`](crate::operation::create_activation::CreateActivationOutput) with field(s):
          14  +
    ///   - [`activation_id(Option<String>)`](crate::operation::create_activation::CreateActivationOutput::activation_id): <p>The ID number generated by the system when it processed the activation. The activation ID functions like a user name.</p>
          15  +
    ///   - [`activation_code(Option<String>)`](crate::operation::create_activation::CreateActivationOutput::activation_code): <p>The code the system generates when it processes the activation. The activation code functions like a password to validate the activation ID.</p>
          16  +
    /// - On failure, responds with [`SdkError<CreateActivationError>`](crate::operation::create_activation::CreateActivationError)
          17  +
    pub fn create_activation(&self) -> crate::operation::create_activation::builders::CreateActivationFluentBuilder {
          18  +
        crate::operation::create_activation::builders::CreateActivationFluentBuilder::new(self.handle.clone())
          19  +
    }
          20  +
}

tmp-codegen-diff/aws-sdk/sdk/ssm/src/client/create_association.rs

@@ -0,1 +0,34 @@
           1  +
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
impl super::Client {
           3  +
    /// Constructs a fluent builder for the [`CreateAssociation`](crate::operation::create_association::builders::CreateAssociationFluentBuilder) operation.
           4  +
    ///
           5  +
    /// - The fluent builder is configurable:
           6  +
    ///   - [`name(impl Into<String>)`](crate::operation::create_association::builders::CreateAssociationFluentBuilder::name) / [`set_name(Option<String>)`](crate::operation::create_association::builders::CreateAssociationFluentBuilder::set_name):<br>required: **true**<br><p>The name of the SSM Command document or Automation runbook that contains the configuration information for the managed node.</p> <p>You can specify Amazon Web Services-predefined documents, documents you created, or a document that is shared with you from another Amazon Web Services account.</p> <p>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:</p> <p><code>arn:<i>partition</i>:ssm:<i>region</i>:<i>account-id</i>:document/<i>document-name</i> </code></p> <p>For example:</p> <p><code>arn:aws:ssm:us-east-2:12345678912:document/My-Shared-Document</code></p> <p>For Amazon Web Services-predefined documents and SSM documents you created in your account, you only need to specify the document name. For example, <code>AWS-ApplyPatchBaseline</code> or <code>My-Document</code>.</p><br>
           7  +
    ///   - [`document_version(impl Into<String>)`](crate::operation::create_association::builders::CreateAssociationFluentBuilder::document_version) / [`set_document_version(Option<String>)`](crate::operation::create_association::builders::CreateAssociationFluentBuilder::set_document_version):<br>required: **false**<br><p>The document version you want to associate with the targets. Can be a specific version or the default version.</p><important>  <p>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 <code>default</code> 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 <code>default</code>.</p> </important><br>
           8  +
    ///   - [`instance_id(impl Into<String>)`](crate::operation::create_association::builders::CreateAssociationFluentBuilder::instance_id) / [`set_instance_id(Option<String>)`](crate::operation::create_association::builders::CreateAssociationFluentBuilder::set_instance_id):<br>required: **false**<br><p>The managed node ID.</p><note>  <p><code>InstanceId</code> has been deprecated. To specify a managed node ID for an association, use the <code>Targets</code> parameter. Requests that include the parameter <code>InstanceID</code> with Systems Manager documents (SSM documents) that use schema version 2.0 or later will fail. In addition, if you use the parameter <code>InstanceId</code>, you can't use the parameters <code>AssociationName</code>, <code>DocumentVersion</code>, <code>MaxErrors</code>, <code>MaxConcurrency</code>, <code>OutputLocation</code>, or <code>ScheduleExpression</code>. To use these parameters, you must use the <code>Targets</code> parameter.</p> </note><br>
           9  +
    ///   - [`parameters(impl Into<String>, Vec::<String>)`](crate::operation::create_association::builders::CreateAssociationFluentBuilder::parameters) / [`set_parameters(Option<HashMap::<String, Vec::<String>>>)`](crate::operation::create_association::builders::CreateAssociationFluentBuilder::set_parameters):<br>required: **false**<br><p>The parameters for the runtime configuration of the document.</p><br>
          10  +
    ///   - [`targets(Target)`](crate::operation::create_association::builders::CreateAssociationFluentBuilder::targets) / [`set_targets(Option<Vec::<Target>>)`](crate::operation::create_association::builders::CreateAssociationFluentBuilder::set_targets):<br>required: **false**<br><p>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 <code>InstanceIds</code> key with a value of <code>*</code>. For more information about choosing targets for an association, see <a href="https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-state-manager-targets-and-rate-controls.html">Understanding targets and rate controls in State Manager associations</a> in the <i>Amazon Web Services Systems Manager User Guide</i>.</p><br>
          11  +
    ///   - [`schedule_expression(impl Into<String>)`](crate::operation::create_association::builders::CreateAssociationFluentBuilder::schedule_expression) / [`set_schedule_expression(Option<String>)`](crate::operation::create_association::builders::CreateAssociationFluentBuilder::set_schedule_expression):<br>required: **false**<br><p>A cron expression when the association will be applied to the targets.</p><br>
          12  +
    ///   - [`output_location(InstanceAssociationOutputLocation)`](crate::operation::create_association::builders::CreateAssociationFluentBuilder::output_location) / [`set_output_location(Option<InstanceAssociationOutputLocation>)`](crate::operation::create_association::builders::CreateAssociationFluentBuilder::set_output_location):<br>required: **false**<br><p>An Amazon Simple Storage Service (Amazon S3) bucket where you want to store the output details of the request.</p><br>
          13  +
    ///   - [`association_name(impl Into<String>)`](crate::operation::create_association::builders::CreateAssociationFluentBuilder::association_name) / [`set_association_name(Option<String>)`](crate::operation::create_association::builders::CreateAssociationFluentBuilder::set_association_name):<br>required: **false**<br><p>Specify a descriptive name for the association.</p><br>
          14  +
    ///   - [`automation_target_parameter_name(impl Into<String>)`](crate::operation::create_association::builders::CreateAssociationFluentBuilder::automation_target_parameter_name) / [`set_automation_target_parameter_name(Option<String>)`](crate::operation::create_association::builders::CreateAssociationFluentBuilder::set_automation_target_parameter_name):<br>required: **false**<br><p>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 tool in Amazon Web Services Systems Manager.</p><br>
          15  +
    ///   - [`max_errors(impl Into<String>)`](crate::operation::create_association::builders::CreateAssociationFluentBuilder::max_errors) / [`set_max_errors(Option<String>)`](crate::operation::create_association::builders::CreateAssociationFluentBuilder::set_max_errors):<br>required: **false**<br><p>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 <code>MaxError</code> to 10%, then the system stops sending the request when the sixth error is received.</p> <p>Executions that are already running an association when <code>MaxErrors</code> 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 <code>MaxConcurrency</code> to 1 so that executions proceed one at a time.</p><br>
          16  +
    ///   - [`max_concurrency(impl Into<String>)`](crate::operation::create_association::builders::CreateAssociationFluentBuilder::max_concurrency) / [`set_max_concurrency(Option<String>)`](crate::operation::create_association::builders::CreateAssociationFluentBuilder::set_max_concurrency):<br>required: **false**<br><p>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.</p> <p>If a new managed node starts and attempts to run an association while Systems Manager is running <code>MaxConcurrency</code> 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 <code>MaxConcurrency</code>.</p><br>
          17  +
    ///   - [`compliance_severity(AssociationComplianceSeverity)`](crate::operation::create_association::builders::CreateAssociationFluentBuilder::compliance_severity) / [`set_compliance_severity(Option<AssociationComplianceSeverity>)`](crate::operation::create_association::builders::CreateAssociationFluentBuilder::set_compliance_severity):<br>required: **false**<br><p>The severity level to assign to the association.</p><br>
          18  +
    ///   - [`sync_compliance(AssociationSyncCompliance)`](crate::operation::create_association::builders::CreateAssociationFluentBuilder::sync_compliance) / [`set_sync_compliance(Option<AssociationSyncCompliance>)`](crate::operation::create_association::builders::CreateAssociationFluentBuilder::set_sync_compliance):<br>required: **false**<br><p>The mode for generating association compliance. You can specify <code>AUTO</code> or <code>MANUAL</code>. In <code>AUTO</code> 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 <code>COMPLIANT</code>. If the association execution doesn't run successfully, the association is <code>NON-COMPLIANT</code>.</p> <p>In <code>MANUAL</code> mode, you must specify the <code>AssociationId</code> as a parameter for the <code>PutComplianceItems</code> API operation. In this case, compliance data isn't managed by State Manager. It is managed by your direct call to the <code>PutComplianceItems</code> API operation.</p> <p>By default, all associations use <code>AUTO</code> mode.</p><br>
          19  +
    ///   - [`apply_only_at_cron_interval(bool)`](crate::operation::create_association::builders::CreateAssociationFluentBuilder::apply_only_at_cron_interval) / [`set_apply_only_at_cron_interval(Option<bool>)`](crate::operation::create_association::builders::CreateAssociationFluentBuilder::set_apply_only_at_cron_interval):<br>required: **false**<br><p>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 and when target changes are detected. Specify <code>true</code> for <code>ApplyOnlyAtCronInterval</code>if you want the association to run only according to the schedule you specified.</p> <p>For more information, see <a href="https://docs.aws.amazon.com/systems-manager/latest/userguide/state-manager-about.html#state-manager-about-scheduling">Understanding when associations are applied to resources</a> and <a href="https://docs.aws.amazon.com/systems-manager/latest/userguide/state-manager-about.html#runbook-target-updates">&gt;About target updates with Automation runbooks</a> in the <i>Amazon Web Services Systems Manager User Guide</i>.</p> <p>This parameter isn't supported for rate expressions.</p><br>
          20  +
    ///   - [`calendar_names(impl Into<String>)`](crate::operation::create_association::builders::CreateAssociationFluentBuilder::calendar_names) / [`set_calendar_names(Option<Vec::<String>>)`](crate::operation::create_association::builders::CreateAssociationFluentBuilder::set_calendar_names):<br>required: **false**<br><p>The names of 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 <a href="https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-change-calendar">Amazon Web Services Systems Manager Change Calendar</a> in the <i>Amazon Web Services Systems Manager User Guide</i>.</p><br>
          21  +
    ///   - [`target_locations(TargetLocation)`](crate::operation::create_association::builders::CreateAssociationFluentBuilder::target_locations) / [`set_target_locations(Option<Vec::<TargetLocation>>)`](crate::operation::create_association::builders::CreateAssociationFluentBuilder::set_target_locations):<br>required: **false**<br><p>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.</p><note>  <p>The <code>TargetLocationAlarmConfiguration</code> parameter is not supported by State Manager.</p> </note><br>
          22  +
    ///   - [`schedule_offset(i32)`](crate::operation::create_association::builders::CreateAssociationFluentBuilder::schedule_offset) / [`set_schedule_offset(Option<i32>)`](crate::operation::create_association::builders::CreateAssociationFluentBuilder::set_schedule_offset):<br>required: **false**<br><p>Number of days to wait after the scheduled day to run an association. For example, if you specified a cron schedule of <code>cron(0 0 ? * THU#2 *)</code>, you could specify an offset of 3 to run the association each Sunday after the second Thursday of the month. For more information about cron schedules for associations, see <a href="https://docs.aws.amazon.com/systems-manager/latest/userguide/reference-cron-and-rate-expressions.html">Reference: Cron and rate expressions for Systems Manager</a> in the <i>Amazon Web Services Systems Manager User Guide</i>.</p><note>  <p>To use offsets, you must specify the <code>ApplyOnlyAtCronInterval</code> parameter. This option tells the system not to run an association immediately after you create it.</p> </note><br>
          23  +
    ///   - [`duration(i32)`](crate::operation::create_association::builders::CreateAssociationFluentBuilder::duration) / [`set_duration(Option<i32>)`](crate::operation::create_association::builders::CreateAssociationFluentBuilder::set_duration):<br>required: **false**<br><p>The number of hours the association can run before it is canceled. Duration applies to associations that are currently running, and any pending and in progress commands on all targets. If a target was taken offline for the association to run, it is made available again immediately, without a reboot.</p> <p>The <code>Duration</code> parameter applies only when both these conditions are true:</p> <ul>  <li>   <p>The association for which you specify a duration is cancelable according to the parameters of the SSM command document or Automation runbook associated with this execution.</p></li>  <li>   <p>The command specifies the <code> <a href="https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_CreateAssociation.html#systemsmanager-CreateAssociation-request-ApplyOnlyAtCronInterval">ApplyOnlyAtCronInterval</a> </code> parameter, which means that the association doesn't run immediately after it is created, but only according to the specified schedule.</p></li> </ul><br>
          24  +
    ///   - [`target_maps(HashMap::<String, Vec::<String>>)`](crate::operation::create_association::builders::CreateAssociationFluentBuilder::target_maps) / [`set_target_maps(Option<Vec::<HashMap::<String, Vec::<String>>>>)`](crate::operation::create_association::builders::CreateAssociationFluentBuilder::set_target_maps):<br>required: **false**<br><p>A key-value mapping of document parameters to target resources. Both Targets and TargetMaps can't be specified together.</p><br>
          25  +
    ///   - [`tags(Tag)`](crate::operation::create_association::builders::CreateAssociationFluentBuilder::tags) / [`set_tags(Option<Vec::<Tag>>)`](crate::operation::create_association::builders::CreateAssociationFluentBuilder::set_tags):<br>required: **false**<br><p>Adds or overwrites one or more tags for a State Manager association. <i>Tags</i> are metadata that you can assign to your Amazon Web Services resources. Tags enable you to categorize your resources in different ways, for example, by purpose, owner, or environment. Each tag consists of a key and an optional value, both of which you define.</p><br>
          26  +
    ///   - [`alarm_configuration(AlarmConfiguration)`](crate::operation::create_association::builders::CreateAssociationFluentBuilder::alarm_configuration) / [`set_alarm_configuration(Option<AlarmConfiguration>)`](crate::operation::create_association::builders::CreateAssociationFluentBuilder::set_alarm_configuration):<br>required: **false**<br><p>The details for the CloudWatch alarm you want to apply to an automation or command.</p><br>
          27  +
    ///   - [`association_dispatch_assume_role(impl Into<String>)`](crate::operation::create_association::builders::CreateAssociationFluentBuilder::association_dispatch_assume_role) / [`set_association_dispatch_assume_role(Option<String>)`](crate::operation::create_association::builders::CreateAssociationFluentBuilder::set_association_dispatch_assume_role):<br>required: **false**<br><p>A role used by association to take actions on your behalf. State Manager will assume this role and call required APIs when dispatching configurations to nodes. If not specified, <a href="https://docs.aws.amazon.com/systems-manager/latest/userguide/using-service-linked-roles.html"> service-linked role for Systems Manager</a> will be used by default.</p><note>  <p>It is recommended that you define a custom IAM role so that you have full control of the permissions that State Manager has when taking actions on your behalf.</p>  <p>Service-linked role support in State Manager is being phased out. Associations relying on service-linked role may require updates in the future to continue functioning properly.</p> </note><br>
          28  +
    /// - On success, responds with [`CreateAssociationOutput`](crate::operation::create_association::CreateAssociationOutput) with field(s):
          29  +
    ///   - [`association_description(Option<AssociationDescription>)`](crate::operation::create_association::CreateAssociationOutput::association_description): <p>Information about the association.</p>
          30  +
    /// - On failure, responds with [`SdkError<CreateAssociationError>`](crate::operation::create_association::CreateAssociationError)
          31  +
    pub fn create_association(&self) -> crate::operation::create_association::builders::CreateAssociationFluentBuilder {
          32  +
        crate::operation::create_association::builders::CreateAssociationFluentBuilder::new(self.handle.clone())
          33  +
    }
          34  +
}

tmp-codegen-diff/aws-sdk/sdk/ssm/src/client/create_association_batch.rs

@@ -0,1 +0,15 @@
           1  +
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
impl super::Client {
           3  +
    /// Constructs a fluent builder for the [`CreateAssociationBatch`](crate::operation::create_association_batch::builders::CreateAssociationBatchFluentBuilder) operation.
           4  +
    ///
           5  +
    /// - The fluent builder is configurable:
           6  +
    ///   - [`entries(CreateAssociationBatchRequestEntry)`](crate::operation::create_association_batch::builders::CreateAssociationBatchFluentBuilder::entries) / [`set_entries(Option<Vec::<CreateAssociationBatchRequestEntry>>)`](crate::operation::create_association_batch::builders::CreateAssociationBatchFluentBuilder::set_entries):<br>required: **true**<br><p>One or more associations.</p><br>
           7  +
    ///   - [`association_dispatch_assume_role(impl Into<String>)`](crate::operation::create_association_batch::builders::CreateAssociationBatchFluentBuilder::association_dispatch_assume_role) / [`set_association_dispatch_assume_role(Option<String>)`](crate::operation::create_association_batch::builders::CreateAssociationBatchFluentBuilder::set_association_dispatch_assume_role):<br>required: **false**<br><p>A role used by association to take actions on your behalf. State Manager will assume this role and call required APIs when dispatching configurations to nodes. If not specified, <a href="https://docs.aws.amazon.com/systems-manager/latest/userguide/using-service-linked-roles.html"> service-linked role for Systems Manager</a> will be used by default.</p><note>  <p>It is recommended that you define a custom IAM role so that you have full control of the permissions that State Manager has when taking actions on your behalf.</p>  <p>Service-linked role support in State Manager is being phased out. Associations relying on service-linked role may require updates in the future to continue functioning properly.</p> </note><br>
           8  +
    /// - On success, responds with [`CreateAssociationBatchOutput`](crate::operation::create_association_batch::CreateAssociationBatchOutput) with field(s):
           9  +
    ///   - [`successful(Option<Vec::<AssociationDescription>>)`](crate::operation::create_association_batch::CreateAssociationBatchOutput::successful): <p>Information about the associations that succeeded.</p>
          10  +
    ///   - [`failed(Option<Vec::<FailedCreateAssociation>>)`](crate::operation::create_association_batch::CreateAssociationBatchOutput::failed): <p>Information about the associations that failed.</p>
          11  +
    /// - On failure, responds with [`SdkError<CreateAssociationBatchError>`](crate::operation::create_association_batch::CreateAssociationBatchError)
          12  +
    pub fn create_association_batch(&self) -> crate::operation::create_association_batch::builders::CreateAssociationBatchFluentBuilder {
          13  +
        crate::operation::create_association_batch::builders::CreateAssociationBatchFluentBuilder::new(self.handle.clone())
          14  +
    }
          15  +
}

tmp-codegen-diff/aws-sdk/sdk/ssm/src/client/create_cloud_connector.rs

@@ -0,1 +0,18 @@
           1  +
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
impl super::Client {
           3  +
    /// Constructs a fluent builder for the [`CreateCloudConnector`](crate::operation::create_cloud_connector::builders::CreateCloudConnectorFluentBuilder) operation.
           4  +
    ///
           5  +
    /// - The fluent builder is configurable:
           6  +
    ///   - [`display_name(impl Into<String>)`](crate::operation::create_cloud_connector::builders::CreateCloudConnectorFluentBuilder::display_name) / [`set_display_name(Option<String>)`](crate::operation::create_cloud_connector::builders::CreateCloudConnectorFluentBuilder::set_display_name):<br>required: **true**<br><p>A friendly name for the cloud connector.</p><br>
           7  +
    ///   - [`role_arn(impl Into<String>)`](crate::operation::create_cloud_connector::builders::CreateCloudConnectorFluentBuilder::role_arn) / [`set_role_arn(Option<String>)`](crate::operation::create_cloud_connector::builders::CreateCloudConnectorFluentBuilder::set_role_arn):<br>required: **true**<br><p>The Amazon Resource Name (ARN) of the IAM role that the cloud connector uses to communicate with the third-party cloud environment.</p><br>
           8  +
    ///   - [`description(impl Into<String>)`](crate::operation::create_cloud_connector::builders::CreateCloudConnectorFluentBuilder::description) / [`set_description(Option<String>)`](crate::operation::create_cloud_connector::builders::CreateCloudConnectorFluentBuilder::set_description):<br>required: **false**<br><p>A description for the cloud connector.</p><br>
           9  +
    ///   - [`configuration(CloudConnectorConfiguration)`](crate::operation::create_cloud_connector::builders::CreateCloudConnectorFluentBuilder::configuration) / [`set_configuration(Option<CloudConnectorConfiguration>)`](crate::operation::create_cloud_connector::builders::CreateCloudConnectorFluentBuilder::set_configuration):<br>required: **true**<br><p>The configuration details for connecting to the third-party cloud environment.</p><br>
          10  +
    ///   - [`config_connector_arn(impl Into<String>)`](crate::operation::create_cloud_connector::builders::CreateCloudConnectorFluentBuilder::config_connector_arn) / [`set_config_connector_arn(Option<String>)`](crate::operation::create_cloud_connector::builders::CreateCloudConnectorFluentBuilder::set_config_connector_arn):<br>required: **true**<br><p>The ARN of the Amazon Web Services Config connector associated with this cloud connector.</p><br>
          11  +
    ///   - [`tags(Tag)`](crate::operation::create_cloud_connector::builders::CreateCloudConnectorFluentBuilder::tags) / [`set_tags(Option<Vec::<Tag>>)`](crate::operation::create_cloud_connector::builders::CreateCloudConnectorFluentBuilder::set_tags):<br>required: **false**<br><p>Optional metadata that you assign to a resource. Tags enable you to categorize a resource in different ways, such as by purpose, owner, or environment.</p><br>
          12  +
    /// - On success, responds with [`CreateCloudConnectorOutput`](crate::operation::create_cloud_connector::CreateCloudConnectorOutput) with field(s):
          13  +
    ///   - [`cloud_connector_id(Option<String>)`](crate::operation::create_cloud_connector::CreateCloudConnectorOutput::cloud_connector_id): <p>The ID of the cloud connector that was created.</p>
          14  +
    /// - On failure, responds with [`SdkError<CreateCloudConnectorError>`](crate::operation::create_cloud_connector::CreateCloudConnectorError)
          15  +
    pub fn create_cloud_connector(&self) -> crate::operation::create_cloud_connector::builders::CreateCloudConnectorFluentBuilder {
          16  +
        crate::operation::create_cloud_connector::builders::CreateCloudConnectorFluentBuilder::new(self.handle.clone())
          17  +
    }
          18  +
}

tmp-codegen-diff/aws-sdk/sdk/ssm/src/client/create_document.rs

@@ -0,1 +0,22 @@
           1  +
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
impl super::Client {
           3  +
    /// Constructs a fluent builder for the [`CreateDocument`](crate::operation::create_document::builders::CreateDocumentFluentBuilder) operation.
           4  +
    ///
           5  +
    /// - The fluent builder is configurable:
           6  +
    ///   - [`content(impl Into<String>)`](crate::operation::create_document::builders::CreateDocumentFluentBuilder::content) / [`set_content(Option<String>)`](crate::operation::create_document::builders::CreateDocumentFluentBuilder::set_content):<br>required: **true**<br><p>The content for the new SSM document in JSON or YAML format. The content of the document must not exceed 64KB. This quota also includes the content specified for input parameters at runtime. We recommend storing the contents for your new document in an external JSON or YAML file and referencing the file in a command.</p> <p>For examples, see the following topics in the <i>Amazon Web Services Systems Manager User Guide</i>.</p> <ul>  <li>   <p><a href="https://docs.aws.amazon.com/systems-manager/latest/userguide/documents-using.html#create-ssm-console">Create an SSM document (console)</a></p></li>  <li>   <p><a href="https://docs.aws.amazon.com/systems-manager/latest/userguide/documents-using.html#create-ssm-document-cli">Create an SSM document (command line)</a></p></li>  <li>   <p><a href="https://docs.aws.amazon.com/systems-manager/latest/userguide/documents-using.html#create-ssm-document-api">Create an SSM document (API)</a></p></li> </ul><br>
           7  +
    ///   - [`requires(DocumentRequires)`](crate::operation::create_document::builders::CreateDocumentFluentBuilder::requires) / [`set_requires(Option<Vec::<DocumentRequires>>)`](crate::operation::create_document::builders::CreateDocumentFluentBuilder::set_requires):<br>required: **false**<br><p>A list of SSM documents required by a document. This parameter is used exclusively by AppConfig. When a user creates an AppConfig configuration in an SSM document, the user must also specify a required document for validation purposes. In this case, an <code>ApplicationConfiguration</code> document requires an <code>ApplicationConfigurationSchema</code> document for validation purposes. For more information, see <a href="https://docs.aws.amazon.com/appconfig/latest/userguide/what-is-appconfig.html">What is AppConfig?</a> in the <i>AppConfig User Guide</i>.</p><br>
           8  +
    ///   - [`attachments(AttachmentsSource)`](crate::operation::create_document::builders::CreateDocumentFluentBuilder::attachments) / [`set_attachments(Option<Vec::<AttachmentsSource>>)`](crate::operation::create_document::builders::CreateDocumentFluentBuilder::set_attachments):<br>required: **false**<br><p>A list of key-value pairs that describe attachments to a version of a document.</p><br>
           9  +
    ///   - [`name(impl Into<String>)`](crate::operation::create_document::builders::CreateDocumentFluentBuilder::name) / [`set_name(Option<String>)`](crate::operation::create_document::builders::CreateDocumentFluentBuilder::set_name):<br>required: **true**<br><p>A name for the SSM document.</p><important>  <p>You can't use the following strings as document name prefixes. These are reserved by Amazon Web Services for use as document name prefixes:</p>  <ul>   <li>    <p><code>aws</code></p></li>   <li>    <p><code>amazon</code></p></li>   <li>    <p><code>amzn</code></p></li>   <li>    <p><code>AWSEC2</code></p></li>   <li>    <p><code>AWSConfigRemediation</code></p></li>   <li>    <p><code>AWSSupport</code></p></li>  </ul> </important><br>
          10  +
    ///   - [`display_name(impl Into<String>)`](crate::operation::create_document::builders::CreateDocumentFluentBuilder::display_name) / [`set_display_name(Option<String>)`](crate::operation::create_document::builders::CreateDocumentFluentBuilder::set_display_name):<br>required: **false**<br><p>An optional field where you can specify a friendly name for the SSM document. This value can differ for each version of the document. You can update this value at a later time using the <code>UpdateDocument</code> operation.</p><br>
          11  +
    ///   - [`version_name(impl Into<String>)`](crate::operation::create_document::builders::CreateDocumentFluentBuilder::version_name) / [`set_version_name(Option<String>)`](crate::operation::create_document::builders::CreateDocumentFluentBuilder::set_version_name):<br>required: **false**<br><p>An optional field specifying the version of the artifact you are creating with the document. For example, <code>Release12.1</code>. This value is unique across all versions of a document, and can't be changed.</p><br>
          12  +
    ///   - [`document_type(DocumentType)`](crate::operation::create_document::builders::CreateDocumentFluentBuilder::document_type) / [`set_document_type(Option<DocumentType>)`](crate::operation::create_document::builders::CreateDocumentFluentBuilder::set_document_type):<br>required: **false**<br><p>The type of document to create.</p><note>  <p>The <code>DeploymentStrategy</code> document type is an internal-use-only document type reserved for AppConfig.</p> </note><br>
          13  +
    ///   - [`document_format(DocumentFormat)`](crate::operation::create_document::builders::CreateDocumentFluentBuilder::document_format) / [`set_document_format(Option<DocumentFormat>)`](crate::operation::create_document::builders::CreateDocumentFluentBuilder::set_document_format):<br>required: **false**<br><p>Specify the document format for the request. The document format can be JSON, YAML, or TEXT. JSON is the default format.</p><br>
          14  +
    ///   - [`target_type(impl Into<String>)`](crate::operation::create_document::builders::CreateDocumentFluentBuilder::target_type) / [`set_target_type(Option<String>)`](crate::operation::create_document::builders::CreateDocumentFluentBuilder::set_target_type):<br>required: **false**<br><p>Specify a target type to define the kinds of resources the document can run on. For example, to run a document on EC2 instances, specify the following value: <code>/AWS::EC2::Instance</code>. If you specify a value of '/' the document can run on all types of resources. If you don't specify a value, the document can't run on any resources. For a list of valid resource types, see <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html">Amazon Web Services resource and property types reference</a> in the <i>CloudFormation User Guide</i>.</p><br>
          15  +
    ///   - [`tags(Tag)`](crate::operation::create_document::builders::CreateDocumentFluentBuilder::tags) / [`set_tags(Option<Vec::<Tag>>)`](crate::operation::create_document::builders::CreateDocumentFluentBuilder::set_tags):<br>required: **false**<br><p>Optional metadata that you assign to a resource. Tags enable you to categorize a resource in different ways, such as by purpose, owner, or environment. For example, you might want to tag an SSM document to identify the types of targets or the environment where it will run. In this case, you could specify the following key-value pairs:</p> <ul>  <li>   <p><code>Key=OS,Value=Windows</code></p></li>  <li>   <p><code>Key=Environment,Value=Production</code></p></li> </ul><note>  <p>To add tags to an existing SSM document, use the <code>AddTagsToResource</code> operation.</p> </note><br>
          16  +
    /// - On success, responds with [`CreateDocumentOutput`](crate::operation::create_document::CreateDocumentOutput) with field(s):
          17  +
    ///   - [`document_description(Option<DocumentDescription>)`](crate::operation::create_document::CreateDocumentOutput::document_description): <p>Information about the SSM document.</p>
          18  +
    /// - On failure, responds with [`SdkError<CreateDocumentError>`](crate::operation::create_document::CreateDocumentError)
          19  +
    pub fn create_document(&self) -> crate::operation::create_document::builders::CreateDocumentFluentBuilder {
          20  +
        crate::operation::create_document::builders::CreateDocumentFluentBuilder::new(self.handle.clone())
          21  +
    }
          22  +
}

tmp-codegen-diff/aws-sdk/sdk/ssm/src/client/create_maintenance_window.rs

@@ -0,1 +0,24 @@
           1  +
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
impl super::Client {
           3  +
    /// Constructs a fluent builder for the [`CreateMaintenanceWindow`](crate::operation::create_maintenance_window::builders::CreateMaintenanceWindowFluentBuilder) operation.
           4  +
    ///
           5  +
    /// - The fluent builder is configurable:
           6  +
    ///   - [`name(impl Into<String>)`](crate::operation::create_maintenance_window::builders::CreateMaintenanceWindowFluentBuilder::name) / [`set_name(Option<String>)`](crate::operation::create_maintenance_window::builders::CreateMaintenanceWindowFluentBuilder::set_name):<br>required: **true**<br><p>The name of the maintenance window.</p><br>
           7  +
    ///   - [`description(impl Into<String>)`](crate::operation::create_maintenance_window::builders::CreateMaintenanceWindowFluentBuilder::description) / [`set_description(Option<String>)`](crate::operation::create_maintenance_window::builders::CreateMaintenanceWindowFluentBuilder::set_description):<br>required: **false**<br><p>An optional description for the maintenance window. We recommend specifying a description to help you organize your maintenance windows.</p><br>
           8  +
    ///   - [`start_date(impl Into<String>)`](crate::operation::create_maintenance_window::builders::CreateMaintenanceWindowFluentBuilder::start_date) / [`set_start_date(Option<String>)`](crate::operation::create_maintenance_window::builders::CreateMaintenanceWindowFluentBuilder::set_start_date):<br>required: **false**<br><p>The date and time, in ISO-8601 Extended format, for when you want the maintenance window to become active. <code>StartDate</code> allows you to delay activation of the maintenance window until the specified future date.</p><note>  <p>When using a rate schedule, if you provide a start date that occurs in the past, the current date and time are used as the start date.</p> </note><br>
           9  +
    ///   - [`end_date(impl Into<String>)`](crate::operation::create_maintenance_window::builders::CreateMaintenanceWindowFluentBuilder::end_date) / [`set_end_date(Option<String>)`](crate::operation::create_maintenance_window::builders::CreateMaintenanceWindowFluentBuilder::set_end_date):<br>required: **false**<br><p>The date and time, in ISO-8601 Extended format, for when you want the maintenance window to become inactive. <code>EndDate</code> allows you to set a date and time in the future when the maintenance window will no longer run.</p><br>
          10  +
    ///   - [`schedule(impl Into<String>)`](crate::operation::create_maintenance_window::builders::CreateMaintenanceWindowFluentBuilder::schedule) / [`set_schedule(Option<String>)`](crate::operation::create_maintenance_window::builders::CreateMaintenanceWindowFluentBuilder::set_schedule):<br>required: **true**<br><p>The schedule of the maintenance window in the form of a cron or rate expression.</p><br>
          11  +
    ///   - [`schedule_timezone(impl Into<String>)`](crate::operation::create_maintenance_window::builders::CreateMaintenanceWindowFluentBuilder::schedule_timezone) / [`set_schedule_timezone(Option<String>)`](crate::operation::create_maintenance_window::builders::CreateMaintenanceWindowFluentBuilder::set_schedule_timezone):<br>required: **false**<br><p>The time zone that the scheduled maintenance window executions are based on, in Internet Assigned Numbers Authority (IANA) format. For example: "America/Los_Angeles", "UTC", or "Asia/Seoul". For more information, see the <a href="https://www.iana.org/time-zones">Time Zone Database</a> on the IANA website.</p><br>
          12  +
    ///   - [`schedule_offset(i32)`](crate::operation::create_maintenance_window::builders::CreateMaintenanceWindowFluentBuilder::schedule_offset) / [`set_schedule_offset(Option<i32>)`](crate::operation::create_maintenance_window::builders::CreateMaintenanceWindowFluentBuilder::set_schedule_offset):<br>required: **false**<br><p>The number of days to wait after the date and time specified by a cron expression before running the maintenance window.</p> <p>For example, the following cron expression schedules a maintenance window to run on the third Tuesday of every month at 11:30 PM.</p> <p><code>cron(30 23 ? * TUE#3 *)</code></p> <p>If the schedule offset is <code>2</code>, the maintenance window won't run until two days later.</p><br>
          13  +
    ///   - [`duration(i32)`](crate::operation::create_maintenance_window::builders::CreateMaintenanceWindowFluentBuilder::duration) / [`set_duration(Option<i32>)`](crate::operation::create_maintenance_window::builders::CreateMaintenanceWindowFluentBuilder::set_duration):<br>required: **true**<br><p>The duration of the maintenance window in hours.</p><br>
          14  +
    ///   - [`cutoff(i32)`](crate::operation::create_maintenance_window::builders::CreateMaintenanceWindowFluentBuilder::cutoff) / [`set_cutoff(Option<i32>)`](crate::operation::create_maintenance_window::builders::CreateMaintenanceWindowFluentBuilder::set_cutoff):<br>required: **true**<br><p>The number of hours before the end of the maintenance window that Amazon Web Services Systems Manager stops scheduling new tasks for execution.</p><br>
          15  +
    ///   - [`allow_unassociated_targets(bool)`](crate::operation::create_maintenance_window::builders::CreateMaintenanceWindowFluentBuilder::allow_unassociated_targets) / [`set_allow_unassociated_targets(Option<bool>)`](crate::operation::create_maintenance_window::builders::CreateMaintenanceWindowFluentBuilder::set_allow_unassociated_targets):<br>required: **true**<br><p>Enables a maintenance window task to run on managed nodes, even if you haven't registered those nodes as targets. If enabled, then you must specify the unregistered managed nodes (by node ID) when you register a task with the maintenance window.</p> <p>If you don't enable this option, then you must specify previously-registered targets when you register a task with the maintenance window.</p><br>
          16  +
    ///   - [`client_token(impl Into<String>)`](crate::operation::create_maintenance_window::builders::CreateMaintenanceWindowFluentBuilder::client_token) / [`set_client_token(Option<String>)`](crate::operation::create_maintenance_window::builders::CreateMaintenanceWindowFluentBuilder::set_client_token):<br>required: **false**<br><p>User-provided idempotency token.</p><br>
          17  +
    ///   - [`tags(Tag)`](crate::operation::create_maintenance_window::builders::CreateMaintenanceWindowFluentBuilder::tags) / [`set_tags(Option<Vec::<Tag>>)`](crate::operation::create_maintenance_window::builders::CreateMaintenanceWindowFluentBuilder::set_tags):<br>required: **false**<br><p>Optional metadata that you assign to a resource. Tags enable you to categorize a resource in different ways, such as by purpose, owner, or environment. For example, you might want to tag a maintenance window to identify the type of tasks it will run, the types of targets, and the environment it will run in. In this case, you could specify the following key-value pairs:</p> <ul>  <li>   <p><code>Key=TaskType,Value=AgentUpdate</code></p></li>  <li>   <p><code>Key=OS,Value=Windows</code></p></li>  <li>   <p><code>Key=Environment,Value=Production</code></p></li> </ul><note>  <p>To add tags to an existing maintenance window, use the <code>AddTagsToResource</code> operation.</p> </note><br>
          18  +
    /// - On success, responds with [`CreateMaintenanceWindowOutput`](crate::operation::create_maintenance_window::CreateMaintenanceWindowOutput) with field(s):
          19  +
    ///   - [`window_id(Option<String>)`](crate::operation::create_maintenance_window::CreateMaintenanceWindowOutput::window_id): <p>The ID of the created maintenance window.</p>
          20  +
    /// - On failure, responds with [`SdkError<CreateMaintenanceWindowError>`](crate::operation::create_maintenance_window::CreateMaintenanceWindowError)
          21  +
    pub fn create_maintenance_window(&self) -> crate::operation::create_maintenance_window::builders::CreateMaintenanceWindowFluentBuilder {
          22  +
        crate::operation::create_maintenance_window::builders::CreateMaintenanceWindowFluentBuilder::new(self.handle.clone())
          23  +
    }
          24  +
}

tmp-codegen-diff/aws-sdk/sdk/ssm/src/client/create_ops_item.rs

@@ -0,1 +0,29 @@
           1  +
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
impl super::Client {
           3  +
    /// Constructs a fluent builder for the [`CreateOpsItem`](crate::operation::create_ops_item::builders::CreateOpsItemFluentBuilder) operation.
           4  +
    ///
           5  +
    /// - The fluent builder is configurable:
           6  +
    ///   - [`description(impl Into<String>)`](crate::operation::create_ops_item::builders::CreateOpsItemFluentBuilder::description) / [`set_description(Option<String>)`](crate::operation::create_ops_item::builders::CreateOpsItemFluentBuilder::set_description):<br>required: **true**<br><p>User-defined text that contains information about the OpsItem, in Markdown format.</p><note>  <p>Provide enough information so that users viewing this OpsItem for the first time understand the issue.</p> </note><br>
           7  +
    ///   - [`ops_item_type(impl Into<String>)`](crate::operation::create_ops_item::builders::CreateOpsItemFluentBuilder::ops_item_type) / [`set_ops_item_type(Option<String>)`](crate::operation::create_ops_item::builders::CreateOpsItemFluentBuilder::set_ops_item_type):<br>required: **false**<br><p>The type of OpsItem to create. Systems Manager supports the following types of OpsItems:</p> <ul>  <li>   <p><code>/aws/issue</code></p>   <p>This type of OpsItem is used for default OpsItems created by OpsCenter.</p></li>  <li>   <p><code>/aws/insight</code></p>   <p>This type of OpsItem is used by OpsCenter for aggregating and reporting on duplicate OpsItems.</p></li>  <li>   <p><code>/aws/changerequest</code></p>   <p>This type of OpsItem is used by Change Manager for reviewing and approving or rejecting change requests.</p><important>    <p>Amazon Web Services Systems Manager Change Manager is no longer open to new customers. Existing customers can continue to use the service as normal. For more information, see <a href="https://docs.aws.amazon.com/systems-manager/latest/userguide/change-manager-availability-change.html">Amazon Web Services Systems Manager Change Manager availability change</a>.</p>   </important></li> </ul><br>
           8  +
    ///   - [`operational_data(impl Into<String>, OpsItemDataValue)`](crate::operation::create_ops_item::builders::CreateOpsItemFluentBuilder::operational_data) / [`set_operational_data(Option<HashMap::<String, OpsItemDataValue>>)`](crate::operation::create_ops_item::builders::CreateOpsItemFluentBuilder::set_operational_data):<br>required: **false**<br><p>Operational data is custom data that provides useful reference details about the OpsItem. For example, you can specify log files, error strings, license keys, troubleshooting tips, or other relevant data. You enter operational data as key-value pairs. The key has a maximum length of 128 characters. The value has a maximum size of 20 KB.</p><important>  <p>Operational data keys <i>can't</i> begin with the following: <code>amazon</code>, <code>aws</code>, <code>amzn</code>, <code>ssm</code>, <code>/amazon</code>, <code>/aws</code>, <code>/amzn</code>, <code>/ssm</code>.</p> </important> <p>You can choose to make the data searchable by other users in the account or you can restrict search access. Searchable data means that all users with access to the OpsItem Overview page (as provided by the <code>DescribeOpsItems</code> API operation) can view and search on the specified data. Operational data that isn't searchable is only viewable by users who have access to the OpsItem (as provided by the <code>GetOpsItem</code> API operation).</p> <p>Use the <code>/aws/resources</code> key in OperationalData to specify a related resource in the request. Use the <code>/aws/automations</code> key in OperationalData to associate an Automation runbook with the OpsItem. To view Amazon Web Services CLI example commands that use these keys, see <a href="https://docs.aws.amazon.com/systems-manager/latest/userguide/OpsCenter-manually-create-OpsItems.html">Create OpsItems manually</a> in the <i>Amazon Web Services Systems Manager User Guide</i>.</p><br>
           9  +
    ///   - [`notifications(OpsItemNotification)`](crate::operation::create_ops_item::builders::CreateOpsItemFluentBuilder::notifications) / [`set_notifications(Option<Vec::<OpsItemNotification>>)`](crate::operation::create_ops_item::builders::CreateOpsItemFluentBuilder::set_notifications):<br>required: **false**<br><p>The Amazon Resource Name (ARN) of an SNS topic where notifications are sent when this OpsItem is edited or changed.</p><br>
          10  +
    ///   - [`priority(i32)`](crate::operation::create_ops_item::builders::CreateOpsItemFluentBuilder::priority) / [`set_priority(Option<i32>)`](crate::operation::create_ops_item::builders::CreateOpsItemFluentBuilder::set_priority):<br>required: **false**<br><p>The importance of this OpsItem in relation to other OpsItems in the system.</p><br>
          11  +
    ///   - [`related_ops_items(RelatedOpsItem)`](crate::operation::create_ops_item::builders::CreateOpsItemFluentBuilder::related_ops_items) / [`set_related_ops_items(Option<Vec::<RelatedOpsItem>>)`](crate::operation::create_ops_item::builders::CreateOpsItemFluentBuilder::set_related_ops_items):<br>required: **false**<br><p>One or more OpsItems that share something in common with the current OpsItems. For example, related OpsItems can include OpsItems with similar error messages, impacted resources, or statuses for the impacted resource.</p><br>
          12  +
    ///   - [`source(impl Into<String>)`](crate::operation::create_ops_item::builders::CreateOpsItemFluentBuilder::source) / [`set_source(Option<String>)`](crate::operation::create_ops_item::builders::CreateOpsItemFluentBuilder::set_source):<br>required: **true**<br><p>The origin of the OpsItem, such as Amazon EC2 or Systems Manager.</p><note>  <p>The source name can't contain the following strings: <code>aws</code>, <code>amazon</code>, and <code>amzn</code>.</p> </note><br>
          13  +
    ///   - [`title(impl Into<String>)`](crate::operation::create_ops_item::builders::CreateOpsItemFluentBuilder::title) / [`set_title(Option<String>)`](crate::operation::create_ops_item::builders::CreateOpsItemFluentBuilder::set_title):<br>required: **true**<br><p>A short heading that describes the nature of the OpsItem and the impacted resource.</p><br>
          14  +
    ///   - [`tags(Tag)`](crate::operation::create_ops_item::builders::CreateOpsItemFluentBuilder::tags) / [`set_tags(Option<Vec::<Tag>>)`](crate::operation::create_ops_item::builders::CreateOpsItemFluentBuilder::set_tags):<br>required: **false**<br><p>Optional metadata that you assign to a resource.</p> <p>Tags use a key-value pair. For example:</p> <p><code>Key=Department,Value=Finance</code></p><important>  <p>To add tags to a new OpsItem, a user must have IAM permissions for both the <code>ssm:CreateOpsItems</code> operation and the <code>ssm:AddTagsToResource</code> operation. To add tags to an existing OpsItem, use the <code>AddTagsToResource</code> operation.</p> </important><br>
          15  +
    ///   - [`category(impl Into<String>)`](crate::operation::create_ops_item::builders::CreateOpsItemFluentBuilder::category) / [`set_category(Option<String>)`](crate::operation::create_ops_item::builders::CreateOpsItemFluentBuilder::set_category):<br>required: **false**<br><p>Specify a category to assign to an OpsItem.</p><br>
          16  +
    ///   - [`severity(impl Into<String>)`](crate::operation::create_ops_item::builders::CreateOpsItemFluentBuilder::severity) / [`set_severity(Option<String>)`](crate::operation::create_ops_item::builders::CreateOpsItemFluentBuilder::set_severity):<br>required: **false**<br><p>Specify a severity to assign to an OpsItem.</p><br>
          17  +
    ///   - [`actual_start_time(DateTime)`](crate::operation::create_ops_item::builders::CreateOpsItemFluentBuilder::actual_start_time) / [`set_actual_start_time(Option<DateTime>)`](crate::operation::create_ops_item::builders::CreateOpsItemFluentBuilder::set_actual_start_time):<br>required: **false**<br><p>The time a runbook workflow started. Currently reported only for the OpsItem type <code>/aws/changerequest</code>.</p><br>
          18  +
    ///   - [`actual_end_time(DateTime)`](crate::operation::create_ops_item::builders::CreateOpsItemFluentBuilder::actual_end_time) / [`set_actual_end_time(Option<DateTime>)`](crate::operation::create_ops_item::builders::CreateOpsItemFluentBuilder::set_actual_end_time):<br>required: **false**<br><p>The time a runbook workflow ended. Currently reported only for the OpsItem type <code>/aws/changerequest</code>.</p><br>
          19  +
    ///   - [`planned_start_time(DateTime)`](crate::operation::create_ops_item::builders::CreateOpsItemFluentBuilder::planned_start_time) / [`set_planned_start_time(Option<DateTime>)`](crate::operation::create_ops_item::builders::CreateOpsItemFluentBuilder::set_planned_start_time):<br>required: **false**<br><p>The time specified in a change request for a runbook workflow to start. Currently supported only for the OpsItem type <code>/aws/changerequest</code>.</p><br>
          20  +
    ///   - [`planned_end_time(DateTime)`](crate::operation::create_ops_item::builders::CreateOpsItemFluentBuilder::planned_end_time) / [`set_planned_end_time(Option<DateTime>)`](crate::operation::create_ops_item::builders::CreateOpsItemFluentBuilder::set_planned_end_time):<br>required: **false**<br><p>The time specified in a change request for a runbook workflow to end. Currently supported only for the OpsItem type <code>/aws/changerequest</code>.</p><br>
          21  +
    ///   - [`account_id(impl Into<String>)`](crate::operation::create_ops_item::builders::CreateOpsItemFluentBuilder::account_id) / [`set_account_id(Option<String>)`](crate::operation::create_ops_item::builders::CreateOpsItemFluentBuilder::set_account_id):<br>required: **false**<br><p>The target Amazon Web Services account where you want to create an OpsItem. To make this call, your account must be configured to work with OpsItems across accounts. For more information, see <a href="https://docs.aws.amazon.com/systems-manager/latest/userguide/OpsCenter-setup.html">Set up OpsCenter</a> in the <i>Amazon Web Services Systems Manager User Guide</i>.</p><br>
          22  +
    /// - On success, responds with [`CreateOpsItemOutput`](crate::operation::create_ops_item::CreateOpsItemOutput) with field(s):
          23  +
    ///   - [`ops_item_id(Option<String>)`](crate::operation::create_ops_item::CreateOpsItemOutput::ops_item_id): <p>The ID of the OpsItem.</p>
          24  +
    ///   - [`ops_item_arn(Option<String>)`](crate::operation::create_ops_item::CreateOpsItemOutput::ops_item_arn): <p>The OpsItem Amazon Resource Name (ARN).</p>
          25  +
    /// - On failure, responds with [`SdkError<CreateOpsItemError>`](crate::operation::create_ops_item::CreateOpsItemError)
          26  +
    pub fn create_ops_item(&self) -> crate::operation::create_ops_item::builders::CreateOpsItemFluentBuilder {
          27  +
        crate::operation::create_ops_item::builders::CreateOpsItemFluentBuilder::new(self.handle.clone())
          28  +
    }
          29  +
}

tmp-codegen-diff/aws-sdk/sdk/ssm/src/client/create_ops_metadata.rs

@@ -0,1 +0,15 @@
           1  +
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
impl super::Client {
           3  +
    /// Constructs a fluent builder for the [`CreateOpsMetadata`](crate::operation::create_ops_metadata::builders::CreateOpsMetadataFluentBuilder) operation.
           4  +
    ///
           5  +
    /// - The fluent builder is configurable:
           6  +
    ///   - [`resource_id(impl Into<String>)`](crate::operation::create_ops_metadata::builders::CreateOpsMetadataFluentBuilder::resource_id) / [`set_resource_id(Option<String>)`](crate::operation::create_ops_metadata::builders::CreateOpsMetadataFluentBuilder::set_resource_id):<br>required: **true**<br><p>A resource ID for a new Application Manager application.</p><br>
           7  +
    ///   - [`metadata(impl Into<String>, MetadataValue)`](crate::operation::create_ops_metadata::builders::CreateOpsMetadataFluentBuilder::metadata) / [`set_metadata(Option<HashMap::<String, MetadataValue>>)`](crate::operation::create_ops_metadata::builders::CreateOpsMetadataFluentBuilder::set_metadata):<br>required: **false**<br><p>Metadata for a new Application Manager application.</p><br>
           8  +
    ///   - [`tags(Tag)`](crate::operation::create_ops_metadata::builders::CreateOpsMetadataFluentBuilder::tags) / [`set_tags(Option<Vec::<Tag>>)`](crate::operation::create_ops_metadata::builders::CreateOpsMetadataFluentBuilder::set_tags):<br>required: **false**<br><p>Optional metadata that you assign to a resource. You can specify a maximum of five tags for an OpsMetadata object. Tags enable you to categorize a resource in different ways, such as by purpose, owner, or environment. For example, you might want to tag an OpsMetadata object to identify an environment or target Amazon Web Services Region. In this case, you could specify the following key-value pairs:</p> <ul>  <li>   <p><code>Key=Environment,Value=Production</code></p></li>  <li>   <p><code>Key=Region,Value=us-east-2</code></p></li> </ul><br>
           9  +
    /// - On success, responds with [`CreateOpsMetadataOutput`](crate::operation::create_ops_metadata::CreateOpsMetadataOutput) with field(s):
          10  +
    ///   - [`ops_metadata_arn(Option<String>)`](crate::operation::create_ops_metadata::CreateOpsMetadataOutput::ops_metadata_arn): <p>The Amazon Resource Name (ARN) of the OpsMetadata Object or blob created by the call.</p>
          11  +
    /// - On failure, responds with [`SdkError<CreateOpsMetadataError>`](crate::operation::create_ops_metadata::CreateOpsMetadataError)
          12  +
    pub fn create_ops_metadata(&self) -> crate::operation::create_ops_metadata::builders::CreateOpsMetadataFluentBuilder {
          13  +
        crate::operation::create_ops_metadata::builders::CreateOpsMetadataFluentBuilder::new(self.handle.clone())
          14  +
    }
          15  +
}

tmp-codegen-diff/aws-sdk/sdk/ssm/src/client/create_patch_baseline.rs

@@ -0,1 +0,26 @@
           1  +
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
impl super::Client {
           3  +
    /// Constructs a fluent builder for the [`CreatePatchBaseline`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder) operation.
           4  +
    ///
           5  +
    /// - The fluent builder is configurable:
           6  +
    ///   - [`operating_system(OperatingSystem)`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::operating_system) / [`set_operating_system(Option<OperatingSystem>)`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::set_operating_system):<br>required: **false**<br><p>Defines the operating system the patch baseline applies to. The default value is <code>WINDOWS</code>.</p><br>
           7  +
    ///   - [`name(impl Into<String>)`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::name) / [`set_name(Option<String>)`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::set_name):<br>required: **true**<br><p>The name of the patch baseline.</p><br>
           8  +
    ///   - [`global_filters(PatchFilterGroup)`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::global_filters) / [`set_global_filters(Option<PatchFilterGroup>)`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::set_global_filters):<br>required: **false**<br><p>A set of global filters used to include patches in the baseline.</p><important>  <p>The <code>GlobalFilters</code> parameter can be configured only by using the CLI or an Amazon Web Services SDK. It can't be configured from the Patch Manager console, and its value isn't displayed in the console.</p> </important><br>
           9  +
    ///   - [`approval_rules(PatchRuleGroup)`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::approval_rules) / [`set_approval_rules(Option<PatchRuleGroup>)`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::set_approval_rules):<br>required: **false**<br><p>A set of rules used to include patches in the baseline.</p><br>
          10  +
    ///   - [`approved_patches(impl Into<String>)`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::approved_patches) / [`set_approved_patches(Option<Vec::<String>>)`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::set_approved_patches):<br>required: **false**<br><p>A list of explicitly approved patches for the baseline.</p> <p>For information about accepted formats for lists of approved patches and rejected patches, see <a href="https://docs.aws.amazon.com/systems-manager/latest/userguide/patch-manager-approved-rejected-package-name-formats.html">Package name formats for approved and rejected patch lists</a> in the <i>Amazon Web Services Systems Manager User Guide</i>.</p><br>
          11  +
    ///   - [`approved_patches_compliance_level(PatchComplianceLevel)`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::approved_patches_compliance_level) / [`set_approved_patches_compliance_level(Option<PatchComplianceLevel>)`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::set_approved_patches_compliance_level):<br>required: **false**<br><p>Defines the compliance level for approved patches. When an approved patch is reported as missing, this value describes the severity of the compliance violation. The default value is <code>UNSPECIFIED</code>.</p><br>
          12  +
    ///   - [`approved_patches_enable_non_security(bool)`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::approved_patches_enable_non_security) / [`set_approved_patches_enable_non_security(Option<bool>)`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::set_approved_patches_enable_non_security):<br>required: **false**<br><p>Indicates whether the list of approved patches includes non-security updates that should be applied to the managed nodes. The default value is <code>false</code>. Applies to Linux managed nodes only.</p><br>
          13  +
    ///   - [`rejected_patches(impl Into<String>)`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::rejected_patches) / [`set_rejected_patches(Option<Vec::<String>>)`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::set_rejected_patches):<br>required: **false**<br><p>A list of explicitly rejected patches for the baseline.</p> <p>For information about accepted formats for lists of approved patches and rejected patches, see <a href="https://docs.aws.amazon.com/systems-manager/latest/userguide/patch-manager-approved-rejected-package-name-formats.html">Package name formats for approved and rejected patch lists</a> in the <i>Amazon Web Services Systems Manager User Guide</i>.</p><br>
          14  +
    ///   - [`rejected_patches_action(PatchAction)`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::rejected_patches_action) / [`set_rejected_patches_action(Option<PatchAction>)`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::set_rejected_patches_action):<br>required: **false**<br><p>The action for Patch Manager to take on patches included in the <code>RejectedPackages</code> list.</p> <dl>  <dt>   ALLOW_AS_DEPENDENCY  </dt>  <dd>   <p><b>Linux and macOS</b>: A package in the rejected patches list is installed only if it is a dependency of another package. It is considered compliant with the patch baseline, and its status is reported as <code>INSTALLED_OTHER</code>. This is the default action if no option is specified.</p>   <p><b>Windows Server</b>: Windows Server doesn't support the concept of package dependencies. If a package in the rejected patches list and already installed on the node, its status is reported as <code>INSTALLED_OTHER</code>. Any package not already installed on the node is skipped. This is the default action if no option is specified.</p>  </dd>  <dt>   BLOCK  </dt>  <dd>   <p><b>All OSs</b>: Packages in the rejected patches list, and packages that include them as dependencies, aren't installed by Patch Manager under any circumstances.</p>   <p>State value assignment for patch compliance:</p>   <ul>    <li>     <p>If a package was installed before it was added to the rejected patches list, or is installed outside of Patch Manager afterward, it's considered noncompliant with the patch baseline and its status is reported as <code>INSTALLED_REJECTED</code>.</p></li>    <li>     <p>If an update attempts to install a dependency package that is now rejected by the baseline, when previous versions of the package were not rejected, the package being updated is reported as <code>MISSING</code> for <code>SCAN</code> operations and as <code>FAILED</code> for <code>INSTALL</code> operations.</p></li>   </ul>  </dd> </dl><br>
          15  +
    ///   - [`description(impl Into<String>)`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::description) / [`set_description(Option<String>)`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::set_description):<br>required: **false**<br><p>A description of the patch baseline.</p><br>
          16  +
    ///   - [`sources(PatchSource)`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::sources) / [`set_sources(Option<Vec::<PatchSource>>)`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::set_sources):<br>required: **false**<br><p>Information about the patches to use to update the managed nodes, including target operating systems and source repositories. Applies to Linux managed nodes only.</p><br>
          17  +
    ///   - [`available_security_updates_compliance_status(PatchComplianceStatus)`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::available_security_updates_compliance_status) / [`set_available_security_updates_compliance_status(Option<PatchComplianceStatus>)`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::set_available_security_updates_compliance_status):<br>required: **false**<br><p>Indicates the status you want to assign to security patches that are available but not approved because they don't meet the installation criteria specified in the patch baseline.</p> <p>Example scenario: Security patches that you might want installed can be skipped if you have specified a long period to wait after a patch is released before installation. If an update to the patch is released during your specified waiting period, the waiting period for installing the patch starts over. If the waiting period is too long, multiple versions of the patch could be released but never installed.</p> <p>Supported for Windows Server managed nodes only.</p><br>
          18  +
    ///   - [`client_token(impl Into<String>)`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::client_token) / [`set_client_token(Option<String>)`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::set_client_token):<br>required: **false**<br><p>User-provided idempotency token.</p><br>
          19  +
    ///   - [`tags(Tag)`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::tags) / [`set_tags(Option<Vec::<Tag>>)`](crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::set_tags):<br>required: **false**<br><p>Optional metadata that you assign to a resource. Tags enable you to categorize a resource in different ways, such as by purpose, owner, or environment. For example, you might want to tag a patch baseline to identify the severity level of patches it specifies and the operating system family it applies to. In this case, you could specify the following key-value pairs:</p> <ul>  <li>   <p><code>Key=PatchSeverity,Value=Critical</code></p></li>  <li>   <p><code>Key=OS,Value=Windows</code></p></li> </ul><note>  <p>To add tags to an existing patch baseline, use the <code>AddTagsToResource</code> operation.</p> </note><br>
          20  +
    /// - On success, responds with [`CreatePatchBaselineOutput`](crate::operation::create_patch_baseline::CreatePatchBaselineOutput) with field(s):
          21  +
    ///   - [`baseline_id(Option<String>)`](crate::operation::create_patch_baseline::CreatePatchBaselineOutput::baseline_id): <p>The ID of the created patch baseline.</p>
          22  +
    /// - On failure, responds with [`SdkError<CreatePatchBaselineError>`](crate::operation::create_patch_baseline::CreatePatchBaselineError)
          23  +
    pub fn create_patch_baseline(&self) -> crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder {
          24  +
        crate::operation::create_patch_baseline::builders::CreatePatchBaselineFluentBuilder::new(self.handle.clone())
          25  +
    }
          26  +
}

tmp-codegen-diff/aws-sdk/sdk/ssm/src/client/create_resource_data_sync.rs

@@ -0,1 +0,15 @@
           1  +
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
impl super::Client {
           3  +
    /// Constructs a fluent builder for the [`CreateResourceDataSync`](crate::operation::create_resource_data_sync::builders::CreateResourceDataSyncFluentBuilder) operation.
           4  +
    ///
           5  +
    /// - The fluent builder is configurable:
           6  +
    ///   - [`sync_name(impl Into<String>)`](crate::operation::create_resource_data_sync::builders::CreateResourceDataSyncFluentBuilder::sync_name) / [`set_sync_name(Option<String>)`](crate::operation::create_resource_data_sync::builders::CreateResourceDataSyncFluentBuilder::set_sync_name):<br>required: **true**<br><p>A name for the configuration.</p><br>
           7  +
    ///   - [`s3_destination(ResourceDataSyncS3Destination)`](crate::operation::create_resource_data_sync::builders::CreateResourceDataSyncFluentBuilder::s3_destination) / [`set_s3_destination(Option<ResourceDataSyncS3Destination>)`](crate::operation::create_resource_data_sync::builders::CreateResourceDataSyncFluentBuilder::set_s3_destination):<br>required: **false**<br><p>Amazon S3 configuration details for the sync. This parameter is required if the <code>SyncType</code> value is SyncToDestination.</p><br>
           8  +
    ///   - [`sync_type(impl Into<String>)`](crate::operation::create_resource_data_sync::builders::CreateResourceDataSyncFluentBuilder::sync_type) / [`set_sync_type(Option<String>)`](crate::operation::create_resource_data_sync::builders::CreateResourceDataSyncFluentBuilder::set_sync_type):<br>required: **false**<br><p>Specify <code>SyncToDestination</code> to create a resource data sync that synchronizes data to an S3 bucket for Inventory. If you specify <code>SyncToDestination</code>, you must provide a value for <code>S3Destination</code>. Specify <code>SyncFromSource</code> to synchronize data from a single account and multiple Regions, or multiple Amazon Web Services accounts and Amazon Web Services Regions, as listed in Organizations for Explorer. If you specify <code>SyncFromSource</code>, you must provide a value for <code>SyncSource</code>. The default value is <code>SyncToDestination</code>.</p><br>
           9  +
    ///   - [`sync_source(ResourceDataSyncSource)`](crate::operation::create_resource_data_sync::builders::CreateResourceDataSyncFluentBuilder::sync_source) / [`set_sync_source(Option<ResourceDataSyncSource>)`](crate::operation::create_resource_data_sync::builders::CreateResourceDataSyncFluentBuilder::set_sync_source):<br>required: **false**<br><p>Specify information about the data sources to synchronize. This parameter is required if the <code>SyncType</code> value is SyncFromSource.</p><br>
          10  +
    /// - On success, responds with [`CreateResourceDataSyncOutput`](crate::operation::create_resource_data_sync::CreateResourceDataSyncOutput)
          11  +
    /// - On failure, responds with [`SdkError<CreateResourceDataSyncError>`](crate::operation::create_resource_data_sync::CreateResourceDataSyncError)
          12  +
    pub fn create_resource_data_sync(&self) -> crate::operation::create_resource_data_sync::builders::CreateResourceDataSyncFluentBuilder {
          13  +
        crate::operation::create_resource_data_sync::builders::CreateResourceDataSyncFluentBuilder::new(self.handle.clone())
          14  +
    }
          15  +
}

tmp-codegen-diff/aws-sdk/sdk/ssm/src/client/customize.rs

@@ -0,1 +0,114 @@
           1  +
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
           3  +
/// `CustomizableOperation` allows for configuring a single operation invocation before it is sent.
           4  +
pub struct CustomizableOperation<T, E, B> {
           5  +
    customizable_send: B,
           6  +
    config_override: ::std::option::Option<crate::config::Builder>,
           7  +
    interceptors: Vec<::aws_smithy_runtime_api::client::interceptors::SharedInterceptor>,
           8  +
    runtime_plugins: Vec<::aws_smithy_runtime_api::client::runtime_plugin::SharedRuntimePlugin>,
           9  +
    _output: ::std::marker::PhantomData<T>,
          10  +
    _error: ::std::marker::PhantomData<E>,
          11  +
}
          12  +
          13  +
impl<T, E, B> CustomizableOperation<T, E, B> {
          14  +
    /// Creates a new `CustomizableOperation` from `customizable_send`.
          15  +
    #[allow(dead_code)] // unused when a service does not provide any operations
          16  +
    pub(crate) fn new(customizable_send: B) -> Self {
          17  +
        Self {
          18  +
            customizable_send,
          19  +
            config_override: ::std::option::Option::None,
          20  +
            interceptors: vec![],
          21  +
            runtime_plugins: vec![],
          22  +
            _output: ::std::marker::PhantomData,
          23  +
            _error: ::std::marker::PhantomData,
          24  +
        }
          25  +
    }
          26  +
          27  +
    pub(crate) fn execute<U>(self, f: impl ::std::ops::FnOnce(B, crate::config::Builder) -> U) -> U {
          28  +
        let mut config_override = self.config_override.unwrap_or_default();
          29  +
        self.interceptors.into_iter().for_each(|interceptor| {
          30  +
            config_override.push_interceptor(interceptor);
          31  +
        });
          32  +
        self.runtime_plugins.into_iter().for_each(|plugin| {
          33  +
            config_override.push_runtime_plugin(plugin);
          34  +
        });
          35  +
        f(self.customizable_send, config_override)
          36  +
    }
          37  +
          38  +
    /// Adds an [interceptor](::aws_smithy_runtime_api::client::interceptors::Intercept) that runs at specific stages of the request execution pipeline.
          39  +
    ///
          40  +
    /// Note that interceptors can also be added to `CustomizableOperation` by `config_override`,
          41  +
    /// `map_request`, and `mutate_request` (the last two are implemented via interceptors under the hood).
          42  +
    /// The order in which those user-specified operation interceptors are invoked should not be relied upon
          43  +
    /// as it is an implementation detail.
          44  +
    pub fn interceptor(mut self, interceptor: impl ::aws_smithy_runtime_api::client::interceptors::Intercept + 'static) -> Self {
          45  +
        self.interceptors
          46  +
            .push(::aws_smithy_runtime_api::client::interceptors::SharedInterceptor::new(interceptor));
          47  +
        self
          48  +
    }
          49  +
          50  +
    /// Adds a runtime plugin.
          51  +
    #[allow(unused)]
          52  +
    pub(crate) fn runtime_plugin(mut self, runtime_plugin: impl ::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugin + 'static) -> Self {
          53  +
        self.runtime_plugins
          54  +
            .push(::aws_smithy_runtime_api::client::runtime_plugin::SharedRuntimePlugin::new(runtime_plugin));
          55  +
        self
          56  +
    }
          57  +
          58  +
    /// Allows for customizing the operation's request.
          59  +
    pub fn map_request<F, MapE>(mut self, f: F) -> Self
          60  +
    where
          61  +
        F: ::std::ops::Fn(
          62  +
                ::aws_smithy_runtime_api::client::orchestrator::HttpRequest,
          63  +
            ) -> ::std::result::Result<::aws_smithy_runtime_api::client::orchestrator::HttpRequest, MapE>
          64  +
            + ::std::marker::Send
          65  +
            + ::std::marker::Sync
          66  +
            + 'static,
          67  +
        MapE: ::std::error::Error + ::std::marker::Send + ::std::marker::Sync + 'static,
          68  +
    {
          69  +
        self.interceptors
          70  +
            .push(::aws_smithy_runtime_api::client::interceptors::SharedInterceptor::new(
          71  +
                ::aws_smithy_runtime::client::interceptors::MapRequestInterceptor::new(f),
          72  +
            ));
          73  +
        self
          74  +
    }
          75  +
          76  +
    /// Convenience for `map_request` where infallible direct mutation of request is acceptable.
          77  +
    pub fn mutate_request<F>(mut self, f: F) -> Self
          78  +
    where
          79  +
        F: ::std::ops::Fn(&mut ::aws_smithy_runtime_api::client::orchestrator::HttpRequest) + ::std::marker::Send + ::std::marker::Sync + 'static,
          80  +
    {
          81  +
        self.interceptors
          82  +
            .push(::aws_smithy_runtime_api::client::interceptors::SharedInterceptor::new(
          83  +
                ::aws_smithy_runtime::client::interceptors::MutateRequestInterceptor::new(f),
          84  +
            ));
          85  +
        self
          86  +
    }
          87  +
          88  +
    /// Overrides config for a single operation invocation.
          89  +
    ///
          90  +
    /// `config_override` is applied to the operation configuration level.
          91  +
    /// The fields in the builder that are `Some` override those applied to the service
          92  +
    /// configuration level. For instance,
          93  +
    ///
          94  +
    /// | Config A           | overridden by Config B | = Config C         |
          95  +
    /// |--------------------|------------------------|--------------------|
          96  +
    /// | field_1: None,     | field_1: Some(v2),     | field_1: Some(v2), |
          97  +
    /// | field_2: Some(v1), | field_2: Some(v2),     | field_2: Some(v2), |
          98  +
    /// | field_3: Some(v1), | field_3: None,         | field_3: Some(v1), |
          99  +
    pub fn config_override(mut self, config_override: impl ::std::convert::Into<crate::config::Builder>) -> Self {
         100  +
        self.config_override = Some(config_override.into());
         101  +
        self
         102  +
    }
         103  +
         104  +
    /// Sends the request and returns the response.
         105  +
    pub async fn send(self) -> crate::client::customize::internal::SendResult<T, E>
         106  +
    where
         107  +
        E: std::error::Error + ::std::marker::Send + ::std::marker::Sync + 'static,
         108  +
        B: crate::client::customize::internal::CustomizableSend<T, E>,
         109  +
    {
         110  +
        self.execute(|sender, config| sender.send(config)).await
         111  +
    }
         112  +
}
         113  +
         114  +
pub(crate) mod internal;

tmp-codegen-diff/aws-sdk/sdk/ssm/src/client/customize/internal.rs

@@ -0,1 +0,12 @@
           1  +
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
pub type BoxFuture<T> = ::std::pin::Pin<::std::boxed::Box<dyn ::std::future::Future<Output = T> + ::std::marker::Send>>;
           3  +
           4  +
pub type SendResult<T, E> =
           5  +
    ::std::result::Result<T, ::aws_smithy_runtime_api::client::result::SdkError<E, ::aws_smithy_runtime_api::client::orchestrator::HttpResponse>>;
           6  +
           7  +
pub trait CustomizableSend<T, E>: ::std::marker::Send + ::std::marker::Sync {
           8  +
    // Takes an owned `self` as the implementation will internally call methods that take `self`.
           9  +
    // If it took `&self`, that would make this trait object safe, but some implementing types do not
          10  +
    // derive `Clone`, unable to yield `self` from `&self`.
          11  +
    fn send(self, config_override: crate::config::Builder) -> BoxFuture<SendResult<T, E>>;
          12  +
}

tmp-codegen-diff/aws-sdk/sdk/ssm/src/client/delete_activation.rs

@@ -0,1 +0,12 @@
           1  +
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
impl super::Client {
           3  +
    /// Constructs a fluent builder for the [`DeleteActivation`](crate::operation::delete_activation::builders::DeleteActivationFluentBuilder) operation.
           4  +
    ///
           5  +
    /// - The fluent builder is configurable:
           6  +
    ///   - [`activation_id(impl Into<String>)`](crate::operation::delete_activation::builders::DeleteActivationFluentBuilder::activation_id) / [`set_activation_id(Option<String>)`](crate::operation::delete_activation::builders::DeleteActivationFluentBuilder::set_activation_id):<br>required: **true**<br><p>The ID of the activation that you want to delete.</p><br>
           7  +
    /// - On success, responds with [`DeleteActivationOutput`](crate::operation::delete_activation::DeleteActivationOutput)
           8  +
    /// - On failure, responds with [`SdkError<DeleteActivationError>`](crate::operation::delete_activation::DeleteActivationError)
           9  +
    pub fn delete_activation(&self) -> crate::operation::delete_activation::builders::DeleteActivationFluentBuilder {
          10  +
        crate::operation::delete_activation::builders::DeleteActivationFluentBuilder::new(self.handle.clone())
          11  +
    }
          12  +
}

tmp-codegen-diff/aws-sdk/sdk/ssm/src/client/delete_association.rs

@@ -0,1 +0,14 @@
           1  +
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
impl super::Client {
           3  +
    /// Constructs a fluent builder for the [`DeleteAssociation`](crate::operation::delete_association::builders::DeleteAssociationFluentBuilder) operation.
           4  +
    ///
           5  +
    /// - The fluent builder is configurable:
           6  +
    ///   - [`name(impl Into<String>)`](crate::operation::delete_association::builders::DeleteAssociationFluentBuilder::name) / [`set_name(Option<String>)`](crate::operation::delete_association::builders::DeleteAssociationFluentBuilder::set_name):<br>required: **false**<br><p>The name of the SSM document.</p><br>
           7  +
    ///   - [`instance_id(impl Into<String>)`](crate::operation::delete_association::builders::DeleteAssociationFluentBuilder::instance_id) / [`set_instance_id(Option<String>)`](crate::operation::delete_association::builders::DeleteAssociationFluentBuilder::set_instance_id):<br>required: **false**<br><p>The managed node ID.</p><note>  <p><code>InstanceId</code> has been deprecated. To specify a managed node ID for an association, use the <code>Targets</code> parameter. Requests that include the parameter <code>InstanceID</code> with Systems Manager documents (SSM documents) that use schema version 2.0 or later will fail. In addition, if you use the parameter <code>InstanceId</code>, you can't use the parameters <code>AssociationName</code>, <code>DocumentVersion</code>, <code>MaxErrors</code>, <code>MaxConcurrency</code>, <code>OutputLocation</code>, or <code>ScheduleExpression</code>. To use these parameters, you must use the <code>Targets</code> parameter.</p> </note><br>
           8  +
    ///   - [`association_id(impl Into<String>)`](crate::operation::delete_association::builders::DeleteAssociationFluentBuilder::association_id) / [`set_association_id(Option<String>)`](crate::operation::delete_association::builders::DeleteAssociationFluentBuilder::set_association_id):<br>required: **false**<br><p>The association ID that you want to delete.</p><br>
           9  +
    /// - On success, responds with [`DeleteAssociationOutput`](crate::operation::delete_association::DeleteAssociationOutput)
          10  +
    /// - On failure, responds with [`SdkError<DeleteAssociationError>`](crate::operation::delete_association::DeleteAssociationError)
          11  +
    pub fn delete_association(&self) -> crate::operation::delete_association::builders::DeleteAssociationFluentBuilder {
          12  +
        crate::operation::delete_association::builders::DeleteAssociationFluentBuilder::new(self.handle.clone())
          13  +
    }
          14  +
}

tmp-codegen-diff/aws-sdk/sdk/ssm/src/client/delete_cloud_connector.rs

@@ -0,1 +0,13 @@
           1  +
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
impl super::Client {
           3  +
    /// Constructs a fluent builder for the [`DeleteCloudConnector`](crate::operation::delete_cloud_connector::builders::DeleteCloudConnectorFluentBuilder) operation.
           4  +
    ///
           5  +
    /// - The fluent builder is configurable:
           6  +
    ///   - [`cloud_connector_id(impl Into<String>)`](crate::operation::delete_cloud_connector::builders::DeleteCloudConnectorFluentBuilder::cloud_connector_id) / [`set_cloud_connector_id(Option<String>)`](crate::operation::delete_cloud_connector::builders::DeleteCloudConnectorFluentBuilder::set_cloud_connector_id):<br>required: **true**<br><p>The ID of the cloud connector to delete.</p><br>
           7  +
    /// - On success, responds with [`DeleteCloudConnectorOutput`](crate::operation::delete_cloud_connector::DeleteCloudConnectorOutput) with field(s):
           8  +
    ///   - [`cloud_connector_id(Option<String>)`](crate::operation::delete_cloud_connector::DeleteCloudConnectorOutput::cloud_connector_id): <p>The ID of the cloud connector that was deleted.</p>
           9  +
    /// - On failure, responds with [`SdkError<DeleteCloudConnectorError>`](crate::operation::delete_cloud_connector::DeleteCloudConnectorError)
          10  +
    pub fn delete_cloud_connector(&self) -> crate::operation::delete_cloud_connector::builders::DeleteCloudConnectorFluentBuilder {
          11  +
        crate::operation::delete_cloud_connector::builders::DeleteCloudConnectorFluentBuilder::new(self.handle.clone())
          12  +
    }
          13  +
}