AWS::IoT::JobTemplate - AWS CloudFormation

AWS::IoT::JobTemplate

Represents a job template.

Syntax

To declare this entity in your AWS 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 Ref function, Ref returns the job template Id. For example:

{ "Ref": "MyJobTemplate-12345" }

For more information about using the Ref function, see Ref.

Fn::GetAtt

The Fn::GetAtt intrinsic 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::GetAtt intrinsic function, see Fn::GetAtt.

Arn

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