CmdID

CmdID / aws / aws greengrassv2

aws greengrassv2 create-deployment

Creates a continuous deployment for a target, which is a Greengrass core device or group of core devices. AWS CLI reference

2 examples 8 options Its page in the AWS CLI reference

Opens CmdID with your command. It is read in your browser and sent nowhere.

Examples

from aws-cli, each command read by CmdID

Example 1: To create a deployment

The following create-deployment example deploys the AWS IoT Greengrass Command Line Interface to a core device.

aws greengrassv2 create-deployment --cli-input-json file://cli-deployment.jsonIdentify

Contents of cli-deployment.json:

{
    "targetArn": "arn:aws:iot:us-west-2:123456789012:thing/MyGreengrassCore",
    "deploymentName": "Deployment for MyGreengrassCore",
    "components": {
        "aws.greengrass.Cli": {
            "componentVersion": "2.0.3"
        }
    },
    "deploymentPolicies": {
        "failureHandlingPolicy": "DO_NOTHING",
        "componentUpdatePolicy": {
            "timeoutInSeconds": 60,
            "action": "NOTIFY_COMPONENTS"
        },
        "configurationValidationPolicy": {
            "timeoutInSeconds": 60
        }
    },
    "iotJobConfiguration": {}
}
Its output
{
    "deploymentId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111"
}

For more information, see Create deployments in the AWS IoT Greengrass V2 Developer Guide.

Example 2: To create a deployment that updates component configurations

The following create-deployment example deploys the AWS IoT Greengrass nucleus component to a group of core devices. This deployment applies the following configuration updates for the nucleus component:

Reset the target devices' proxy settings to their default no proxy settings.

Reset the target devices' MQTT settings to their defaults.

Sets the JVM options for the nucleus' JVM.

Sets the logging level for the nucleus.

The following command deploys the component to the group of core devices.

aws greengrassv2 create-deployment --cli-input-json file://nucleus-deployment.jsonIdentify

Contents of nucleus-deployment.json:

{
    "targetArn": "arn:aws:iot:us-west-2:123456789012:thinggroup/MyGreengrassCoreGroup",
    "deploymentName": "Deployment for MyGreengrassCoreGroup",
    "components": {
        "aws.greengrass.Nucleus": {
            "componentVersion": "2.0.3",
            "configurationUpdate": {
                "reset": [
                    "/networkProxy",
                    "/mqtt"
                ],
                "merge": "{\"jvmOptions\":\"-Xmx64m\",\"logging\":{\"level\":\"WARN\"}}"
            }
        }
    },
    "deploymentPolicies": {
        "failureHandlingPolicy": "ROLLBACK",
        "componentUpdatePolicy": {
            "timeoutInSeconds": 60,
            "action": "NOTIFY_COMPONENTS"
        },
        "configurationValidationPolicy": {
            "timeoutInSeconds": 60
        }
    },
    "iotJobConfiguration": {}
}
Its output
{
    "deploymentId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
    "iotJobId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222",
    "iotJobArn": "arn:aws:iot:us-west-2:123456789012:job/a1b2c3d4-5678-90ab-cdef-EXAMPLE22222"
}

For more information, see Create deployments and Update component configurations in the AWS IoT Greengrass V2 Developer Guide.

Options

8 in the AWS CLI reference
--client-tokenA unique, case-sensitive identifier that you can provide to ensure that the request is idempotent.
--componentsThe components to deploy.
--deployment-nameThe name of the deployment.
--deployment-policiesThe deployment policies for the deployment.
--iot-job-configurationThe job configuration for the deployment configuration.
--parent-target-arnThe parent deployment's target ARN within a subdeployment.
--tagsA list of key-value pairs that contain metadata for the resource.
--target-arnThe ARN of the target IoT thing or thing group.