AWS::IoT::JobTemplate - Amazon CloudFormation
Services or capabilities described in Amazon Web Services documentation might vary by Region. To see the differences applicable to the China Regions, see Getting Started with Amazon Web Services in China (PDF).

AWS::IoT::JobTemplate

Represents a job template.

Syntax

To declare this entity in your Amazon CloudFormation template, use the following syntax:

JSON

{ "Type" : "AWS::IoT::JobTemplate", "Properties" : { "AbortConfig" : AbortConfig, "Description" : String, "Document" : String, "DocumentSource" : String, "JobArn" : String, "JobExecutionsRetryConfig" : JobExecutionsRetryConfig, "JobExecutionsRolloutConfig" : JobExecutionsRolloutConfig, "JobTemplateId" : String, "MaintenanceWindows" : [ MaintenanceWindow, ... ], "PresignedUrlConfig" : PresignedUrlConfig, "Tags" : [ Tag, ... ], "TimeoutConfig" : TimeoutConfig } }

Properties

AbortConfig

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

Required: No

Type: AbortConfig

Update requires: Replacement

Description

A description of the job template.

Required: Yes

Type: String

Update requires: Replacement

Document

The job document.

Required if you don't specify a value for documentSource.

Required: No

Type: String

Update requires: Replacement

DocumentSource

An S3 link to the job document to use in the template. Required if you don't specify a value for document.

Note

If the job document resides in an S3 bucket, you must use a placeholder link when specifying the document.

The placeholder link is of the following form:

${aws:iot:s3-presigned-url:https://s3.amazonaws.com/bucket/key}

where bucket is your bucket name and key is the object in the bucket to which you are linking.

Required: No

Type: String

Update requires: Replacement

JobArn

The ARN of the job to use as the basis for the job template.

Required: No

Type: String

Update requires: Replacement

JobExecutionsRetryConfig

Allows you to create the criteria to retry a job.

Required: No

Type: JobExecutionsRetryConfig

Update requires: No interruption

JobExecutionsRolloutConfig

Allows you to create a staged rollout of a job.

Required: No

Type: JobExecutionsRolloutConfig

Update requires: Replacement

JobTemplateId

A unique identifier for the job template. We recommend using a UUID. Alpha-numeric characters, "-", and "_" are valid for use here.

Required: Yes

Type: String

Update requires: Replacement

MaintenanceWindows

An optional configuration within the SchedulingConfig to setup a recurring maintenance window with a predetermined start time and duration for the rollout of a job document to all devices in a target group for a job.

Required: No

Type: List of MaintenanceWindow

Update requires: No interruption

PresignedUrlConfig

Configuration for pre-signed S3 URLs.

Required: No

Type: PresignedUrlConfig

Update requires: Replacement

Tags

Metadata that can be used to manage the job template.

Required: No

Type: List of Tag

Update 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 to TIMED_OUT.

Required: No

Type: TimeoutConfig

Update requires: Replacement

Return values

Ref

When you pass the logical ID of this resource to the intrinsic Reffunction, Refreturns the job template Id. For example:

{ "Ref": "MyJobTemplate-12345" }

For more information about using the Reffunction, see Ref.

Fn::GetAtt

The Fn::GetAttintrinsic function returns a value for a specified attribute of this type. The following are the available attributes and sample return values.

For more information about using the Fn::GetAttintrinsic function, see Fn::GetAtt.

Arn

The ARN of the job to use as the basis for the job template.