This is the new CloudFormation Template Reference Guide. Please update your bookmarks and links. For help getting started with CloudFormation, see the AWS CloudFormation User Guide.
AWS::IoT::Job
Creates a job.
Requires permission to access the CreateJob action.
Syntax
To declare this entity in your CloudFormation template, use the following syntax:
JSON
{ "Type" : "AWS::IoT::Job", "Properties" : { "AbortConfig" :AbortConfig, "Description" :String, "DestinationPackageVersions" :[ String, ... ], "Document" :String, "DocumentParameters" :{, "DocumentSource" :Key:Value, ...}String, "JobExecutionsRetryConfig" :JobExecutionsRetryConfig, "JobExecutionsRolloutConfig" :JobExecutionsRolloutConfig, "JobId" :String, "JobTemplateArn" :String, "PresignedUrlConfig" :PresignedUrlConfig, "SchedulingConfig" :SchedulingConfig, "Tags" :[ Tag, ... ], "Targets" :[ String, ... ], "TargetSelection" :String, "TimeoutConfig" :TimeoutConfig} }
YAML
Type: AWS::IoT::Job Properties: AbortConfig:AbortConfigDescription:StringDestinationPackageVersions:- StringDocument:StringDocumentParameters:DocumentSource:Key:ValueStringJobExecutionsRetryConfig:JobExecutionsRetryConfigJobExecutionsRolloutConfig:JobExecutionsRolloutConfigJobId:StringJobTemplateArn:StringPresignedUrlConfig:PresignedUrlConfigSchedulingConfig:SchedulingConfigTags:- TagTargets:- StringTargetSelection:StringTimeoutConfig:TimeoutConfig
Properties
AbortConfig-
Configuration for criteria to abort the job.
Required: No
Type: AbortConfig
Update requires: No interruption
Description-
A short text description of the job.
Required: No
Type: String
Pattern:
^[^\p{C}]+$Minimum:
1Maximum:
2028Update requires: No interruption
DestinationPackageVersions-
The package version Amazon Resource Names (ARNs) that are installed on the device when the job successfully completes. The package version must be in either the Published or Deprecated state when the job deploys. For more information, see Package version lifecycle.The package version must be in either the Published or Deprecated state when the job deploys. For more information, see Package version lifecycle.
Note:The following Length Constraints relates to a single ARN. Up to 25 package version ARNs are allowed.
Required: No
Type: Array of String
Minimum:
1Maximum:
1600Update requires: Replacement
DocumentProperty description not available.
Required: No
Type: String
Minimum:
0Maximum:
32768Update requires: Replacement
DocumentParameters-
A key-value map that pairs the patterns that need to be replaced in a managed template job document schema. You can use the description of each key as a guidance to specify the inputs during runtime when creating a job.
Note
documentParameterscan only be used when creating jobs from AWS managed templates. This parameter can't be used with custom job templates or to create jobs from them.Required: No
Type: Object of String
Pattern:
^[a-zA-Z0-9_-]+$Minimum:
1Maximum:
30720Update requires: Replacement
DocumentSourceProperty description not available.
Required: No
Type: String
Minimum:
1Maximum:
1350Update requires: Replacement
JobExecutionsRetryConfig-
The configuration for the criteria to retry the job.
Required: No
Type: JobExecutionsRetryConfig
Update requires: Replacement
JobExecutionsRolloutConfig-
Allows you to create a staged rollout of a job.
Required: No
Type: JobExecutionsRolloutConfig
Update requires: No interruption
JobId-
The unique identifier you assigned to this job when it was created.
Required: Yes
Type: String
Pattern:
^[a-zA-Z0-9_-]+$Minimum:
1Maximum:
64Update requires: Replacement
JobTemplateArn-
The ARN of the job template.
Required: No
Type: String
Pattern:
^arn:[!-~]+$Minimum:
1Maximum:
1600Update requires: Replacement
PresignedUrlConfig-
Configuration for pre-signed S3 URLs.
Required: No
Type: PresignedUrlConfig
Update requires: No interruption
SchedulingConfigProperty description not available.
Required: No
Type: SchedulingConfig
Update requires: Replacement
Property description not available.
Required: No
Type: Array of Tag
Update requires: No interruption
Targets-
A list of IoT things and thing groups to which the job should be sent.
Required: Yes
Type: Array of String
Maximum:
2048Minimum:
0 | 1Update requires: Replacement
TargetSelection-
Specifies whether the job will continue to run (CONTINUOUS), or will be complete after all those things specified as targets have completed the job (SNAPSHOT). If continuous, the job may also be run on a thing when a change is detected in a target. For example, a job will run on a device when the thing representing the device is added to a target group, even after the job was completed by all things originally in the group.
Note
We recommend that you use continuous jobs instead of snapshot jobs for dynamic thing group targets. By using continuous jobs, devices that join the group receive the job execution even after the job has been created.
Required: No
Type: String
Allowed values:
CONTINUOUS | SNAPSHOTUpdate requires: Replacement
TimeoutConfig-
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 toTIMED_OUT.Required: No
Type: TimeoutConfig
Update requires: No interruption
Return values
Ref
Fn::GetAtt
ArnProperty description not available.
CreatedAt-
The time, in seconds since the epoch, when the job was created.