Skip to content

aws.greengrassv2.get_deployment

Example SQL Queries

SELECT * FROM
aws.greengrassv2.get_deployment
WHERE
"deployment_id" = 'VALUE';

Description

Gets a deployment. Deployments define the components that run on Greengrass core devices.

Table Definition

Column NameColumn Data Type
deployment_id Required Input Column

The ID of the deployment.

VARCHAR
_aws_profile Input Column

The AWS profile defines the AWS identity used. It can be defined via credentials or by assuming a IAM role.

STRUCT(
"type" VARCHAR,
"name" VARCHAR,
"account_id" VARCHAR,
"via_profile_name" VARCHAR,
"assumed_role_arn" VARCHAR,
"organization" STRUCT(
"account_name" VARCHAR,
"id" VARCHAR,
"tags" STRUCT(
"key" VARCHAR,
"value" VARCHAR
)[],
"master_account" STRUCT(
"id" VARCHAR,
"email" VARCHAR
),
"parents" STRUCT(
"type" VARCHAR,
"id" VARCHAR,
"name" VARCHAR,
"tags" STRUCT(
"key" VARCHAR,
"value" VARCHAR
)[]
)[]
)
)
Show child fields
_aws_profile.account_id

The AWS account id

_aws_profile.assumed_role_arn

The ARN of the assumed role

_aws_profile.name

The unique name of the profile.

_aws_profile.organization

Information about this profile's membership in the AWS organization.

Show child fields
_aws_profile.organization.account_name

The name of account speciifed by the organization

_aws_profile.organization.id

The organization id

_aws_profile.organization.master_account
Show child fields
_aws_profile.organization.master_account.email

The organization master account email address

_aws_profile.organization.master_account.id

The organization master account id

_aws_profile.organization.parents[]
Show child fields
_aws_profile.organization.parents[].id

The id of the parent

_aws_profile.organization.parents[].name

The name of the parent

_aws_profile.organization.parents[].tags[]
Show child fields
_aws_profile.organization.parents[].tags[].key
_aws_profile.organization.parents[].tags[].value
_aws_profile.organization.parents[].type

The type of parent can be an organization unit or a root

_aws_profile.organization.tags[]
Show child fields
_aws_profile.organization.tags[].key
_aws_profile.organization.tags[].value
_aws_profile.type

The type of profile, either 'credentials' or 'assumed_role'

_aws_profile.via_profile_name

This IAM role for this profile is assumed by first utilizing another profile with this name to obtain credentials.

components

The components to deploy. This is a dictionary, where each key is the name of a component, and each key's value is the version and configuration to deploy for that component.

MAP(VARCHAR, STRUCT(
"component_version" VARCHAR,
"configuration_update" STRUCT(
"merge" VARCHAR,
"reset" VARCHAR[]
),
"run_with" STRUCT(
"posix_user" VARCHAR,
"system_resource_limits" STRUCT(
"memory" BIGINT,
"cpus" DOUBLE
),
"windows_user" VARCHAR
)
))
creation_timestamp

The time at which the deployment was created, expressed in ISO 8601 format.

TIMESTAMP_S
deployment_name

The name of the deployment.

VARCHAR
deployment_policies

The deployment policies for the deployment. These policies define how the deployment updates components and handles failure.

STRUCT(
"failure_handling_policy" VARCHAR,
"component_update_policy" STRUCT(
"timeout_in_seconds" BIGINT,
"action" VARCHAR
),
"configuration_validation_policy" STRUCT(
"timeout_in_seconds" BIGINT
)
)
Show child fields
deployment_policies.component_update_policy

The component update policy for the configuration deployment. This policy defines when it's safe to deploy the configuration to devices.

Show child fields
deployment_policies.component_update_policy.action

Whether or not to notify components and wait for components to become safe to update. Choose from the following options:

  • NOTIFY_COMPONENTS – The deployment notifies each component before it stops and updates that component. Components can use the SubscribeToComponentUpdates IPC operation to receive these notifications. Then, components can respond with the DeferComponentUpdate IPC operation. For more information, see Create deployments in the IoT Greengrass V2 Developer Guide.

  • SKIP_NOTIFY_COMPONENTS – The deployment doesn't notify components or wait for them to be safe to update.

Default: NOTIFY_COMPONENTS

deployment_policies.component_update_policy.timeout_in_seconds

The amount of time in seconds that each component on a device has to report that it's safe to update. If the component waits for longer than this timeout, then the deployment proceeds on the device.

Default: 60

deployment_policies.configuration_validation_policy

The configuration validation policy for the configuration deployment. This policy defines how long each component has to validate its configure updates.

Show child fields
deployment_policies.configuration_validation_policy.timeout_in_seconds

The amount of time in seconds that a component can validate its configuration updates. If the validation time exceeds this timeout, then the deployment proceeds for the device.

Default: 30

deployment_policies.failure_handling_policy

The failure handling policy for the configuration deployment. This policy defines what to do if the deployment fails.

Default: ROLLBACK

deployment_status

The status of the deployment.

VARCHAR
iot_job_arn

The ARN of the IoT job that applies the deployment to target devices.

VARCHAR
iot_job_configuration

The job configuration for the deployment configuration. The job configuration specifies the rollout, timeout, and stop configurations for the deployment configuration.

STRUCT(
"job_executions_rollout_config" STRUCT(
"exponential_rate" STRUCT(
"base_rate_per_minute" BIGINT,
"increment_factor" DOUBLE,
"rate_increase_criteria" STRUCT(
"number_of_notified_things" BIGINT,
"number_of_succeeded_things" BIGINT
)
),
"maximum_per_minute" BIGINT
),
"abort_config" STRUCT(
"criteria_list" STRUCT(
"failure_type" VARCHAR,
"action" VARCHAR,
"threshold_percentage" DOUBLE,
"min_number_of_executed_things" BIGINT
)[]
),
"timeout_config" STRUCT(
"in_progress_timeout_in_minutes" BIGINT
)
)
Show child fields
iot_job_configuration.abort_config

The stop configuration for the job. This configuration defines when and how to stop a job rollout.

Show child fields
iot_job_configuration.abort_config.criteria_list[]
Show child fields
iot_job_configuration.abort_config.criteria_list[].action

The action to perform when the criteria are met.

iot_job_configuration.abort_config.criteria_list[].failure_type

The type of job deployment failure that can cancel a job.

iot_job_configuration.abort_config.criteria_list[].min_number_of_executed_things

The minimum number of things that receive the configuration before the job can cancel.

iot_job_configuration.abort_config.criteria_list[].threshold_percentage

The minimum percentage of failureType failures that occur before the job can cancel.

This parameter supports up to two digits after the decimal (for example, you can specify 10.9 or 10.99, but not 10.999).

iot_job_configuration.job_executions_rollout_config

The rollout configuration for the job. This configuration defines the rate at which the job rolls out to the fleet of target devices.

Show child fields
iot_job_configuration.job_executions_rollout_config.exponential_rate

The exponential rate to increase the job rollout rate.

Show child fields
iot_job_configuration.job_executions_rollout_config.exponential_rate.base_rate_per_minute

The minimum number of devices that receive a pending job notification, per minute, when the job starts. This parameter defines the initial rollout rate of the job.

iot_job_configuration.job_executions_rollout_config.exponential_rate.increment_factor

The exponential factor to increase the rollout rate for the job.

This parameter supports up to one digit after the decimal (for example, you can specify 1.5, but not 1.55).

iot_job_configuration.job_executions_rollout_config.exponential_rate.rate_increase_criteria

The criteria to increase the rollout rate for the job.

Show child fields
iot_job_configuration.job_executions_rollout_config.exponential_rate.rate_increase_criteria.number_of_notified_things

The number of devices to receive the job notification before the rollout rate increases.

iot_job_configuration.job_executions_rollout_config.exponential_rate.rate_increase_criteria.number_of_succeeded_things

The number of devices to successfully run the configuration job before the rollout rate increases.

iot_job_configuration.job_executions_rollout_config.maximum_per_minute

The maximum number of devices that receive a pending job notification, per minute.

iot_job_configuration.timeout_config

The timeout configuration for the job. This configuration defines the amount of time each device has to complete the job.

Show child fields
iot_job_configuration.timeout_config.in_progress_timeout_in_minutes

The amount of time, in minutes, that devices have to complete the job. The timer starts when the job status is set to IN_PROGRESS. If the job status doesn't change to a terminal state before the time expires, then the job status is set to TIMED_OUT.

The timeout interval must be between 1 minute and 7 days (10080 minutes).

iot_job_id

The ID of the IoT job that applies the deployment to target devices.

VARCHAR
is_latest_for_target

Whether or not the deployment is the latest revision for its target.

BOOLEAN
parent_target_arn

The parent deployment's target ARN within a subdeployment.

VARCHAR
revision_id

The revision number of the deployment.

VARCHAR
tags

A list of key-value pairs that contain metadata for the resource. For more information, see Tag your resources in the IoT Greengrass V2 Developer Guide.

MAP(VARCHAR, VARCHAR)
target_arn

The ARN of the target IoT thing or thing group.

VARCHAR