amazonka-iot-2.0: Amazon IoT SDK.
Copyright(c) 2013-2023 Brendan Hay
LicenseMozilla Public License, v. 2.0.
MaintainerBrendan Hay
Stabilityauto-generated
Portabilitynon-portable (GHC extensions)
Safe HaskellSafe-Inferred
LanguageHaskell2010

Amazonka.IoT.CreateOTAUpdate

Description

Creates an IoT OTA update on a target group of things or groups.

Requires permission to access the CreateOTAUpdate action.

Synopsis

Creating a Request

data CreateOTAUpdate Source #

See: newCreateOTAUpdate smart constructor.

Constructors

CreateOTAUpdate' 

Fields

Instances

Instances details
ToJSON CreateOTAUpdate Source # 
Instance details

Defined in Amazonka.IoT.CreateOTAUpdate

ToHeaders CreateOTAUpdate Source # 
Instance details

Defined in Amazonka.IoT.CreateOTAUpdate

ToPath CreateOTAUpdate Source # 
Instance details

Defined in Amazonka.IoT.CreateOTAUpdate

ToQuery CreateOTAUpdate Source # 
Instance details

Defined in Amazonka.IoT.CreateOTAUpdate

AWSRequest CreateOTAUpdate Source # 
Instance details

Defined in Amazonka.IoT.CreateOTAUpdate

Associated Types

type AWSResponse CreateOTAUpdate #

Generic CreateOTAUpdate Source # 
Instance details

Defined in Amazonka.IoT.CreateOTAUpdate

Associated Types

type Rep CreateOTAUpdate :: Type -> Type #

Read CreateOTAUpdate Source # 
Instance details

Defined in Amazonka.IoT.CreateOTAUpdate

Show CreateOTAUpdate Source # 
Instance details

Defined in Amazonka.IoT.CreateOTAUpdate

NFData CreateOTAUpdate Source # 
Instance details

Defined in Amazonka.IoT.CreateOTAUpdate

Methods

rnf :: CreateOTAUpdate -> () #

Eq CreateOTAUpdate Source # 
Instance details

Defined in Amazonka.IoT.CreateOTAUpdate

Hashable CreateOTAUpdate Source # 
Instance details

Defined in Amazonka.IoT.CreateOTAUpdate

type AWSResponse CreateOTAUpdate Source # 
Instance details

Defined in Amazonka.IoT.CreateOTAUpdate

type Rep CreateOTAUpdate Source # 
Instance details

Defined in Amazonka.IoT.CreateOTAUpdate

type Rep CreateOTAUpdate = D1 ('MetaData "CreateOTAUpdate" "Amazonka.IoT.CreateOTAUpdate" "amazonka-iot-2.0-6w03vgAfmrM1SG22OsNJXL" 'False) (C1 ('MetaCons "CreateOTAUpdate'" 'PrefixI 'True) (((S1 ('MetaSel ('Just "additionalParameters") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe (HashMap Text Text))) :*: (S1 ('MetaSel ('Just "awsJobAbortConfig") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe AwsJobAbortConfig)) :*: S1 ('MetaSel ('Just "awsJobExecutionsRolloutConfig") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe AwsJobExecutionsRolloutConfig)))) :*: (S1 ('MetaSel ('Just "awsJobPresignedUrlConfig") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe AwsJobPresignedUrlConfig)) :*: (S1 ('MetaSel ('Just "awsJobTimeoutConfig") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe AwsJobTimeoutConfig)) :*: S1 ('MetaSel ('Just "description") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text))))) :*: ((S1 ('MetaSel ('Just "protocols") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe (NonEmpty Protocol))) :*: (S1 ('MetaSel ('Just "tags") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe [Tag])) :*: S1 ('MetaSel ('Just "targetSelection") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe TargetSelection)))) :*: ((S1 ('MetaSel ('Just "otaUpdateId") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text) :*: S1 ('MetaSel ('Just "targets") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (NonEmpty Text))) :*: (S1 ('MetaSel ('Just "files") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (NonEmpty OTAUpdateFile)) :*: S1 ('MetaSel ('Just "roleArn") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text))))))

newCreateOTAUpdate Source #

Create a value of CreateOTAUpdate with all optional fields omitted.

Use generic-lens or optics to modify other optional fields.

The following record fields are available, with the corresponding lenses provided for backwards compatibility:

CreateOTAUpdate, createOTAUpdate_additionalParameters - A list of additional OTA update parameters which are name-value pairs.

$sel:awsJobAbortConfig:CreateOTAUpdate', createOTAUpdate_awsJobAbortConfig - The criteria that determine when and how a job abort takes place.

CreateOTAUpdate, createOTAUpdate_awsJobExecutionsRolloutConfig - Configuration for the rollout of OTA updates.

CreateOTAUpdate, createOTAUpdate_awsJobPresignedUrlConfig - Configuration information for pre-signed URLs.

$sel:awsJobTimeoutConfig:CreateOTAUpdate', createOTAUpdate_awsJobTimeoutConfig - Specifies the amount of time each device has to finish its execution of the job. A timer is started when the job execution status is set to IN_PROGRESS. If the job execution status is not set to another terminal state before the timer expires, it will be automatically set to TIMED_OUT.

CreateOTAUpdate, createOTAUpdate_description - The description of the OTA update.

CreateOTAUpdate, createOTAUpdate_protocols - The protocol used to transfer the OTA update image. Valid values are [HTTP], [MQTT], [HTTP, MQTT]. When both HTTP and MQTT are specified, the target device can choose the protocol.

$sel:tags:CreateOTAUpdate', createOTAUpdate_tags - Metadata which can be used to manage updates.

CreateOTAUpdate, createOTAUpdate_targetSelection - Specifies whether the update will continue to run (CONTINUOUS), or will be complete after all the things specified as targets have completed the update (SNAPSHOT). If continuous, the update may also be run on a thing when a change is detected in a target. For example, an update will run on a thing when the thing is added to a target group, even after the update was completed by all things originally in the group. Valid values: CONTINUOUS | SNAPSHOT.

CreateOTAUpdate, createOTAUpdate_otaUpdateId - The ID of the OTA update to be created.

CreateOTAUpdate, createOTAUpdate_targets - The devices targeted to receive OTA updates.

CreateOTAUpdate, createOTAUpdate_files - The files to be streamed by the OTA update.

CreateOTAUpdate, createOTAUpdate_roleArn - The IAM role that grants Amazon Web Services IoT Core access to the Amazon S3, IoT jobs and Amazon Web Services Code Signing resources to create an OTA update job.

Request Lenses

createOTAUpdate_additionalParameters :: Lens' CreateOTAUpdate (Maybe (HashMap Text Text)) Source #

A list of additional OTA update parameters which are name-value pairs.

createOTAUpdate_awsJobAbortConfig :: Lens' CreateOTAUpdate (Maybe AwsJobAbortConfig) Source #

The criteria that determine when and how a job abort takes place.

createOTAUpdate_awsJobTimeoutConfig :: Lens' CreateOTAUpdate (Maybe AwsJobTimeoutConfig) Source #

Specifies the amount of time each device has to finish its execution of the job. A timer is started when the job execution status is set to IN_PROGRESS. If the job execution status is not set to another terminal state before the timer expires, it will be automatically set to TIMED_OUT.

createOTAUpdate_description :: Lens' CreateOTAUpdate (Maybe Text) Source #

The description of the OTA update.

createOTAUpdate_protocols :: Lens' CreateOTAUpdate (Maybe (NonEmpty Protocol)) Source #

The protocol used to transfer the OTA update image. Valid values are [HTTP], [MQTT], [HTTP, MQTT]. When both HTTP and MQTT are specified, the target device can choose the protocol.

createOTAUpdate_tags :: Lens' CreateOTAUpdate (Maybe [Tag]) Source #

Metadata which can be used to manage updates.

createOTAUpdate_targetSelection :: Lens' CreateOTAUpdate (Maybe TargetSelection) Source #

Specifies whether the update will continue to run (CONTINUOUS), or will be complete after all the things specified as targets have completed the update (SNAPSHOT). If continuous, the update may also be run on a thing when a change is detected in a target. For example, an update will run on a thing when the thing is added to a target group, even after the update was completed by all things originally in the group. Valid values: CONTINUOUS | SNAPSHOT.

createOTAUpdate_otaUpdateId :: Lens' CreateOTAUpdate Text Source #

The ID of the OTA update to be created.

createOTAUpdate_targets :: Lens' CreateOTAUpdate (NonEmpty Text) Source #

The devices targeted to receive OTA updates.

createOTAUpdate_files :: Lens' CreateOTAUpdate (NonEmpty OTAUpdateFile) Source #

The files to be streamed by the OTA update.

createOTAUpdate_roleArn :: Lens' CreateOTAUpdate Text Source #

The IAM role that grants Amazon Web Services IoT Core access to the Amazon S3, IoT jobs and Amazon Web Services Code Signing resources to create an OTA update job.

Destructuring the Response

data CreateOTAUpdateResponse Source #

See: newCreateOTAUpdateResponse smart constructor.

Constructors

CreateOTAUpdateResponse' 

Fields

Instances

Instances details
Generic CreateOTAUpdateResponse Source # 
Instance details

Defined in Amazonka.IoT.CreateOTAUpdate

Associated Types

type Rep CreateOTAUpdateResponse :: Type -> Type #

Read CreateOTAUpdateResponse Source # 
Instance details

Defined in Amazonka.IoT.CreateOTAUpdate

Show CreateOTAUpdateResponse Source # 
Instance details

Defined in Amazonka.IoT.CreateOTAUpdate

NFData CreateOTAUpdateResponse Source # 
Instance details

Defined in Amazonka.IoT.CreateOTAUpdate

Methods

rnf :: CreateOTAUpdateResponse -> () #

Eq CreateOTAUpdateResponse Source # 
Instance details

Defined in Amazonka.IoT.CreateOTAUpdate

type Rep CreateOTAUpdateResponse Source # 
Instance details

Defined in Amazonka.IoT.CreateOTAUpdate

type Rep CreateOTAUpdateResponse = D1 ('MetaData "CreateOTAUpdateResponse" "Amazonka.IoT.CreateOTAUpdate" "amazonka-iot-2.0-6w03vgAfmrM1SG22OsNJXL" 'False) (C1 ('MetaCons "CreateOTAUpdateResponse'" 'PrefixI 'True) ((S1 ('MetaSel ('Just "awsIotJobArn") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: (S1 ('MetaSel ('Just "awsIotJobId") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "otaUpdateArn") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)))) :*: (S1 ('MetaSel ('Just "otaUpdateId") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: (S1 ('MetaSel ('Just "otaUpdateStatus") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe OTAUpdateStatus)) :*: S1 ('MetaSel ('Just "httpStatus") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Int)))))

newCreateOTAUpdateResponse Source #

Create a value of CreateOTAUpdateResponse with all optional fields omitted.

Use generic-lens or optics to modify other optional fields.

The following record fields are available, with the corresponding lenses provided for backwards compatibility:

CreateOTAUpdateResponse, createOTAUpdateResponse_awsIotJobArn - The IoT job ARN associated with the OTA update.

CreateOTAUpdateResponse, createOTAUpdateResponse_awsIotJobId - The IoT job ID associated with the OTA update.

CreateOTAUpdateResponse, createOTAUpdateResponse_otaUpdateArn - The OTA update ARN.

CreateOTAUpdate, createOTAUpdateResponse_otaUpdateId - The OTA update ID.

CreateOTAUpdateResponse, createOTAUpdateResponse_otaUpdateStatus - The OTA update status.

$sel:httpStatus:CreateOTAUpdateResponse', createOTAUpdateResponse_httpStatus - The response's http status code.

Response Lenses

createOTAUpdateResponse_awsIotJobArn :: Lens' CreateOTAUpdateResponse (Maybe Text) Source #

The IoT job ARN associated with the OTA update.

createOTAUpdateResponse_awsIotJobId :: Lens' CreateOTAUpdateResponse (Maybe Text) Source #

The IoT job ID associated with the OTA update.