create_software_update_job

create_software_update_job(**kwargs)

Creates a software update for a core or group of cores (specified as an IoT thing group.) Use this to update the OTA Agent as well as the Greengrass core software. It makes use of the IoT Jobs feature which provides additional commands to manage a Greengrass core software update job.

See also: AWS API Documentation

Request Syntax

response = client.create_software_update_job(
    AmznClientToken='string',
    S3UrlSignerRole='string',
    SoftwareToUpdate='core'|'ota_agent',
    UpdateAgentLogLevel='NONE'|'TRACE'|'DEBUG'|'VERBOSE'|'INFO'|'WARN'|'ERROR'|'FATAL',
    UpdateTargets=[
        'string',
    ],
    UpdateTargetsArchitecture='armv6l'|'armv7l'|'x86_64'|'aarch64',
    UpdateTargetsOperatingSystem='ubuntu'|'raspbian'|'amazon_linux'|'openwrt'
)
Parameters
  • AmznClientToken (string) -- A client token used to correlate requests and responses.
  • S3UrlSignerRole (string) -- [REQUIRED] The IAM Role that Greengrass will use to create pre-signed URLs pointing towards the update artifact.
  • SoftwareToUpdate (string) -- [REQUIRED] The piece of software on the Greengrass core that will be updated.
  • UpdateAgentLogLevel (string) -- The minimum level of log statements that should be logged by the OTA Agent during an update.
  • UpdateTargets (list) --

    [REQUIRED] The ARNs of the targets (IoT things or IoT thing groups) that this update will be applied to.

    • (string) --
  • UpdateTargetsArchitecture (string) -- [REQUIRED] The architecture of the cores which are the targets of an update.
  • UpdateTargetsOperatingSystem (string) -- [REQUIRED] The operating system of the cores which are the targets of an update.
Return type

dict

Returns

Response Syntax

{
    'IotJobArn': 'string',
    'IotJobId': 'string',
    'PlatformSoftwareVersion': 'string'
}

Response Structure

  • (dict) -- success
    • IotJobArn (string) -- The IoT Job ARN corresponding to this update.
    • IotJobId (string) -- The IoT Job Id corresponding to this update.
    • PlatformSoftwareVersion (string) -- The software version installed on the device or devices after the update.

Exceptions

  • Greengrass.Client.exceptions.BadRequestException
  • Greengrass.Client.exceptions.InternalServerErrorException