1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
    /// Constructs a fluent builder for the [`CreateSoftwareUpdateJob`](crate::operation::create_software_update_job::builders::CreateSoftwareUpdateJobFluentBuilder) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`amzn_client_token(impl Into<String>)`](crate::operation::create_software_update_job::builders::CreateSoftwareUpdateJobFluentBuilder::amzn_client_token) / [`set_amzn_client_token(Option<String>)`](crate::operation::create_software_update_job::builders::CreateSoftwareUpdateJobFluentBuilder::set_amzn_client_token):<br>required: **false**<br>A client token used to correlate requests and responses.<br>
    ///   - [`s3_url_signer_role(impl Into<String>)`](crate::operation::create_software_update_job::builders::CreateSoftwareUpdateJobFluentBuilder::s3_url_signer_role) / [`set_s3_url_signer_role(Option<String>)`](crate::operation::create_software_update_job::builders::CreateSoftwareUpdateJobFluentBuilder::set_s3_url_signer_role):<br>required: **true**<br>The IAM Role that Greengrass will use to create pre-signed URLs pointing towards the update artifact.<br>
    ///   - [`software_to_update(SoftwareToUpdate)`](crate::operation::create_software_update_job::builders::CreateSoftwareUpdateJobFluentBuilder::software_to_update) / [`set_software_to_update(Option<SoftwareToUpdate>)`](crate::operation::create_software_update_job::builders::CreateSoftwareUpdateJobFluentBuilder::set_software_to_update):<br>required: **true**<br>The piece of software on the Greengrass core that will be updated.<br>
    ///   - [`update_agent_log_level(UpdateAgentLogLevel)`](crate::operation::create_software_update_job::builders::CreateSoftwareUpdateJobFluentBuilder::update_agent_log_level) / [`set_update_agent_log_level(Option<UpdateAgentLogLevel>)`](crate::operation::create_software_update_job::builders::CreateSoftwareUpdateJobFluentBuilder::set_update_agent_log_level):<br>required: **false**<br>The minimum level of log statements that should be logged by the OTA Agent during an update.<br>
    ///   - [`update_targets(impl Into<String>)`](crate::operation::create_software_update_job::builders::CreateSoftwareUpdateJobFluentBuilder::update_targets) / [`set_update_targets(Option<Vec::<String>>)`](crate::operation::create_software_update_job::builders::CreateSoftwareUpdateJobFluentBuilder::set_update_targets):<br>required: **true**<br>The ARNs of the targets (IoT things or IoT thing groups) that this update will be applied to.<br>
    ///   - [`update_targets_architecture(UpdateTargetsArchitecture)`](crate::operation::create_software_update_job::builders::CreateSoftwareUpdateJobFluentBuilder::update_targets_architecture) / [`set_update_targets_architecture(Option<UpdateTargetsArchitecture>)`](crate::operation::create_software_update_job::builders::CreateSoftwareUpdateJobFluentBuilder::set_update_targets_architecture):<br>required: **true**<br>The architecture of the cores which are the targets of an update.<br>
    ///   - [`update_targets_operating_system(UpdateTargetsOperatingSystem)`](crate::operation::create_software_update_job::builders::CreateSoftwareUpdateJobFluentBuilder::update_targets_operating_system) / [`set_update_targets_operating_system(Option<UpdateTargetsOperatingSystem>)`](crate::operation::create_software_update_job::builders::CreateSoftwareUpdateJobFluentBuilder::set_update_targets_operating_system):<br>required: **true**<br>The operating system of the cores which are the targets of an update.<br>
    /// - On success, responds with [`CreateSoftwareUpdateJobOutput`](crate::operation::create_software_update_job::CreateSoftwareUpdateJobOutput) with field(s):
    ///   - [`iot_job_arn(Option<String>)`](crate::operation::create_software_update_job::CreateSoftwareUpdateJobOutput::iot_job_arn): The IoT Job ARN corresponding to this update.
    ///   - [`iot_job_id(Option<String>)`](crate::operation::create_software_update_job::CreateSoftwareUpdateJobOutput::iot_job_id): The IoT Job Id corresponding to this update.
    ///   - [`platform_software_version(Option<String>)`](crate::operation::create_software_update_job::CreateSoftwareUpdateJobOutput::platform_software_version): The software version installed on the device or devices after the update.
    /// - On failure, responds with [`SdkError<CreateSoftwareUpdateJobError>`](crate::operation::create_software_update_job::CreateSoftwareUpdateJobError)
    pub fn create_software_update_job(&self) -> crate::operation::create_software_update_job::builders::CreateSoftwareUpdateJobFluentBuilder {
        crate::operation::create_software_update_job::builders::CreateSoftwareUpdateJobFluentBuilder::new(self.handle.clone())
    }
}