create_deployment_job

create_deployment_job(**kwargs)

Deploys a specific version of a robot application to robots in a fleet.

Warning

This API is no longer supported and will throw an error if used.

The robot application must have a numbered applicationVersion for consistency reasons. To create a new version, use CreateRobotApplicationVersion or see Creating a Robot Application Version.

Note

After 90 days, deployment jobs expire and will be deleted. They will no longer be accessible.

Danger

This operation is deprecated and may not function as expected. This operation should not be used going forward and is only kept for the purpose of backwards compatiblity.

See also: AWS API Documentation

Request Syntax

response = client.create_deployment_job(
    deploymentConfig={
        'concurrentDeploymentPercentage': 123,
        'failureThresholdPercentage': 123,
        'robotDeploymentTimeoutInSeconds': 123,
        'downloadConditionFile': {
            'bucket': 'string',
            'key': 'string',
            'etag': 'string'
        }
    },
    clientRequestToken='string',
    fleet='string',
    deploymentApplicationConfigs=[
        {
            'application': 'string',
            'applicationVersion': 'string',
            'launchConfig': {
                'packageName': 'string',
                'preLaunchFile': 'string',
                'launchFile': 'string',
                'postLaunchFile': 'string',
                'environmentVariables': {
                    'string': 'string'
                }
            }
        },
    ],
    tags={
        'string': 'string'
    }
)
Parameters
  • deploymentConfig (dict) --

    The requested deployment configuration.

    • concurrentDeploymentPercentage (integer) --

      The percentage of robots receiving the deployment at the same time.

    • failureThresholdPercentage (integer) --

      The percentage of deployments that need to fail before stopping deployment.

    • robotDeploymentTimeoutInSeconds (integer) --

      The amount of time, in seconds, to wait for deployment to a single robot to complete. Choose a time between 1 minute and 7 days. The default is 5 hours.

    • downloadConditionFile (dict) --

      The download condition file.

      • bucket (string) -- [REQUIRED]

        The bucket containing the object.

      • key (string) -- [REQUIRED]

        The key of the object.

      • etag (string) --

        The etag of the object.

  • clientRequestToken (string) --

    [REQUIRED]

    Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

    This field is autopopulated if not provided.

  • fleet (string) --

    [REQUIRED]

    The Amazon Resource Name (ARN) of the fleet to deploy.

  • deploymentApplicationConfigs (list) --

    [REQUIRED]

    The deployment application configuration.

    • (dict) --

      Information about a deployment application configuration.

      • application (string) -- [REQUIRED]

        The Amazon Resource Name (ARN) of the robot application.

      • applicationVersion (string) -- [REQUIRED]

        The version of the application.

      • launchConfig (dict) -- [REQUIRED]

        The launch configuration.

        • packageName (string) -- [REQUIRED]

          The package name.

        • preLaunchFile (string) --

          The deployment pre-launch file. This file will be executed prior to the launch file.

        • launchFile (string) -- [REQUIRED]

          The launch file name.

        • postLaunchFile (string) --

          The deployment post-launch file. This file will be executed after the launch file.

        • environmentVariables (dict) --

          An array of key/value pairs specifying environment variables for the robot application

          • (string) --
            • (string) --
  • tags (dict) --

    A map that contains tag keys and tag values that are attached to the deployment job.

    • (string) --
      • (string) --
Return type

dict

Returns

Response Syntax

{
    'arn': 'string',
    'fleet': 'string',
    'status': 'Pending'|'Preparing'|'InProgress'|'Failed'|'Succeeded'|'Canceled',
    'deploymentApplicationConfigs': [
        {
            'application': 'string',
            'applicationVersion': 'string',
            'launchConfig': {
                'packageName': 'string',
                'preLaunchFile': 'string',
                'launchFile': 'string',
                'postLaunchFile': 'string',
                'environmentVariables': {
                    'string': 'string'
                }
            }
        },
    ],
    'failureReason': 'string',
    'failureCode': 'ResourceNotFound'|'EnvironmentSetupError'|'EtagMismatch'|'FailureThresholdBreached'|'RobotDeploymentAborted'|'RobotDeploymentNoResponse'|'RobotAgentConnectionTimeout'|'GreengrassDeploymentFailed'|'InvalidGreengrassGroup'|'MissingRobotArchitecture'|'MissingRobotApplicationArchitecture'|'MissingRobotDeploymentResource'|'GreengrassGroupVersionDoesNotExist'|'LambdaDeleted'|'ExtractingBundleFailure'|'PreLaunchFileFailure'|'PostLaunchFileFailure'|'BadPermissionError'|'DownloadConditionFailed'|'BadLambdaAssociated'|'InternalServerError'|'RobotApplicationDoesNotExist'|'DeploymentFleetDoesNotExist'|'FleetDeploymentTimeout',
    'createdAt': datetime(2015, 1, 1),
    'deploymentConfig': {
        'concurrentDeploymentPercentage': 123,
        'failureThresholdPercentage': 123,
        'robotDeploymentTimeoutInSeconds': 123,
        'downloadConditionFile': {
            'bucket': 'string',
            'key': 'string',
            'etag': 'string'
        }
    },
    'tags': {
        'string': 'string'
    }
}

Response Structure

  • (dict) --

    • arn (string) --

      The Amazon Resource Name (ARN) of the deployment job.

    • fleet (string) --

      The target fleet for the deployment job.

    • status (string) --

      The status of the deployment job.

    • deploymentApplicationConfigs (list) --

      The deployment application configuration.

      • (dict) --

        Information about a deployment application configuration.

        • application (string) --

          The Amazon Resource Name (ARN) of the robot application.

        • applicationVersion (string) --

          The version of the application.

        • launchConfig (dict) --

          The launch configuration.

          • packageName (string) --

            The package name.

          • preLaunchFile (string) --

            The deployment pre-launch file. This file will be executed prior to the launch file.

          • launchFile (string) --

            The launch file name.

          • postLaunchFile (string) --

            The deployment post-launch file. This file will be executed after the launch file.

          • environmentVariables (dict) --

            An array of key/value pairs specifying environment variables for the robot application

            • (string) --
              • (string) --
    • failureReason (string) --

      The failure reason of the deployment job if it failed.

    • failureCode (string) --

      The failure code of the simulation job if it failed:

      BadPermissionError

      AWS Greengrass requires a service-level role permission to access other services. The role must include the AWSGreengrassResourceAccessRolePolicymanaged policy.

      ExtractingBundleFailure

      The robot application could not be extracted from the bundle.

      FailureThresholdBreached

      The percentage of robots that could not be updated exceeded the percentage set for the deployment.

      GreengrassDeploymentFailed

      The robot application could not be deployed to the robot.

      GreengrassGroupVersionDoesNotExist

      The AWS Greengrass group or version associated with a robot is missing.

      InternalServerError

      An internal error has occurred. Retry your request, but if the problem persists, contact us with details.

      MissingRobotApplicationArchitecture

      The robot application does not have a source that matches the architecture of the robot.

      MissingRobotDeploymentResource

      One or more of the resources specified for the robot application are missing. For example, does the robot application have the correct launch package and launch file?

      PostLaunchFileFailure

      The post-launch script failed.

      PreLaunchFileFailure

      The pre-launch script failed.

      ResourceNotFound

      One or more deployment resources are missing. For example, do robot application source bundles still exist?

      RobotDeploymentNoResponse

      There is no response from the robot. It might not be powered on or connected to the internet.

    • createdAt (datetime) --

      The time, in milliseconds since the epoch, when the fleet was created.

    • deploymentConfig (dict) --

      The deployment configuration.

      • concurrentDeploymentPercentage (integer) --

        The percentage of robots receiving the deployment at the same time.

      • failureThresholdPercentage (integer) --

        The percentage of deployments that need to fail before stopping deployment.

      • robotDeploymentTimeoutInSeconds (integer) --

        The amount of time, in seconds, to wait for deployment to a single robot to complete. Choose a time between 1 minute and 7 days. The default is 5 hours.

      • downloadConditionFile (dict) --

        The download condition file.

        • bucket (string) --

          The bucket containing the object.

        • key (string) --

          The key of the object.

        • etag (string) --

          The etag of the object.

    • tags (dict) --

      The list of all tags added to the deployment job.

      • (string) --
        • (string) --

Exceptions

  • RoboMaker.Client.exceptions.ResourceNotFoundException
  • RoboMaker.Client.exceptions.InvalidParameterException
  • RoboMaker.Client.exceptions.InternalServerException
  • RoboMaker.Client.exceptions.ThrottlingException
  • RoboMaker.Client.exceptions.LimitExceededException
  • RoboMaker.Client.exceptions.ConcurrentDeploymentException
  • RoboMaker.Client.exceptions.IdempotentParameterMismatchException