AWS RoboMaker

2021/10/14 - AWS RoboMaker - 16 updated api methods

Changes  Adding support to GPU simulation jobs as well as non-ROS simulation jobs.

BatchDescribeSimulationJob (updated) Link ¶
Changes (response)
{'jobs': {'compute': {'computeType': 'CPU | GPU_AND_CPU',
                      'gpuUnitLimit': 'integer'},
          'dataSources': {'destination': 'string',
                          'type': 'Prefix | Archive | File'},
          'robotApplications': {'launchConfig': {'command': ['string']}},
          'simulationApplications': {'launchConfig': {'command': ['string']}}}}

Describes one or more simulation jobs.

See also: AWS API Documentation

Request Syntax

client.batch_describe_simulation_job(
    jobs=[
        'string',
    ]
)
type jobs

list

param jobs

[REQUIRED]

A list of Amazon Resource Names (ARNs) of simulation jobs to describe.

  • (string) --

rtype

dict

returns

Response Syntax

{
    'jobs': [
        {
            'arn': 'string',
            'name': 'string',
            'status': 'Pending'|'Preparing'|'Running'|'Restarting'|'Completed'|'Failed'|'RunningFailed'|'Terminating'|'Terminated'|'Canceled',
            'lastStartedAt': datetime(2015, 1, 1),
            'lastUpdatedAt': datetime(2015, 1, 1),
            'failureBehavior': 'Fail'|'Continue',
            'failureCode': 'InternalServiceError'|'RobotApplicationCrash'|'SimulationApplicationCrash'|'RobotApplicationHealthCheckFailure'|'SimulationApplicationHealthCheckFailure'|'BadPermissionsRobotApplication'|'BadPermissionsSimulationApplication'|'BadPermissionsS3Object'|'BadPermissionsS3Output'|'BadPermissionsCloudwatchLogs'|'SubnetIpLimitExceeded'|'ENILimitExceeded'|'BadPermissionsUserCredentials'|'InvalidBundleRobotApplication'|'InvalidBundleSimulationApplication'|'InvalidS3Resource'|'ThrottlingError'|'LimitExceeded'|'MismatchedEtag'|'RobotApplicationVersionMismatchedEtag'|'SimulationApplicationVersionMismatchedEtag'|'ResourceNotFound'|'RequestThrottled'|'BatchTimedOut'|'BatchCanceled'|'InvalidInput'|'WrongRegionS3Bucket'|'WrongRegionS3Output'|'WrongRegionRobotApplication'|'WrongRegionSimulationApplication'|'UploadContentMismatchError',
            'failureReason': 'string',
            'clientRequestToken': 'string',
            'outputLocation': {
                's3Bucket': 'string',
                's3Prefix': 'string'
            },
            'loggingConfig': {
                'recordAllRosTopics': True|False
            },
            'maxJobDurationInSeconds': 123,
            'simulationTimeMillis': 123,
            'iamRole': 'string',
            'robotApplications': [
                {
                    'application': 'string',
                    'applicationVersion': 'string',
                    'launchConfig': {
                        'packageName': 'string',
                        'launchFile': 'string',
                        'environmentVariables': {
                            'string': 'string'
                        },
                        'portForwardingConfig': {
                            'portMappings': [
                                {
                                    'jobPort': 123,
                                    'applicationPort': 123,
                                    'enableOnPublicIp': True|False
                                },
                            ]
                        },
                        'streamUI': True|False,
                        'command': [
                            'string',
                        ]
                    },
                    'uploadConfigurations': [
                        {
                            'name': 'string',
                            'path': 'string',
                            'uploadBehavior': 'UPLOAD_ON_TERMINATE'|'UPLOAD_ROLLING_AUTO_REMOVE'
                        },
                    ],
                    'useDefaultUploadConfigurations': True|False,
                    'tools': [
                        {
                            'streamUI': True|False,
                            'name': 'string',
                            'command': 'string',
                            'streamOutputToCloudWatch': True|False,
                            'exitBehavior': 'FAIL'|'RESTART'
                        },
                    ],
                    'useDefaultTools': True|False
                },
            ],
            'simulationApplications': [
                {
                    'application': 'string',
                    'applicationVersion': 'string',
                    'launchConfig': {
                        'packageName': 'string',
                        'launchFile': 'string',
                        'environmentVariables': {
                            'string': 'string'
                        },
                        'portForwardingConfig': {
                            'portMappings': [
                                {
                                    'jobPort': 123,
                                    'applicationPort': 123,
                                    'enableOnPublicIp': True|False
                                },
                            ]
                        },
                        'streamUI': True|False,
                        'command': [
                            'string',
                        ]
                    },
                    'uploadConfigurations': [
                        {
                            'name': 'string',
                            'path': 'string',
                            'uploadBehavior': 'UPLOAD_ON_TERMINATE'|'UPLOAD_ROLLING_AUTO_REMOVE'
                        },
                    ],
                    'worldConfigs': [
                        {
                            'world': 'string'
                        },
                    ],
                    'useDefaultUploadConfigurations': True|False,
                    'tools': [
                        {
                            'streamUI': True|False,
                            'name': 'string',
                            'command': 'string',
                            'streamOutputToCloudWatch': True|False,
                            'exitBehavior': 'FAIL'|'RESTART'
                        },
                    ],
                    'useDefaultTools': True|False
                },
            ],
            'dataSources': [
                {
                    'name': 'string',
                    's3Bucket': 'string',
                    's3Keys': [
                        {
                            's3Key': 'string',
                            'etag': 'string'
                        },
                    ],
                    'type': 'Prefix'|'Archive'|'File',
                    'destination': 'string'
                },
            ],
            'tags': {
                'string': 'string'
            },
            'vpcConfig': {
                'subnets': [
                    'string',
                ],
                'securityGroups': [
                    'string',
                ],
                'vpcId': 'string',
                'assignPublicIp': True|False
            },
            'networkInterface': {
                'networkInterfaceId': 'string',
                'privateIpAddress': 'string',
                'publicIpAddress': 'string'
            },
            'compute': {
                'simulationUnitLimit': 123,
                'computeType': 'CPU'|'GPU_AND_CPU',
                'gpuUnitLimit': 123
            }
        },
    ],
    'unprocessedJobs': [
        'string',
    ]
}

Response Structure

  • (dict) --

    • jobs (list) --

      A list of simulation jobs.

      • (dict) --

        Information about a simulation job.

        • arn (string) --

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

        • name (string) --

          The name of the simulation job.

        • status (string) --

          Status of the simulation job.

        • lastStartedAt (datetime) --

          The time, in milliseconds since the epoch, when the simulation job was last started.

        • lastUpdatedAt (datetime) --

          The time, in milliseconds since the epoch, when the simulation job was last updated.

        • failureBehavior (string) --

          The failure behavior the simulation job.

          Continue

          Leaves the host running for its maximum timeout duration after a 4XX error code.

          Fail

          Stop the simulation job and terminate the instance.

        • failureCode (string) --

          The failure code of the simulation job if it failed.

        • failureReason (string) --

          The reason why the simulation job failed.

        • clientRequestToken (string) --

          A unique identifier for this SimulationJob request.

        • outputLocation (dict) --

          Location for output files generated by the simulation job.

          • s3Bucket (string) --

            The S3 bucket for output.

          • s3Prefix (string) --

            The S3 folder in the s3Bucket where output files will be placed.

        • loggingConfig (dict) --

          The logging configuration.

          • recordAllRosTopics (boolean) --

            A boolean indicating whether to record all ROS topics.

        • maxJobDurationInSeconds (integer) --

          The maximum simulation job duration in seconds. The value must be 8 days (691,200 seconds) or less.

        • simulationTimeMillis (integer) --

          The simulation job execution duration in milliseconds.

        • iamRole (string) --

          The IAM role that allows the simulation instance to call the AWS APIs that are specified in its associated policies on your behalf. This is how credentials are passed in to your simulation job.

        • robotApplications (list) --

          A list of robot applications.

          • (dict) --

            Application configuration information for a robot.

            • application (string) --

              The application information for the robot application.

            • applicationVersion (string) --

              The version of the robot application.

            • launchConfig (dict) --

              The launch configuration for the robot application.

              • packageName (string) --

                The package name.

              • launchFile (string) --

                The launch file name.

              • environmentVariables (dict) --

                The environment variables for the application launch.

                • (string) --

                  • (string) --

              • portForwardingConfig (dict) --

                The port forwarding configuration.

                • portMappings (list) --

                  The port mappings for the configuration.

                  • (dict) --

                    An object representing a port mapping.

                    • jobPort (integer) --

                      The port number on the simulation job instance to use as a remote connection point.

                    • applicationPort (integer) --

                      The port number on the application.

                    • enableOnPublicIp (boolean) --

                      A Boolean indicating whether to enable this port mapping on public IP.

              • streamUI (boolean) --

                Boolean indicating whether a streaming session will be configured for the application. If True , AWS RoboMaker will configure a connection so you can interact with your application as it is running in the simulation. You must configure and launch the component. It must have a graphical user interface.

              • command (list) --

                If you've specified General as the value for your RobotSoftwareSuite , you can use this field to specify a list of commands for your container image.

                If you've specified SimulationRuntime as the value for your SimulationSoftwareSuite , you can use this field to specify a list of commands for your container image.

                • (string) --

            • uploadConfigurations (list) --

              The upload configurations for the robot application.

              • (dict) --

                Provides upload configuration information. Files are uploaded from the simulation job to a location you specify.

                • name (string) --

                  A prefix that specifies where files will be uploaded in Amazon S3. It is appended to the simulation output location to determine the final path.

                  For example, if your simulation output location is s3://my-bucket and your upload configuration name is robot-test , your files will be uploaded to s3://my-bucket/<simid>/<runid>/robot-test .

                • path (string) --

                  Specifies the path of the file(s) to upload. Standard Unix glob matching rules are accepted, with the addition of ** as a super asterisk . For example, specifying /var/log/**.log causes all .log files in the /var/log directory tree to be collected. For more examples, see Glob Library .

                • uploadBehavior (string) --

                  Specifies when to upload the files:

                  UPLOAD_ON_TERMINATE

                  Matching files are uploaded once the simulation enters the TERMINATING state. Matching files are not uploaded until all of your code (including tools) have stopped.

                  If there is a problem uploading a file, the upload is retried. If problems persist, no further upload attempts will be made.

                  UPLOAD_ROLLING_AUTO_REMOVE

                  Matching files are uploaded as they are created. They are deleted after they are uploaded. The specified path is checked every 5 seconds. A final check is made when all of your code (including tools) have stopped.

            • useDefaultUploadConfigurations (boolean) --

              A Boolean indicating whether to use default upload configurations. By default, .ros and .gazebo files are uploaded when the application terminates and all ROS topics will be recorded.

              If you set this value, you must specify an outputLocation .

            • tools (list) --

              Information about tools configured for the robot application.

              • (dict) --

                Information about a tool. Tools are used in a simulation job.

                • streamUI (boolean) --

                  Boolean indicating whether a streaming session will be configured for the tool. If True , AWS RoboMaker will configure a connection so you can interact with the tool as it is running in the simulation. It must have a graphical user interface. The default is False .

                • name (string) --

                  The name of the tool.

                • command (string) --

                  Command-line arguments for the tool. It must include the tool executable name.

                • streamOutputToCloudWatch (boolean) --

                  Boolean indicating whether logs will be recorded in CloudWatch for the tool. The default is False .

                • exitBehavior (string) --

                  Exit behavior determines what happens when your tool quits running. RESTART will cause your tool to be restarted. FAIL will cause your job to exit. The default is RESTART .

            • useDefaultTools (boolean) --

              A Boolean indicating whether to use default robot application tools. The default tools are rviz, rqt, terminal and rosbag record. The default is False .

        • simulationApplications (list) --

          A list of simulation applications.

          • (dict) --

            Information about a simulation application configuration.

            • application (string) --

              The application information for the simulation application.

            • applicationVersion (string) --

              The version of the simulation application.

            • launchConfig (dict) --

              The launch configuration for the simulation application.

              • packageName (string) --

                The package name.

              • launchFile (string) --

                The launch file name.

              • environmentVariables (dict) --

                The environment variables for the application launch.

                • (string) --

                  • (string) --

              • portForwardingConfig (dict) --

                The port forwarding configuration.

                • portMappings (list) --

                  The port mappings for the configuration.

                  • (dict) --

                    An object representing a port mapping.

                    • jobPort (integer) --

                      The port number on the simulation job instance to use as a remote connection point.

                    • applicationPort (integer) --

                      The port number on the application.

                    • enableOnPublicIp (boolean) --

                      A Boolean indicating whether to enable this port mapping on public IP.

              • streamUI (boolean) --

                Boolean indicating whether a streaming session will be configured for the application. If True , AWS RoboMaker will configure a connection so you can interact with your application as it is running in the simulation. You must configure and launch the component. It must have a graphical user interface.

              • command (list) --

                If you've specified General as the value for your RobotSoftwareSuite , you can use this field to specify a list of commands for your container image.

                If you've specified SimulationRuntime as the value for your SimulationSoftwareSuite , you can use this field to specify a list of commands for your container image.

                • (string) --

            • uploadConfigurations (list) --

              Information about upload configurations for the simulation application.

              • (dict) --

                Provides upload configuration information. Files are uploaded from the simulation job to a location you specify.

                • name (string) --

                  A prefix that specifies where files will be uploaded in Amazon S3. It is appended to the simulation output location to determine the final path.

                  For example, if your simulation output location is s3://my-bucket and your upload configuration name is robot-test , your files will be uploaded to s3://my-bucket/<simid>/<runid>/robot-test .

                • path (string) --

                  Specifies the path of the file(s) to upload. Standard Unix glob matching rules are accepted, with the addition of ** as a super asterisk . For example, specifying /var/log/**.log causes all .log files in the /var/log directory tree to be collected. For more examples, see Glob Library .

                • uploadBehavior (string) --

                  Specifies when to upload the files:

                  UPLOAD_ON_TERMINATE

                  Matching files are uploaded once the simulation enters the TERMINATING state. Matching files are not uploaded until all of your code (including tools) have stopped.

                  If there is a problem uploading a file, the upload is retried. If problems persist, no further upload attempts will be made.

                  UPLOAD_ROLLING_AUTO_REMOVE

                  Matching files are uploaded as they are created. They are deleted after they are uploaded. The specified path is checked every 5 seconds. A final check is made when all of your code (including tools) have stopped.

            • worldConfigs (list) --

              A list of world configurations.

              • (dict) --

                Configuration information for a world.

                • world (string) --

                  The world generated by Simulation WorldForge.

            • useDefaultUploadConfigurations (boolean) --

              A Boolean indicating whether to use default upload configurations. By default, .ros and .gazebo files are uploaded when the application terminates and all ROS topics will be recorded.

              If you set this value, you must specify an outputLocation .

            • tools (list) --

              Information about tools configured for the simulation application.

              • (dict) --

                Information about a tool. Tools are used in a simulation job.

                • streamUI (boolean) --

                  Boolean indicating whether a streaming session will be configured for the tool. If True , AWS RoboMaker will configure a connection so you can interact with the tool as it is running in the simulation. It must have a graphical user interface. The default is False .

                • name (string) --

                  The name of the tool.

                • command (string) --

                  Command-line arguments for the tool. It must include the tool executable name.

                • streamOutputToCloudWatch (boolean) --

                  Boolean indicating whether logs will be recorded in CloudWatch for the tool. The default is False .

                • exitBehavior (string) --

                  Exit behavior determines what happens when your tool quits running. RESTART will cause your tool to be restarted. FAIL will cause your job to exit. The default is RESTART .

            • useDefaultTools (boolean) --

              A Boolean indicating whether to use default simulation application tools. The default tools are rviz, rqt, terminal and rosbag record. The default is False .

        • dataSources (list) --

          The data sources for the simulation job.

          • (dict) --

            Information about a data source.

            • name (string) --

              The name of the data source.

            • s3Bucket (string) --

              The S3 bucket where the data files are located.

            • s3Keys (list) --

              The list of S3 keys identifying the data source files.

              • (dict) --

                Information about S3 keys.

                • s3Key (string) --

                  The S3 key.

                • etag (string) --

                  The etag for the object.

            • type (string) --

              The data type for the data source that you're using for your container image or simulation job. You can use this field to specify whether your data source is an Archive, an Amazon S3 prefix, or a file.

              If you don't specify a field, the default value is File .

            • destination (string) --

              The location where your files are mounted in the container image.

              If you've specified the type of the data source as an Archive , you must provide an Amazon S3 object key to your archive. The object key must point to either a .zip or .tar.gz file.

              If you've specified the type of the data source as a Prefix , you provide the Amazon S3 prefix that points to the files that you are using for your data source.

              If you've specified the type of the data source as a File , you provide the Amazon S3 path to the file that you're using as your data source.

        • tags (dict) --

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

          • (string) --

            • (string) --

        • vpcConfig (dict) --

          VPC configuration information.

          • subnets (list) --

            A list of subnet IDs associated with the simulation job.

            • (string) --

          • securityGroups (list) --

            A list of security group IDs associated with the simulation job.

            • (string) --

          • vpcId (string) --

            The VPC ID associated with your simulation job.

          • assignPublicIp (boolean) --

            A boolean indicating if a public IP was assigned.

        • networkInterface (dict) --

          Information about a network interface.

          • networkInterfaceId (string) --

            The ID of the network interface.

          • privateIpAddress (string) --

            The IPv4 address of the network interface within the subnet.

          • publicIpAddress (string) --

            The IPv4 public address of the network interface.

        • compute (dict) --

          Compute information for the simulation job

          • simulationUnitLimit (integer) --

            The simulation unit limit. Your simulation is allocated CPU and memory proportional to the supplied simulation unit limit. A simulation unit is 1 vcpu and 2GB of memory. You are only billed for the SU utilization you consume up to the maximum value provided. The default is 15.

          • computeType (string) --

            Compute type response information for the simulation job.

          • gpuUnitLimit (integer) --

            Compute GPU unit limit for the simulation job. It is the same as the number of GPUs allocated to the SimulationJob.

    • unprocessedJobs (list) --

      A list of unprocessed simulation job Amazon Resource Names (ARNs).

      • (string) --

CreateRobotApplication (updated) Link ¶
Changes (both)
{'robotSoftwareSuite': {'name': {'General'}}}

Creates a robot application.

See also: AWS API Documentation

Request Syntax

client.create_robot_application(
    name='string',
    sources=[
        {
            's3Bucket': 'string',
            's3Key': 'string',
            'architecture': 'X86_64'|'ARM64'|'ARMHF'
        },
    ],
    robotSoftwareSuite={
        'name': 'ROS'|'ROS2'|'General',
        'version': 'Kinetic'|'Melodic'|'Dashing'|'Foxy'
    },
    tags={
        'string': 'string'
    },
    environment={
        'uri': 'string'
    }
)
type name

string

param name

[REQUIRED]

The name of the robot application.

type sources

list

param sources

The sources of the robot application.

  • (dict) --

    Information about a source configuration.

    • s3Bucket (string) --

      The Amazon S3 bucket name.

    • s3Key (string) --

      The s3 object key.

    • architecture (string) --

      The target processor architecture for the application.

type robotSoftwareSuite

dict

param robotSoftwareSuite

[REQUIRED]

The robot software suite (ROS distribuition) used by the robot application.

  • name (string) --

    The name of the robot software suite (ROS distribution).

  • version (string) --

    The version of the robot software suite (ROS distribution).

type tags

dict

param tags

A map that contains tag keys and tag values that are attached to the robot application.

  • (string) --

    • (string) --

type environment

dict

param environment

The object that contains that URI of the Docker image that you use for your robot application.

  • uri (string) --

    The Docker image URI for either your robot or simulation applications.

rtype

dict

returns

Response Syntax

{
    'arn': 'string',
    'name': 'string',
    'version': 'string',
    'sources': [
        {
            's3Bucket': 'string',
            's3Key': 'string',
            'etag': 'string',
            'architecture': 'X86_64'|'ARM64'|'ARMHF'
        },
    ],
    'robotSoftwareSuite': {
        'name': 'ROS'|'ROS2'|'General',
        'version': 'Kinetic'|'Melodic'|'Dashing'|'Foxy'
    },
    'lastUpdatedAt': datetime(2015, 1, 1),
    'revisionId': 'string',
    'tags': {
        'string': 'string'
    },
    'environment': {
        'uri': 'string'
    }
}

Response Structure

  • (dict) --

    • arn (string) --

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

    • name (string) --

      The name of the robot application.

    • version (string) --

      The version of the robot application.

    • sources (list) --

      The sources of the robot application.

      • (dict) --

        Information about a source.

        • s3Bucket (string) --

          The s3 bucket name.

        • s3Key (string) --

          The s3 object key.

        • etag (string) --

          A hash of the object specified by s3Bucket and s3Key .

        • architecture (string) --

          The taget processor architecture for the application.

    • robotSoftwareSuite (dict) --

      The robot software suite (ROS distribution) used by the robot application.

      • name (string) --

        The name of the robot software suite (ROS distribution).

      • version (string) --

        The version of the robot software suite (ROS distribution).

    • lastUpdatedAt (datetime) --

      The time, in milliseconds since the epoch, when the robot application was last updated.

    • revisionId (string) --

      The revision id of the robot application.

    • tags (dict) --

      The list of all tags added to the robot application.

      • (string) --

        • (string) --

    • environment (dict) --

      An object that contains the Docker image URI used to a create your robot application.

      • uri (string) --

        The Docker image URI for either your robot or simulation applications.

CreateRobotApplicationVersion (updated) Link ¶
Changes (response)
{'robotSoftwareSuite': {'name': {'General'}}}

Creates a version of a robot application.

See also: AWS API Documentation

Request Syntax

client.create_robot_application_version(
    application='string',
    currentRevisionId='string',
    s3Etags=[
        'string',
    ],
    imageDigest='string'
)
type application

string

param application

[REQUIRED]

The application information for the robot application.

type currentRevisionId

string

param currentRevisionId

The current revision id for the robot application. If you provide a value and it matches the latest revision ID, a new version will be created.

type s3Etags

list

param s3Etags

The Amazon S3 identifier for the zip file bundle that you use for your robot application.

  • (string) --

type imageDigest

string

param imageDigest

A SHA256 identifier for the Docker image that you use for your robot application.

rtype

dict

returns

Response Syntax

{
    'arn': 'string',
    'name': 'string',
    'version': 'string',
    'sources': [
        {
            's3Bucket': 'string',
            's3Key': 'string',
            'etag': 'string',
            'architecture': 'X86_64'|'ARM64'|'ARMHF'
        },
    ],
    'robotSoftwareSuite': {
        'name': 'ROS'|'ROS2'|'General',
        'version': 'Kinetic'|'Melodic'|'Dashing'|'Foxy'
    },
    'lastUpdatedAt': datetime(2015, 1, 1),
    'revisionId': 'string',
    'environment': {
        'uri': 'string'
    }
}

Response Structure

  • (dict) --

    • arn (string) --

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

    • name (string) --

      The name of the robot application.

    • version (string) --

      The version of the robot application.

    • sources (list) --

      The sources of the robot application.

      • (dict) --

        Information about a source.

        • s3Bucket (string) --

          The s3 bucket name.

        • s3Key (string) --

          The s3 object key.

        • etag (string) --

          A hash of the object specified by s3Bucket and s3Key .

        • architecture (string) --

          The taget processor architecture for the application.

    • robotSoftwareSuite (dict) --

      The robot software suite (ROS distribution) used by the robot application.

      • name (string) --

        The name of the robot software suite (ROS distribution).

      • version (string) --

        The version of the robot software suite (ROS distribution).

    • lastUpdatedAt (datetime) --

      The time, in milliseconds since the epoch, when the robot application was last updated.

    • revisionId (string) --

      The revision id of the robot application.

    • environment (dict) --

      The object that contains the Docker image URI used to create your robot application.

      • uri (string) --

        The Docker image URI for either your robot or simulation applications.

CreateSimulationApplication (updated) Link ¶
Changes (both)
{'robotSoftwareSuite': {'name': {'General'}},
 'simulationSoftwareSuite': {'name': {'SimulationRuntime'}}}

Creates a simulation application.

See also: AWS API Documentation

Request Syntax

client.create_simulation_application(
    name='string',
    sources=[
        {
            's3Bucket': 'string',
            's3Key': 'string',
            'architecture': 'X86_64'|'ARM64'|'ARMHF'
        },
    ],
    simulationSoftwareSuite={
        'name': 'Gazebo'|'RosbagPlay'|'SimulationRuntime',
        'version': 'string'
    },
    robotSoftwareSuite={
        'name': 'ROS'|'ROS2'|'General',
        'version': 'Kinetic'|'Melodic'|'Dashing'|'Foxy'
    },
    renderingEngine={
        'name': 'OGRE',
        'version': 'string'
    },
    tags={
        'string': 'string'
    },
    environment={
        'uri': 'string'
    }
)
type name

string

param name

[REQUIRED]

The name of the simulation application.

type sources

list

param sources

The sources of the simulation application.

  • (dict) --

    Information about a source configuration.

    • s3Bucket (string) --

      The Amazon S3 bucket name.

    • s3Key (string) --

      The s3 object key.

    • architecture (string) --

      The target processor architecture for the application.

type simulationSoftwareSuite

dict

param simulationSoftwareSuite

[REQUIRED]

The simulation software suite used by the simulation application.

  • name (string) --

    The name of the simulation software suite.

  • version (string) --

    The version of the simulation software suite.

type robotSoftwareSuite

dict

param robotSoftwareSuite

[REQUIRED]

The robot software suite (ROS distribution) used by the simulation application.

  • name (string) --

    The name of the robot software suite (ROS distribution).

  • version (string) --

    The version of the robot software suite (ROS distribution).

type renderingEngine

dict

param renderingEngine

The rendering engine for the simulation application.

  • name (string) --

    The name of the rendering engine.

  • version (string) --

    The version of the rendering engine.

type tags

dict

param tags

A map that contains tag keys and tag values that are attached to the simulation application.

  • (string) --

    • (string) --

type environment

dict

param environment

The object that contains the Docker image URI used to create your simulation application.

  • uri (string) --

    The Docker image URI for either your robot or simulation applications.

rtype

dict

returns

Response Syntax

{
    'arn': 'string',
    'name': 'string',
    'version': 'string',
    'sources': [
        {
            's3Bucket': 'string',
            's3Key': 'string',
            'etag': 'string',
            'architecture': 'X86_64'|'ARM64'|'ARMHF'
        },
    ],
    'simulationSoftwareSuite': {
        'name': 'Gazebo'|'RosbagPlay'|'SimulationRuntime',
        'version': 'string'
    },
    'robotSoftwareSuite': {
        'name': 'ROS'|'ROS2'|'General',
        'version': 'Kinetic'|'Melodic'|'Dashing'|'Foxy'
    },
    'renderingEngine': {
        'name': 'OGRE',
        'version': 'string'
    },
    'lastUpdatedAt': datetime(2015, 1, 1),
    'revisionId': 'string',
    'tags': {
        'string': 'string'
    },
    'environment': {
        'uri': 'string'
    }
}

Response Structure

  • (dict) --

    • arn (string) --

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

    • name (string) --

      The name of the simulation application.

    • version (string) --

      The version of the simulation application.

    • sources (list) --

      The sources of the simulation application.

      • (dict) --

        Information about a source.

        • s3Bucket (string) --

          The s3 bucket name.

        • s3Key (string) --

          The s3 object key.

        • etag (string) --

          A hash of the object specified by s3Bucket and s3Key .

        • architecture (string) --

          The taget processor architecture for the application.

    • simulationSoftwareSuite (dict) --

      The simulation software suite used by the simulation application.

      • name (string) --

        The name of the simulation software suite.

      • version (string) --

        The version of the simulation software suite.

    • robotSoftwareSuite (dict) --

      Information about the robot software suite (ROS distribution).

      • name (string) --

        The name of the robot software suite (ROS distribution).

      • version (string) --

        The version of the robot software suite (ROS distribution).

    • renderingEngine (dict) --

      The rendering engine for the simulation application.

      • name (string) --

        The name of the rendering engine.

      • version (string) --

        The version of the rendering engine.

    • lastUpdatedAt (datetime) --

      The time, in milliseconds since the epoch, when the simulation application was last updated.

    • revisionId (string) --

      The revision id of the simulation application.

    • tags (dict) --

      The list of all tags added to the simulation application.

      • (string) --

        • (string) --

    • environment (dict) --

      The object that contains the Docker image URI that you used to create your simulation application.

      • uri (string) --

        The Docker image URI for either your robot or simulation applications.

CreateSimulationApplicationVersion (updated) Link ¶
Changes (response)
{'robotSoftwareSuite': {'name': {'General'}},
 'simulationSoftwareSuite': {'name': {'SimulationRuntime'}}}

Creates a simulation application with a specific revision id.

See also: AWS API Documentation

Request Syntax

client.create_simulation_application_version(
    application='string',
    currentRevisionId='string',
    s3Etags=[
        'string',
    ],
    imageDigest='string'
)
type application

string

param application

[REQUIRED]

The application information for the simulation application.

type currentRevisionId

string

param currentRevisionId

The current revision id for the simulation application. If you provide a value and it matches the latest revision ID, a new version will be created.

type s3Etags

list

param s3Etags

The Amazon S3 eTag identifier for the zip file bundle that you use to create the simulation application.

  • (string) --

type imageDigest

string

param imageDigest

The SHA256 digest used to identify the Docker image URI used to created the simulation application.

rtype

dict

returns

Response Syntax

{
    'arn': 'string',
    'name': 'string',
    'version': 'string',
    'sources': [
        {
            's3Bucket': 'string',
            's3Key': 'string',
            'etag': 'string',
            'architecture': 'X86_64'|'ARM64'|'ARMHF'
        },
    ],
    'simulationSoftwareSuite': {
        'name': 'Gazebo'|'RosbagPlay'|'SimulationRuntime',
        'version': 'string'
    },
    'robotSoftwareSuite': {
        'name': 'ROS'|'ROS2'|'General',
        'version': 'Kinetic'|'Melodic'|'Dashing'|'Foxy'
    },
    'renderingEngine': {
        'name': 'OGRE',
        'version': 'string'
    },
    'lastUpdatedAt': datetime(2015, 1, 1),
    'revisionId': 'string',
    'environment': {
        'uri': 'string'
    }
}

Response Structure

  • (dict) --

    • arn (string) --

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

    • name (string) --

      The name of the simulation application.

    • version (string) --

      The version of the simulation application.

    • sources (list) --

      The sources of the simulation application.

      • (dict) --

        Information about a source.

        • s3Bucket (string) --

          The s3 bucket name.

        • s3Key (string) --

          The s3 object key.

        • etag (string) --

          A hash of the object specified by s3Bucket and s3Key .

        • architecture (string) --

          The taget processor architecture for the application.

    • simulationSoftwareSuite (dict) --

      The simulation software suite used by the simulation application.

      • name (string) --

        The name of the simulation software suite.

      • version (string) --

        The version of the simulation software suite.

    • robotSoftwareSuite (dict) --

      Information about the robot software suite (ROS distribution).

      • name (string) --

        The name of the robot software suite (ROS distribution).

      • version (string) --

        The version of the robot software suite (ROS distribution).

    • renderingEngine (dict) --

      The rendering engine for the simulation application.

      • name (string) --

        The name of the rendering engine.

      • version (string) --

        The version of the rendering engine.

    • lastUpdatedAt (datetime) --

      The time, in milliseconds since the epoch, when the simulation application was last updated.

    • revisionId (string) --

      The revision ID of the simulation application.

    • environment (dict) --

      The object that contains the Docker image URI used to create the simulation application.

      • uri (string) --

        The Docker image URI for either your robot or simulation applications.

CreateSimulationJob (updated) Link ¶
Changes (both)
{'compute': {'computeType': 'CPU | GPU_AND_CPU', 'gpuUnitLimit': 'integer'},
 'dataSources': {'destination': 'string', 'type': 'Prefix | Archive | File'},
 'robotApplications': {'launchConfig': {'command': ['string']}},
 'simulationApplications': {'launchConfig': {'command': ['string']}}}

Creates a simulation job.

Note

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

See also: AWS API Documentation

Request Syntax

client.create_simulation_job(
    clientRequestToken='string',
    outputLocation={
        's3Bucket': 'string',
        's3Prefix': 'string'
    },
    loggingConfig={
        'recordAllRosTopics': True|False
    },
    maxJobDurationInSeconds=123,
    iamRole='string',
    failureBehavior='Fail'|'Continue',
    robotApplications=[
        {
            'application': 'string',
            'applicationVersion': 'string',
            'launchConfig': {
                'packageName': 'string',
                'launchFile': 'string',
                'environmentVariables': {
                    'string': 'string'
                },
                'portForwardingConfig': {
                    'portMappings': [
                        {
                            'jobPort': 123,
                            'applicationPort': 123,
                            'enableOnPublicIp': True|False
                        },
                    ]
                },
                'streamUI': True|False,
                'command': [
                    'string',
                ]
            },
            'uploadConfigurations': [
                {
                    'name': 'string',
                    'path': 'string',
                    'uploadBehavior': 'UPLOAD_ON_TERMINATE'|'UPLOAD_ROLLING_AUTO_REMOVE'
                },
            ],
            'useDefaultUploadConfigurations': True|False,
            'tools': [
                {
                    'streamUI': True|False,
                    'name': 'string',
                    'command': 'string',
                    'streamOutputToCloudWatch': True|False,
                    'exitBehavior': 'FAIL'|'RESTART'
                },
            ],
            'useDefaultTools': True|False
        },
    ],
    simulationApplications=[
        {
            'application': 'string',
            'applicationVersion': 'string',
            'launchConfig': {
                'packageName': 'string',
                'launchFile': 'string',
                'environmentVariables': {
                    'string': 'string'
                },
                'portForwardingConfig': {
                    'portMappings': [
                        {
                            'jobPort': 123,
                            'applicationPort': 123,
                            'enableOnPublicIp': True|False
                        },
                    ]
                },
                'streamUI': True|False,
                'command': [
                    'string',
                ]
            },
            'uploadConfigurations': [
                {
                    'name': 'string',
                    'path': 'string',
                    'uploadBehavior': 'UPLOAD_ON_TERMINATE'|'UPLOAD_ROLLING_AUTO_REMOVE'
                },
            ],
            'worldConfigs': [
                {
                    'world': 'string'
                },
            ],
            'useDefaultUploadConfigurations': True|False,
            'tools': [
                {
                    'streamUI': True|False,
                    'name': 'string',
                    'command': 'string',
                    'streamOutputToCloudWatch': True|False,
                    'exitBehavior': 'FAIL'|'RESTART'
                },
            ],
            'useDefaultTools': True|False
        },
    ],
    dataSources=[
        {
            'name': 'string',
            's3Bucket': 'string',
            's3Keys': [
                'string',
            ],
            'type': 'Prefix'|'Archive'|'File',
            'destination': 'string'
        },
    ],
    tags={
        'string': 'string'
    },
    vpcConfig={
        'subnets': [
            'string',
        ],
        'securityGroups': [
            'string',
        ],
        'assignPublicIp': True|False
    },
    compute={
        'simulationUnitLimit': 123,
        'computeType': 'CPU'|'GPU_AND_CPU',
        'gpuUnitLimit': 123
    }
)
type clientRequestToken

string

param clientRequestToken

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

This field is autopopulated if not provided.

type outputLocation

dict

param outputLocation

Location for output files generated by the simulation job.

  • s3Bucket (string) --

    The S3 bucket for output.

  • s3Prefix (string) --

    The S3 folder in the s3Bucket where output files will be placed.

type loggingConfig

dict

param loggingConfig

The logging configuration.

  • recordAllRosTopics (boolean) -- [REQUIRED]

    A boolean indicating whether to record all ROS topics.

type maxJobDurationInSeconds

integer

param maxJobDurationInSeconds

[REQUIRED]

The maximum simulation job duration in seconds (up to 14 days or 1,209,600 seconds. When maxJobDurationInSeconds is reached, the simulation job will status will transition to Completed .

type iamRole

string

param iamRole

[REQUIRED]

The IAM role name that allows the simulation instance to call the AWS APIs that are specified in its associated policies on your behalf. This is how credentials are passed in to your simulation job.

type failureBehavior

string

param failureBehavior

The failure behavior the simulation job.

Continue

Leaves the instance running for its maximum timeout duration after a 4XX error code.

Fail

Stop the simulation job and terminate the instance.

type robotApplications

list

param robotApplications

The robot application to use in the simulation job.

  • (dict) --

    Application configuration information for a robot.

    • application (string) -- [REQUIRED]

      The application information for the robot application.

    • applicationVersion (string) --

      The version of the robot application.

    • launchConfig (dict) -- [REQUIRED]

      The launch configuration for the robot application.

      • packageName (string) --

        The package name.

      • launchFile (string) --

        The launch file name.

      • environmentVariables (dict) --

        The environment variables for the application launch.

        • (string) --

          • (string) --

      • portForwardingConfig (dict) --

        The port forwarding configuration.

        • portMappings (list) --

          The port mappings for the configuration.

          • (dict) --

            An object representing a port mapping.

            • jobPort (integer) -- [REQUIRED]

              The port number on the simulation job instance to use as a remote connection point.

            • applicationPort (integer) -- [REQUIRED]

              The port number on the application.

            • enableOnPublicIp (boolean) --

              A Boolean indicating whether to enable this port mapping on public IP.

      • streamUI (boolean) --

        Boolean indicating whether a streaming session will be configured for the application. If True , AWS RoboMaker will configure a connection so you can interact with your application as it is running in the simulation. You must configure and launch the component. It must have a graphical user interface.

      • command (list) --

        If you've specified General as the value for your RobotSoftwareSuite , you can use this field to specify a list of commands for your container image.

        If you've specified SimulationRuntime as the value for your SimulationSoftwareSuite , you can use this field to specify a list of commands for your container image.

        • (string) --

    • uploadConfigurations (list) --

      The upload configurations for the robot application.

      • (dict) --

        Provides upload configuration information. Files are uploaded from the simulation job to a location you specify.

        • name (string) -- [REQUIRED]

          A prefix that specifies where files will be uploaded in Amazon S3. It is appended to the simulation output location to determine the final path.

          For example, if your simulation output location is s3://my-bucket and your upload configuration name is robot-test , your files will be uploaded to s3://my-bucket/<simid>/<runid>/robot-test .

        • path (string) -- [REQUIRED]

          Specifies the path of the file(s) to upload. Standard Unix glob matching rules are accepted, with the addition of ** as a super asterisk . For example, specifying /var/log/**.log causes all .log files in the /var/log directory tree to be collected. For more examples, see Glob Library .

        • uploadBehavior (string) -- [REQUIRED]

          Specifies when to upload the files:

          UPLOAD_ON_TERMINATE

          Matching files are uploaded once the simulation enters the TERMINATING state. Matching files are not uploaded until all of your code (including tools) have stopped.

          If there is a problem uploading a file, the upload is retried. If problems persist, no further upload attempts will be made.

          UPLOAD_ROLLING_AUTO_REMOVE

          Matching files are uploaded as they are created. They are deleted after they are uploaded. The specified path is checked every 5 seconds. A final check is made when all of your code (including tools) have stopped.

    • useDefaultUploadConfigurations (boolean) --

      A Boolean indicating whether to use default upload configurations. By default, .ros and .gazebo files are uploaded when the application terminates and all ROS topics will be recorded.

      If you set this value, you must specify an outputLocation .

    • tools (list) --

      Information about tools configured for the robot application.

      • (dict) --

        Information about a tool. Tools are used in a simulation job.

        • streamUI (boolean) --

          Boolean indicating whether a streaming session will be configured for the tool. If True , AWS RoboMaker will configure a connection so you can interact with the tool as it is running in the simulation. It must have a graphical user interface. The default is False .

        • name (string) -- [REQUIRED]

          The name of the tool.

        • command (string) -- [REQUIRED]

          Command-line arguments for the tool. It must include the tool executable name.

        • streamOutputToCloudWatch (boolean) --

          Boolean indicating whether logs will be recorded in CloudWatch for the tool. The default is False .

        • exitBehavior (string) --

          Exit behavior determines what happens when your tool quits running. RESTART will cause your tool to be restarted. FAIL will cause your job to exit. The default is RESTART .

    • useDefaultTools (boolean) --

      A Boolean indicating whether to use default robot application tools. The default tools are rviz, rqt, terminal and rosbag record. The default is False .

type simulationApplications

list

param simulationApplications

The simulation application to use in the simulation job.

  • (dict) --

    Information about a simulation application configuration.

    • application (string) -- [REQUIRED]

      The application information for the simulation application.

    • applicationVersion (string) --

      The version of the simulation application.

    • launchConfig (dict) -- [REQUIRED]

      The launch configuration for the simulation application.

      • packageName (string) --

        The package name.

      • launchFile (string) --

        The launch file name.

      • environmentVariables (dict) --

        The environment variables for the application launch.

        • (string) --

          • (string) --

      • portForwardingConfig (dict) --

        The port forwarding configuration.

        • portMappings (list) --

          The port mappings for the configuration.

          • (dict) --

            An object representing a port mapping.

            • jobPort (integer) -- [REQUIRED]

              The port number on the simulation job instance to use as a remote connection point.

            • applicationPort (integer) -- [REQUIRED]

              The port number on the application.

            • enableOnPublicIp (boolean) --

              A Boolean indicating whether to enable this port mapping on public IP.

      • streamUI (boolean) --

        Boolean indicating whether a streaming session will be configured for the application. If True , AWS RoboMaker will configure a connection so you can interact with your application as it is running in the simulation. You must configure and launch the component. It must have a graphical user interface.

      • command (list) --

        If you've specified General as the value for your RobotSoftwareSuite , you can use this field to specify a list of commands for your container image.

        If you've specified SimulationRuntime as the value for your SimulationSoftwareSuite , you can use this field to specify a list of commands for your container image.

        • (string) --

    • uploadConfigurations (list) --

      Information about upload configurations for the simulation application.

      • (dict) --

        Provides upload configuration information. Files are uploaded from the simulation job to a location you specify.

        • name (string) -- [REQUIRED]

          A prefix that specifies where files will be uploaded in Amazon S3. It is appended to the simulation output location to determine the final path.

          For example, if your simulation output location is s3://my-bucket and your upload configuration name is robot-test , your files will be uploaded to s3://my-bucket/<simid>/<runid>/robot-test .

        • path (string) -- [REQUIRED]

          Specifies the path of the file(s) to upload. Standard Unix glob matching rules are accepted, with the addition of ** as a super asterisk . For example, specifying /var/log/**.log causes all .log files in the /var/log directory tree to be collected. For more examples, see Glob Library .

        • uploadBehavior (string) -- [REQUIRED]

          Specifies when to upload the files:

          UPLOAD_ON_TERMINATE

          Matching files are uploaded once the simulation enters the TERMINATING state. Matching files are not uploaded until all of your code (including tools) have stopped.

          If there is a problem uploading a file, the upload is retried. If problems persist, no further upload attempts will be made.

          UPLOAD_ROLLING_AUTO_REMOVE

          Matching files are uploaded as they are created. They are deleted after they are uploaded. The specified path is checked every 5 seconds. A final check is made when all of your code (including tools) have stopped.

    • worldConfigs (list) --

      A list of world configurations.

      • (dict) --

        Configuration information for a world.

        • world (string) --

          The world generated by Simulation WorldForge.

    • useDefaultUploadConfigurations (boolean) --

      A Boolean indicating whether to use default upload configurations. By default, .ros and .gazebo files are uploaded when the application terminates and all ROS topics will be recorded.

      If you set this value, you must specify an outputLocation .

    • tools (list) --

      Information about tools configured for the simulation application.

      • (dict) --

        Information about a tool. Tools are used in a simulation job.

        • streamUI (boolean) --

          Boolean indicating whether a streaming session will be configured for the tool. If True , AWS RoboMaker will configure a connection so you can interact with the tool as it is running in the simulation. It must have a graphical user interface. The default is False .

        • name (string) -- [REQUIRED]

          The name of the tool.

        • command (string) -- [REQUIRED]

          Command-line arguments for the tool. It must include the tool executable name.

        • streamOutputToCloudWatch (boolean) --

          Boolean indicating whether logs will be recorded in CloudWatch for the tool. The default is False .

        • exitBehavior (string) --

          Exit behavior determines what happens when your tool quits running. RESTART will cause your tool to be restarted. FAIL will cause your job to exit. The default is RESTART .

    • useDefaultTools (boolean) --

      A Boolean indicating whether to use default simulation application tools. The default tools are rviz, rqt, terminal and rosbag record. The default is False .

type dataSources

list

param dataSources

Specify data sources to mount read-only files from S3 into your simulation. These files are available under /opt/robomaker/datasources/data_source_name .

Note

There is a limit of 100 files and a combined size of 25GB for all DataSourceConfig objects.

  • (dict) --

    Information about a data source.

    • name (string) -- [REQUIRED]

      The name of the data source.

    • s3Bucket (string) -- [REQUIRED]

      The S3 bucket where the data files are located.

    • s3Keys (list) -- [REQUIRED]

      The list of S3 keys identifying the data source files.

      • (string) --

    • type (string) --

      The data type for the data source that you're using for your container image or simulation job. You can use this field to specify whether your data source is an Archive, an Amazon S3 prefix, or a file.

      If you don't specify a field, the default value is File .

    • destination (string) --

      The location where your files are mounted in the container image.

      If you've specified the type of the data source as an Archive , you must provide an Amazon S3 object key to your archive. The object key must point to either a .zip or .tar.gz file.

      If you've specified the type of the data source as a Prefix , you provide the Amazon S3 prefix that points to the files that you are using for your data source.

      If you've specified the type of the data source as a File , you provide the Amazon S3 path to the file that you're using as your data source.

type tags

dict

param tags

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

  • (string) --

    • (string) --

type vpcConfig

dict

param vpcConfig

If your simulation job accesses resources in a VPC, you provide this parameter identifying the list of security group IDs and subnet IDs. These must belong to the same VPC. You must provide at least one security group and one subnet ID.

  • subnets (list) -- [REQUIRED]

    A list of one or more subnet IDs in your VPC.

    • (string) --

  • securityGroups (list) --

    A list of one or more security groups IDs in your VPC.

    • (string) --

  • assignPublicIp (boolean) --

    A boolean indicating whether to assign a public IP address.

type compute

dict

param compute

Compute information for the simulation job.

  • simulationUnitLimit (integer) --

    The simulation unit limit. Your simulation is allocated CPU and memory proportional to the supplied simulation unit limit. A simulation unit is 1 vcpu and 2GB of memory. You are only billed for the SU utilization you consume up to the maximum value provided. The default is 15.

  • computeType (string) --

    Compute type information for the simulation job.

  • gpuUnitLimit (integer) --

    Compute GPU unit limit for the simulation job. It is the same as the number of GPUs allocated to the SimulationJob.

rtype

dict

returns

Response Syntax

{
    'arn': 'string',
    'status': 'Pending'|'Preparing'|'Running'|'Restarting'|'Completed'|'Failed'|'RunningFailed'|'Terminating'|'Terminated'|'Canceled',
    'lastStartedAt': datetime(2015, 1, 1),
    'lastUpdatedAt': datetime(2015, 1, 1),
    'failureBehavior': 'Fail'|'Continue',
    'failureCode': 'InternalServiceError'|'RobotApplicationCrash'|'SimulationApplicationCrash'|'RobotApplicationHealthCheckFailure'|'SimulationApplicationHealthCheckFailure'|'BadPermissionsRobotApplication'|'BadPermissionsSimulationApplication'|'BadPermissionsS3Object'|'BadPermissionsS3Output'|'BadPermissionsCloudwatchLogs'|'SubnetIpLimitExceeded'|'ENILimitExceeded'|'BadPermissionsUserCredentials'|'InvalidBundleRobotApplication'|'InvalidBundleSimulationApplication'|'InvalidS3Resource'|'ThrottlingError'|'LimitExceeded'|'MismatchedEtag'|'RobotApplicationVersionMismatchedEtag'|'SimulationApplicationVersionMismatchedEtag'|'ResourceNotFound'|'RequestThrottled'|'BatchTimedOut'|'BatchCanceled'|'InvalidInput'|'WrongRegionS3Bucket'|'WrongRegionS3Output'|'WrongRegionRobotApplication'|'WrongRegionSimulationApplication'|'UploadContentMismatchError',
    'clientRequestToken': 'string',
    'outputLocation': {
        's3Bucket': 'string',
        's3Prefix': 'string'
    },
    'loggingConfig': {
        'recordAllRosTopics': True|False
    },
    'maxJobDurationInSeconds': 123,
    'simulationTimeMillis': 123,
    'iamRole': 'string',
    'robotApplications': [
        {
            'application': 'string',
            'applicationVersion': 'string',
            'launchConfig': {
                'packageName': 'string',
                'launchFile': 'string',
                'environmentVariables': {
                    'string': 'string'
                },
                'portForwardingConfig': {
                    'portMappings': [
                        {
                            'jobPort': 123,
                            'applicationPort': 123,
                            'enableOnPublicIp': True|False
                        },
                    ]
                },
                'streamUI': True|False,
                'command': [
                    'string',
                ]
            },
            'uploadConfigurations': [
                {
                    'name': 'string',
                    'path': 'string',
                    'uploadBehavior': 'UPLOAD_ON_TERMINATE'|'UPLOAD_ROLLING_AUTO_REMOVE'
                },
            ],
            'useDefaultUploadConfigurations': True|False,
            'tools': [
                {
                    'streamUI': True|False,
                    'name': 'string',
                    'command': 'string',
                    'streamOutputToCloudWatch': True|False,
                    'exitBehavior': 'FAIL'|'RESTART'
                },
            ],
            'useDefaultTools': True|False
        },
    ],
    'simulationApplications': [
        {
            'application': 'string',
            'applicationVersion': 'string',
            'launchConfig': {
                'packageName': 'string',
                'launchFile': 'string',
                'environmentVariables': {
                    'string': 'string'
                },
                'portForwardingConfig': {
                    'portMappings': [
                        {
                            'jobPort': 123,
                            'applicationPort': 123,
                            'enableOnPublicIp': True|False
                        },
                    ]
                },
                'streamUI': True|False,
                'command': [
                    'string',
                ]
            },
            'uploadConfigurations': [
                {
                    'name': 'string',
                    'path': 'string',
                    'uploadBehavior': 'UPLOAD_ON_TERMINATE'|'UPLOAD_ROLLING_AUTO_REMOVE'
                },
            ],
            'worldConfigs': [
                {
                    'world': 'string'
                },
            ],
            'useDefaultUploadConfigurations': True|False,
            'tools': [
                {
                    'streamUI': True|False,
                    'name': 'string',
                    'command': 'string',
                    'streamOutputToCloudWatch': True|False,
                    'exitBehavior': 'FAIL'|'RESTART'
                },
            ],
            'useDefaultTools': True|False
        },
    ],
    'dataSources': [
        {
            'name': 'string',
            's3Bucket': 'string',
            's3Keys': [
                {
                    's3Key': 'string',
                    'etag': 'string'
                },
            ],
            'type': 'Prefix'|'Archive'|'File',
            'destination': 'string'
        },
    ],
    'tags': {
        'string': 'string'
    },
    'vpcConfig': {
        'subnets': [
            'string',
        ],
        'securityGroups': [
            'string',
        ],
        'vpcId': 'string',
        'assignPublicIp': True|False
    },
    'compute': {
        'simulationUnitLimit': 123,
        'computeType': 'CPU'|'GPU_AND_CPU',
        'gpuUnitLimit': 123
    }
}

Response Structure

  • (dict) --

    • arn (string) --

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

    • status (string) --

      The status of the simulation job.

    • lastStartedAt (datetime) --

      The time, in milliseconds since the epoch, when the simulation job was last started.

    • lastUpdatedAt (datetime) --

      The time, in milliseconds since the epoch, when the simulation job was last updated.

    • failureBehavior (string) --

      the failure behavior for the simulation job.

    • failureCode (string) --

      The failure code of the simulation job if it failed:

      InternalServiceError

      Internal service error.

      RobotApplicationCrash

      Robot application exited abnormally.

      SimulationApplicationCrash

      Simulation application exited abnormally.

      BadPermissionsRobotApplication

      Robot application bundle could not be downloaded.

      BadPermissionsSimulationApplication

      Simulation application bundle could not be downloaded.

      BadPermissionsS3Output

      Unable to publish outputs to customer-provided S3 bucket.

      BadPermissionsCloudwatchLogs

      Unable to publish logs to customer-provided CloudWatch Logs resource.

      SubnetIpLimitExceeded

      Subnet IP limit exceeded.

      ENILimitExceeded

      ENI limit exceeded.

      BadPermissionsUserCredentials

      Unable to use the Role provided.

      InvalidBundleRobotApplication

      Robot bundle cannot be extracted (invalid format, bundling error, or other issue).

      InvalidBundleSimulationApplication

      Simulation bundle cannot be extracted (invalid format, bundling error, or other issue).

      RobotApplicationVersionMismatchedEtag

      Etag for RobotApplication does not match value during version creation.

      SimulationApplicationVersionMismatchedEtag

      Etag for SimulationApplication does not match value during version creation.

    • clientRequestToken (string) --

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

    • outputLocation (dict) --

      Simulation job output files location.

      • s3Bucket (string) --

        The S3 bucket for output.

      • s3Prefix (string) --

        The S3 folder in the s3Bucket where output files will be placed.

    • loggingConfig (dict) --

      The logging configuration.

      • recordAllRosTopics (boolean) --

        A boolean indicating whether to record all ROS topics.

    • maxJobDurationInSeconds (integer) --

      The maximum simulation job duration in seconds.

    • simulationTimeMillis (integer) --

      The simulation job execution duration in milliseconds.

    • iamRole (string) --

      The IAM role that allows the simulation job to call the AWS APIs that are specified in its associated policies on your behalf.

    • robotApplications (list) --

      The robot application used by the simulation job.

      • (dict) --

        Application configuration information for a robot.

        • application (string) --

          The application information for the robot application.

        • applicationVersion (string) --

          The version of the robot application.

        • launchConfig (dict) --

          The launch configuration for the robot application.

          • packageName (string) --

            The package name.

          • launchFile (string) --

            The launch file name.

          • environmentVariables (dict) --

            The environment variables for the application launch.

            • (string) --

              • (string) --

          • portForwardingConfig (dict) --

            The port forwarding configuration.

            • portMappings (list) --

              The port mappings for the configuration.

              • (dict) --

                An object representing a port mapping.

                • jobPort (integer) --

                  The port number on the simulation job instance to use as a remote connection point.

                • applicationPort (integer) --

                  The port number on the application.

                • enableOnPublicIp (boolean) --

                  A Boolean indicating whether to enable this port mapping on public IP.

          • streamUI (boolean) --

            Boolean indicating whether a streaming session will be configured for the application. If True , AWS RoboMaker will configure a connection so you can interact with your application as it is running in the simulation. You must configure and launch the component. It must have a graphical user interface.

          • command (list) --

            If you've specified General as the value for your RobotSoftwareSuite , you can use this field to specify a list of commands for your container image.

            If you've specified SimulationRuntime as the value for your SimulationSoftwareSuite , you can use this field to specify a list of commands for your container image.

            • (string) --

        • uploadConfigurations (list) --

          The upload configurations for the robot application.

          • (dict) --

            Provides upload configuration information. Files are uploaded from the simulation job to a location you specify.

            • name (string) --

              A prefix that specifies where files will be uploaded in Amazon S3. It is appended to the simulation output location to determine the final path.

              For example, if your simulation output location is s3://my-bucket and your upload configuration name is robot-test , your files will be uploaded to s3://my-bucket/<simid>/<runid>/robot-test .

            • path (string) --

              Specifies the path of the file(s) to upload. Standard Unix glob matching rules are accepted, with the addition of ** as a super asterisk . For example, specifying /var/log/**.log causes all .log files in the /var/log directory tree to be collected. For more examples, see Glob Library .

            • uploadBehavior (string) --

              Specifies when to upload the files:

              UPLOAD_ON_TERMINATE

              Matching files are uploaded once the simulation enters the TERMINATING state. Matching files are not uploaded until all of your code (including tools) have stopped.

              If there is a problem uploading a file, the upload is retried. If problems persist, no further upload attempts will be made.

              UPLOAD_ROLLING_AUTO_REMOVE

              Matching files are uploaded as they are created. They are deleted after they are uploaded. The specified path is checked every 5 seconds. A final check is made when all of your code (including tools) have stopped.

        • useDefaultUploadConfigurations (boolean) --

          A Boolean indicating whether to use default upload configurations. By default, .ros and .gazebo files are uploaded when the application terminates and all ROS topics will be recorded.

          If you set this value, you must specify an outputLocation .

        • tools (list) --

          Information about tools configured for the robot application.

          • (dict) --

            Information about a tool. Tools are used in a simulation job.

            • streamUI (boolean) --

              Boolean indicating whether a streaming session will be configured for the tool. If True , AWS RoboMaker will configure a connection so you can interact with the tool as it is running in the simulation. It must have a graphical user interface. The default is False .

            • name (string) --

              The name of the tool.

            • command (string) --

              Command-line arguments for the tool. It must include the tool executable name.

            • streamOutputToCloudWatch (boolean) --

              Boolean indicating whether logs will be recorded in CloudWatch for the tool. The default is False .

            • exitBehavior (string) --

              Exit behavior determines what happens when your tool quits running. RESTART will cause your tool to be restarted. FAIL will cause your job to exit. The default is RESTART .

        • useDefaultTools (boolean) --

          A Boolean indicating whether to use default robot application tools. The default tools are rviz, rqt, terminal and rosbag record. The default is False .

    • simulationApplications (list) --

      The simulation application used by the simulation job.

      • (dict) --

        Information about a simulation application configuration.

        • application (string) --

          The application information for the simulation application.

        • applicationVersion (string) --

          The version of the simulation application.

        • launchConfig (dict) --

          The launch configuration for the simulation application.

          • packageName (string) --

            The package name.

          • launchFile (string) --

            The launch file name.

          • environmentVariables (dict) --

            The environment variables for the application launch.

            • (string) --

              • (string) --

          • portForwardingConfig (dict) --

            The port forwarding configuration.

            • portMappings (list) --

              The port mappings for the configuration.

              • (dict) --

                An object representing a port mapping.

                • jobPort (integer) --

                  The port number on the simulation job instance to use as a remote connection point.

                • applicationPort (integer) --

                  The port number on the application.

                • enableOnPublicIp (boolean) --

                  A Boolean indicating whether to enable this port mapping on public IP.

          • streamUI (boolean) --

            Boolean indicating whether a streaming session will be configured for the application. If True , AWS RoboMaker will configure a connection so you can interact with your application as it is running in the simulation. You must configure and launch the component. It must have a graphical user interface.

          • command (list) --

            If you've specified General as the value for your RobotSoftwareSuite , you can use this field to specify a list of commands for your container image.

            If you've specified SimulationRuntime as the value for your SimulationSoftwareSuite , you can use this field to specify a list of commands for your container image.

            • (string) --

        • uploadConfigurations (list) --

          Information about upload configurations for the simulation application.

          • (dict) --

            Provides upload configuration information. Files are uploaded from the simulation job to a location you specify.

            • name (string) --

              A prefix that specifies where files will be uploaded in Amazon S3. It is appended to the simulation output location to determine the final path.

              For example, if your simulation output location is s3://my-bucket and your upload configuration name is robot-test , your files will be uploaded to s3://my-bucket/<simid>/<runid>/robot-test .

            • path (string) --

              Specifies the path of the file(s) to upload. Standard Unix glob matching rules are accepted, with the addition of ** as a super asterisk . For example, specifying /var/log/**.log causes all .log files in the /var/log directory tree to be collected. For more examples, see Glob Library .

            • uploadBehavior (string) --

              Specifies when to upload the files:

              UPLOAD_ON_TERMINATE

              Matching files are uploaded once the simulation enters the TERMINATING state. Matching files are not uploaded until all of your code (including tools) have stopped.

              If there is a problem uploading a file, the upload is retried. If problems persist, no further upload attempts will be made.

              UPLOAD_ROLLING_AUTO_REMOVE

              Matching files are uploaded as they are created. They are deleted after they are uploaded. The specified path is checked every 5 seconds. A final check is made when all of your code (including tools) have stopped.

        • worldConfigs (list) --

          A list of world configurations.

          • (dict) --

            Configuration information for a world.

            • world (string) --

              The world generated by Simulation WorldForge.

        • useDefaultUploadConfigurations (boolean) --

          A Boolean indicating whether to use default upload configurations. By default, .ros and .gazebo files are uploaded when the application terminates and all ROS topics will be recorded.

          If you set this value, you must specify an outputLocation .

        • tools (list) --

          Information about tools configured for the simulation application.

          • (dict) --

            Information about a tool. Tools are used in a simulation job.

            • streamUI (boolean) --

              Boolean indicating whether a streaming session will be configured for the tool. If True , AWS RoboMaker will configure a connection so you can interact with the tool as it is running in the simulation. It must have a graphical user interface. The default is False .

            • name (string) --

              The name of the tool.

            • command (string) --

              Command-line arguments for the tool. It must include the tool executable name.

            • streamOutputToCloudWatch (boolean) --

              Boolean indicating whether logs will be recorded in CloudWatch for the tool. The default is False .

            • exitBehavior (string) --

              Exit behavior determines what happens when your tool quits running. RESTART will cause your tool to be restarted. FAIL will cause your job to exit. The default is RESTART .

        • useDefaultTools (boolean) --

          A Boolean indicating whether to use default simulation application tools. The default tools are rviz, rqt, terminal and rosbag record. The default is False .

    • dataSources (list) --

      The data sources for the simulation job.

      • (dict) --

        Information about a data source.

        • name (string) --

          The name of the data source.

        • s3Bucket (string) --

          The S3 bucket where the data files are located.

        • s3Keys (list) --

          The list of S3 keys identifying the data source files.

          • (dict) --

            Information about S3 keys.

            • s3Key (string) --

              The S3 key.

            • etag (string) --

              The etag for the object.

        • type (string) --

          The data type for the data source that you're using for your container image or simulation job. You can use this field to specify whether your data source is an Archive, an Amazon S3 prefix, or a file.

          If you don't specify a field, the default value is File .

        • destination (string) --

          The location where your files are mounted in the container image.

          If you've specified the type of the data source as an Archive , you must provide an Amazon S3 object key to your archive. The object key must point to either a .zip or .tar.gz file.

          If you've specified the type of the data source as a Prefix , you provide the Amazon S3 prefix that points to the files that you are using for your data source.

          If you've specified the type of the data source as a File , you provide the Amazon S3 path to the file that you're using as your data source.

    • tags (dict) --

      The list of all tags added to the simulation job.

      • (string) --

        • (string) --

    • vpcConfig (dict) --

      Information about the vpc configuration.

      • subnets (list) --

        A list of subnet IDs associated with the simulation job.

        • (string) --

      • securityGroups (list) --

        A list of security group IDs associated with the simulation job.

        • (string) --

      • vpcId (string) --

        The VPC ID associated with your simulation job.

      • assignPublicIp (boolean) --

        A boolean indicating if a public IP was assigned.

    • compute (dict) --

      Compute information for the simulation job.

      • simulationUnitLimit (integer) --

        The simulation unit limit. Your simulation is allocated CPU and memory proportional to the supplied simulation unit limit. A simulation unit is 1 vcpu and 2GB of memory. You are only billed for the SU utilization you consume up to the maximum value provided. The default is 15.

      • computeType (string) --

        Compute type response information for the simulation job.

      • gpuUnitLimit (integer) --

        Compute GPU unit limit for the simulation job. It is the same as the number of GPUs allocated to the SimulationJob.

DescribeRobotApplication (updated) Link ¶
Changes (response)
{'robotSoftwareSuite': {'name': {'General'}}}

Describes a robot application.

See also: AWS API Documentation

Request Syntax

client.describe_robot_application(
    application='string',
    applicationVersion='string'
)
type application

string

param application

[REQUIRED]

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

type applicationVersion

string

param applicationVersion

The version of the robot application to describe.

rtype

dict

returns

Response Syntax

{
    'arn': 'string',
    'name': 'string',
    'version': 'string',
    'sources': [
        {
            's3Bucket': 'string',
            's3Key': 'string',
            'etag': 'string',
            'architecture': 'X86_64'|'ARM64'|'ARMHF'
        },
    ],
    'robotSoftwareSuite': {
        'name': 'ROS'|'ROS2'|'General',
        'version': 'Kinetic'|'Melodic'|'Dashing'|'Foxy'
    },
    'revisionId': 'string',
    'lastUpdatedAt': datetime(2015, 1, 1),
    'tags': {
        'string': 'string'
    },
    'environment': {
        'uri': 'string'
    },
    'imageDigest': 'string'
}

Response Structure

  • (dict) --

    • arn (string) --

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

    • name (string) --

      The name of the robot application.

    • version (string) --

      The version of the robot application.

    • sources (list) --

      The sources of the robot application.

      • (dict) --

        Information about a source.

        • s3Bucket (string) --

          The s3 bucket name.

        • s3Key (string) --

          The s3 object key.

        • etag (string) --

          A hash of the object specified by s3Bucket and s3Key .

        • architecture (string) --

          The taget processor architecture for the application.

    • robotSoftwareSuite (dict) --

      The robot software suite (ROS distribution) used by the robot application.

      • name (string) --

        The name of the robot software suite (ROS distribution).

      • version (string) --

        The version of the robot software suite (ROS distribution).

    • revisionId (string) --

      The revision id of the robot application.

    • lastUpdatedAt (datetime) --

      The time, in milliseconds since the epoch, when the robot application was last updated.

    • tags (dict) --

      The list of all tags added to the specified robot application.

      • (string) --

        • (string) --

    • environment (dict) --

      The object that contains the Docker image URI used to create the robot application.

      • uri (string) --

        The Docker image URI for either your robot or simulation applications.

    • imageDigest (string) --

      A SHA256 identifier for the Docker image that you use for your robot application.

DescribeSimulationApplication (updated) Link ¶
Changes (response)
{'robotSoftwareSuite': {'name': {'General'}},
 'simulationSoftwareSuite': {'name': {'SimulationRuntime'}}}

Describes a simulation application.

See also: AWS API Documentation

Request Syntax

client.describe_simulation_application(
    application='string',
    applicationVersion='string'
)
type application

string

param application

[REQUIRED]

The application information for the simulation application.

type applicationVersion

string

param applicationVersion

The version of the simulation application to describe.

rtype

dict

returns

Response Syntax

{
    'arn': 'string',
    'name': 'string',
    'version': 'string',
    'sources': [
        {
            's3Bucket': 'string',
            's3Key': 'string',
            'etag': 'string',
            'architecture': 'X86_64'|'ARM64'|'ARMHF'
        },
    ],
    'simulationSoftwareSuite': {
        'name': 'Gazebo'|'RosbagPlay'|'SimulationRuntime',
        'version': 'string'
    },
    'robotSoftwareSuite': {
        'name': 'ROS'|'ROS2'|'General',
        'version': 'Kinetic'|'Melodic'|'Dashing'|'Foxy'
    },
    'renderingEngine': {
        'name': 'OGRE',
        'version': 'string'
    },
    'revisionId': 'string',
    'lastUpdatedAt': datetime(2015, 1, 1),
    'tags': {
        'string': 'string'
    },
    'environment': {
        'uri': 'string'
    },
    'imageDigest': 'string'
}

Response Structure

  • (dict) --

    • arn (string) --

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

    • name (string) --

      The name of the simulation application.

    • version (string) --

      The version of the simulation application.

    • sources (list) --

      The sources of the simulation application.

      • (dict) --

        Information about a source.

        • s3Bucket (string) --

          The s3 bucket name.

        • s3Key (string) --

          The s3 object key.

        • etag (string) --

          A hash of the object specified by s3Bucket and s3Key .

        • architecture (string) --

          The taget processor architecture for the application.

    • simulationSoftwareSuite (dict) --

      The simulation software suite used by the simulation application.

      • name (string) --

        The name of the simulation software suite.

      • version (string) --

        The version of the simulation software suite.

    • robotSoftwareSuite (dict) --

      Information about the robot software suite (ROS distribution).

      • name (string) --

        The name of the robot software suite (ROS distribution).

      • version (string) --

        The version of the robot software suite (ROS distribution).

    • renderingEngine (dict) --

      The rendering engine for the simulation application.

      • name (string) --

        The name of the rendering engine.

      • version (string) --

        The version of the rendering engine.

    • revisionId (string) --

      The revision id of the simulation application.

    • lastUpdatedAt (datetime) --

      The time, in milliseconds since the epoch, when the simulation application was last updated.

    • tags (dict) --

      The list of all tags added to the specified simulation application.

      • (string) --

        • (string) --

    • environment (dict) --

      The object that contains the Docker image URI used to create the simulation application.

      • uri (string) --

        The Docker image URI for either your robot or simulation applications.

    • imageDigest (string) --

      A SHA256 identifier for the Docker image that you use for your simulation application.

DescribeSimulationJob (updated) Link ¶
Changes (response)
{'compute': {'computeType': 'CPU | GPU_AND_CPU', 'gpuUnitLimit': 'integer'},
 'dataSources': {'destination': 'string', 'type': 'Prefix | Archive | File'},
 'robotApplications': {'launchConfig': {'command': ['string']}},
 'simulationApplications': {'launchConfig': {'command': ['string']}}}

Describes a simulation job.

See also: AWS API Documentation

Request Syntax

client.describe_simulation_job(
    job='string'
)
type job

string

param job

[REQUIRED]

The Amazon Resource Name (ARN) of the simulation job to be described.

rtype

dict

returns

Response Syntax

{
    'arn': 'string',
    'name': 'string',
    'status': 'Pending'|'Preparing'|'Running'|'Restarting'|'Completed'|'Failed'|'RunningFailed'|'Terminating'|'Terminated'|'Canceled',
    'lastStartedAt': datetime(2015, 1, 1),
    'lastUpdatedAt': datetime(2015, 1, 1),
    'failureBehavior': 'Fail'|'Continue',
    'failureCode': 'InternalServiceError'|'RobotApplicationCrash'|'SimulationApplicationCrash'|'RobotApplicationHealthCheckFailure'|'SimulationApplicationHealthCheckFailure'|'BadPermissionsRobotApplication'|'BadPermissionsSimulationApplication'|'BadPermissionsS3Object'|'BadPermissionsS3Output'|'BadPermissionsCloudwatchLogs'|'SubnetIpLimitExceeded'|'ENILimitExceeded'|'BadPermissionsUserCredentials'|'InvalidBundleRobotApplication'|'InvalidBundleSimulationApplication'|'InvalidS3Resource'|'ThrottlingError'|'LimitExceeded'|'MismatchedEtag'|'RobotApplicationVersionMismatchedEtag'|'SimulationApplicationVersionMismatchedEtag'|'ResourceNotFound'|'RequestThrottled'|'BatchTimedOut'|'BatchCanceled'|'InvalidInput'|'WrongRegionS3Bucket'|'WrongRegionS3Output'|'WrongRegionRobotApplication'|'WrongRegionSimulationApplication'|'UploadContentMismatchError',
    'failureReason': 'string',
    'clientRequestToken': 'string',
    'outputLocation': {
        's3Bucket': 'string',
        's3Prefix': 'string'
    },
    'loggingConfig': {
        'recordAllRosTopics': True|False
    },
    'maxJobDurationInSeconds': 123,
    'simulationTimeMillis': 123,
    'iamRole': 'string',
    'robotApplications': [
        {
            'application': 'string',
            'applicationVersion': 'string',
            'launchConfig': {
                'packageName': 'string',
                'launchFile': 'string',
                'environmentVariables': {
                    'string': 'string'
                },
                'portForwardingConfig': {
                    'portMappings': [
                        {
                            'jobPort': 123,
                            'applicationPort': 123,
                            'enableOnPublicIp': True|False
                        },
                    ]
                },
                'streamUI': True|False,
                'command': [
                    'string',
                ]
            },
            'uploadConfigurations': [
                {
                    'name': 'string',
                    'path': 'string',
                    'uploadBehavior': 'UPLOAD_ON_TERMINATE'|'UPLOAD_ROLLING_AUTO_REMOVE'
                },
            ],
            'useDefaultUploadConfigurations': True|False,
            'tools': [
                {
                    'streamUI': True|False,
                    'name': 'string',
                    'command': 'string',
                    'streamOutputToCloudWatch': True|False,
                    'exitBehavior': 'FAIL'|'RESTART'
                },
            ],
            'useDefaultTools': True|False
        },
    ],
    'simulationApplications': [
        {
            'application': 'string',
            'applicationVersion': 'string',
            'launchConfig': {
                'packageName': 'string',
                'launchFile': 'string',
                'environmentVariables': {
                    'string': 'string'
                },
                'portForwardingConfig': {
                    'portMappings': [
                        {
                            'jobPort': 123,
                            'applicationPort': 123,
                            'enableOnPublicIp': True|False
                        },
                    ]
                },
                'streamUI': True|False,
                'command': [
                    'string',
                ]
            },
            'uploadConfigurations': [
                {
                    'name': 'string',
                    'path': 'string',
                    'uploadBehavior': 'UPLOAD_ON_TERMINATE'|'UPLOAD_ROLLING_AUTO_REMOVE'
                },
            ],
            'worldConfigs': [
                {
                    'world': 'string'
                },
            ],
            'useDefaultUploadConfigurations': True|False,
            'tools': [
                {
                    'streamUI': True|False,
                    'name': 'string',
                    'command': 'string',
                    'streamOutputToCloudWatch': True|False,
                    'exitBehavior': 'FAIL'|'RESTART'
                },
            ],
            'useDefaultTools': True|False
        },
    ],
    'dataSources': [
        {
            'name': 'string',
            's3Bucket': 'string',
            's3Keys': [
                {
                    's3Key': 'string',
                    'etag': 'string'
                },
            ],
            'type': 'Prefix'|'Archive'|'File',
            'destination': 'string'
        },
    ],
    'tags': {
        'string': 'string'
    },
    'vpcConfig': {
        'subnets': [
            'string',
        ],
        'securityGroups': [
            'string',
        ],
        'vpcId': 'string',
        'assignPublicIp': True|False
    },
    'networkInterface': {
        'networkInterfaceId': 'string',
        'privateIpAddress': 'string',
        'publicIpAddress': 'string'
    },
    'compute': {
        'simulationUnitLimit': 123,
        'computeType': 'CPU'|'GPU_AND_CPU',
        'gpuUnitLimit': 123
    }
}

Response Structure

  • (dict) --

    • arn (string) --

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

    • name (string) --

      The name of the simulation job.

    • status (string) --

      The status of the simulation job.

    • lastStartedAt (datetime) --

      The time, in milliseconds since the epoch, when the simulation job was last started.

    • lastUpdatedAt (datetime) --

      The time, in milliseconds since the epoch, when the simulation job was last updated.

    • failureBehavior (string) --

      The failure behavior for the simulation job.

    • failureCode (string) --

      The failure code of the simulation job if it failed:

      InternalServiceError

      Internal service error.

      RobotApplicationCrash

      Robot application exited abnormally.

      SimulationApplicationCrash

      Simulation application exited abnormally.

      BadPermissionsRobotApplication

      Robot application bundle could not be downloaded.

      BadPermissionsSimulationApplication

      Simulation application bundle could not be downloaded.

      BadPermissionsS3Output

      Unable to publish outputs to customer-provided S3 bucket.

      BadPermissionsCloudwatchLogs

      Unable to publish logs to customer-provided CloudWatch Logs resource.

      SubnetIpLimitExceeded

      Subnet IP limit exceeded.

      ENILimitExceeded

      ENI limit exceeded.

      BadPermissionsUserCredentials

      Unable to use the Role provided.

      InvalidBundleRobotApplication

      Robot bundle cannot be extracted (invalid format, bundling error, or other issue).

      InvalidBundleSimulationApplication

      Simulation bundle cannot be extracted (invalid format, bundling error, or other issue).

      RobotApplicationVersionMismatchedEtag

      Etag for RobotApplication does not match value during version creation.

      SimulationApplicationVersionMismatchedEtag

      Etag for SimulationApplication does not match value during version creation.

    • failureReason (string) --

      Details about why the simulation job failed. For more information about troubleshooting, see Troubleshooting .

    • clientRequestToken (string) --

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

    • outputLocation (dict) --

      Location for output files generated by the simulation job.

      • s3Bucket (string) --

        The S3 bucket for output.

      • s3Prefix (string) --

        The S3 folder in the s3Bucket where output files will be placed.

    • loggingConfig (dict) --

      The logging configuration.

      • recordAllRosTopics (boolean) --

        A boolean indicating whether to record all ROS topics.

    • maxJobDurationInSeconds (integer) --

      The maximum job duration in seconds. The value must be 8 days (691,200 seconds) or less.

    • simulationTimeMillis (integer) --

      The simulation job execution duration in milliseconds.

    • iamRole (string) --

      The IAM role that allows the simulation instance to call the AWS APIs that are specified in its associated policies on your behalf.

    • robotApplications (list) --

      A list of robot applications.

      • (dict) --

        Application configuration information for a robot.

        • application (string) --

          The application information for the robot application.

        • applicationVersion (string) --

          The version of the robot application.

        • launchConfig (dict) --

          The launch configuration for the robot application.

          • packageName (string) --

            The package name.

          • launchFile (string) --

            The launch file name.

          • environmentVariables (dict) --

            The environment variables for the application launch.

            • (string) --

              • (string) --

          • portForwardingConfig (dict) --

            The port forwarding configuration.

            • portMappings (list) --

              The port mappings for the configuration.

              • (dict) --

                An object representing a port mapping.

                • jobPort (integer) --

                  The port number on the simulation job instance to use as a remote connection point.

                • applicationPort (integer) --

                  The port number on the application.

                • enableOnPublicIp (boolean) --

                  A Boolean indicating whether to enable this port mapping on public IP.

          • streamUI (boolean) --

            Boolean indicating whether a streaming session will be configured for the application. If True , AWS RoboMaker will configure a connection so you can interact with your application as it is running in the simulation. You must configure and launch the component. It must have a graphical user interface.

          • command (list) --

            If you've specified General as the value for your RobotSoftwareSuite , you can use this field to specify a list of commands for your container image.

            If you've specified SimulationRuntime as the value for your SimulationSoftwareSuite , you can use this field to specify a list of commands for your container image.

            • (string) --

        • uploadConfigurations (list) --

          The upload configurations for the robot application.

          • (dict) --

            Provides upload configuration information. Files are uploaded from the simulation job to a location you specify.

            • name (string) --

              A prefix that specifies where files will be uploaded in Amazon S3. It is appended to the simulation output location to determine the final path.

              For example, if your simulation output location is s3://my-bucket and your upload configuration name is robot-test , your files will be uploaded to s3://my-bucket/<simid>/<runid>/robot-test .

            • path (string) --

              Specifies the path of the file(s) to upload. Standard Unix glob matching rules are accepted, with the addition of ** as a super asterisk . For example, specifying /var/log/**.log causes all .log files in the /var/log directory tree to be collected. For more examples, see Glob Library .

            • uploadBehavior (string) --

              Specifies when to upload the files:

              UPLOAD_ON_TERMINATE

              Matching files are uploaded once the simulation enters the TERMINATING state. Matching files are not uploaded until all of your code (including tools) have stopped.

              If there is a problem uploading a file, the upload is retried. If problems persist, no further upload attempts will be made.

              UPLOAD_ROLLING_AUTO_REMOVE

              Matching files are uploaded as they are created. They are deleted after they are uploaded. The specified path is checked every 5 seconds. A final check is made when all of your code (including tools) have stopped.

        • useDefaultUploadConfigurations (boolean) --

          A Boolean indicating whether to use default upload configurations. By default, .ros and .gazebo files are uploaded when the application terminates and all ROS topics will be recorded.

          If you set this value, you must specify an outputLocation .

        • tools (list) --

          Information about tools configured for the robot application.

          • (dict) --

            Information about a tool. Tools are used in a simulation job.

            • streamUI (boolean) --

              Boolean indicating whether a streaming session will be configured for the tool. If True , AWS RoboMaker will configure a connection so you can interact with the tool as it is running in the simulation. It must have a graphical user interface. The default is False .

            • name (string) --

              The name of the tool.

            • command (string) --

              Command-line arguments for the tool. It must include the tool executable name.

            • streamOutputToCloudWatch (boolean) --

              Boolean indicating whether logs will be recorded in CloudWatch for the tool. The default is False .

            • exitBehavior (string) --

              Exit behavior determines what happens when your tool quits running. RESTART will cause your tool to be restarted. FAIL will cause your job to exit. The default is RESTART .

        • useDefaultTools (boolean) --

          A Boolean indicating whether to use default robot application tools. The default tools are rviz, rqt, terminal and rosbag record. The default is False .

    • simulationApplications (list) --

      A list of simulation applications.

      • (dict) --

        Information about a simulation application configuration.

        • application (string) --

          The application information for the simulation application.

        • applicationVersion (string) --

          The version of the simulation application.

        • launchConfig (dict) --

          The launch configuration for the simulation application.

          • packageName (string) --

            The package name.

          • launchFile (string) --

            The launch file name.

          • environmentVariables (dict) --

            The environment variables for the application launch.

            • (string) --

              • (string) --

          • portForwardingConfig (dict) --

            The port forwarding configuration.

            • portMappings (list) --

              The port mappings for the configuration.

              • (dict) --

                An object representing a port mapping.

                • jobPort (integer) --

                  The port number on the simulation job instance to use as a remote connection point.

                • applicationPort (integer) --

                  The port number on the application.

                • enableOnPublicIp (boolean) --

                  A Boolean indicating whether to enable this port mapping on public IP.

          • streamUI (boolean) --

            Boolean indicating whether a streaming session will be configured for the application. If True , AWS RoboMaker will configure a connection so you can interact with your application as it is running in the simulation. You must configure and launch the component. It must have a graphical user interface.

          • command (list) --

            If you've specified General as the value for your RobotSoftwareSuite , you can use this field to specify a list of commands for your container image.

            If you've specified SimulationRuntime as the value for your SimulationSoftwareSuite , you can use this field to specify a list of commands for your container image.

            • (string) --

        • uploadConfigurations (list) --

          Information about upload configurations for the simulation application.

          • (dict) --

            Provides upload configuration information. Files are uploaded from the simulation job to a location you specify.

            • name (string) --

              A prefix that specifies where files will be uploaded in Amazon S3. It is appended to the simulation output location to determine the final path.

              For example, if your simulation output location is s3://my-bucket and your upload configuration name is robot-test , your files will be uploaded to s3://my-bucket/<simid>/<runid>/robot-test .

            • path (string) --

              Specifies the path of the file(s) to upload. Standard Unix glob matching rules are accepted, with the addition of ** as a super asterisk . For example, specifying /var/log/**.log causes all .log files in the /var/log directory tree to be collected. For more examples, see Glob Library .

            • uploadBehavior (string) --

              Specifies when to upload the files:

              UPLOAD_ON_TERMINATE

              Matching files are uploaded once the simulation enters the TERMINATING state. Matching files are not uploaded until all of your code (including tools) have stopped.

              If there is a problem uploading a file, the upload is retried. If problems persist, no further upload attempts will be made.

              UPLOAD_ROLLING_AUTO_REMOVE

              Matching files are uploaded as they are created. They are deleted after they are uploaded. The specified path is checked every 5 seconds. A final check is made when all of your code (including tools) have stopped.

        • worldConfigs (list) --

          A list of world configurations.

          • (dict) --

            Configuration information for a world.

            • world (string) --

              The world generated by Simulation WorldForge.

        • useDefaultUploadConfigurations (boolean) --

          A Boolean indicating whether to use default upload configurations. By default, .ros and .gazebo files are uploaded when the application terminates and all ROS topics will be recorded.

          If you set this value, you must specify an outputLocation .

        • tools (list) --

          Information about tools configured for the simulation application.

          • (dict) --

            Information about a tool. Tools are used in a simulation job.

            • streamUI (boolean) --

              Boolean indicating whether a streaming session will be configured for the tool. If True , AWS RoboMaker will configure a connection so you can interact with the tool as it is running in the simulation. It must have a graphical user interface. The default is False .

            • name (string) --

              The name of the tool.

            • command (string) --

              Command-line arguments for the tool. It must include the tool executable name.

            • streamOutputToCloudWatch (boolean) --

              Boolean indicating whether logs will be recorded in CloudWatch for the tool. The default is False .

            • exitBehavior (string) --

              Exit behavior determines what happens when your tool quits running. RESTART will cause your tool to be restarted. FAIL will cause your job to exit. The default is RESTART .

        • useDefaultTools (boolean) --

          A Boolean indicating whether to use default simulation application tools. The default tools are rviz, rqt, terminal and rosbag record. The default is False .

    • dataSources (list) --

      The data sources for the simulation job.

      • (dict) --

        Information about a data source.

        • name (string) --

          The name of the data source.

        • s3Bucket (string) --

          The S3 bucket where the data files are located.

        • s3Keys (list) --

          The list of S3 keys identifying the data source files.

          • (dict) --

            Information about S3 keys.

            • s3Key (string) --

              The S3 key.

            • etag (string) --

              The etag for the object.

        • type (string) --

          The data type for the data source that you're using for your container image or simulation job. You can use this field to specify whether your data source is an Archive, an Amazon S3 prefix, or a file.

          If you don't specify a field, the default value is File .

        • destination (string) --

          The location where your files are mounted in the container image.

          If you've specified the type of the data source as an Archive , you must provide an Amazon S3 object key to your archive. The object key must point to either a .zip or .tar.gz file.

          If you've specified the type of the data source as a Prefix , you provide the Amazon S3 prefix that points to the files that you are using for your data source.

          If you've specified the type of the data source as a File , you provide the Amazon S3 path to the file that you're using as your data source.

    • tags (dict) --

      The list of all tags added to the specified simulation job.

      • (string) --

        • (string) --

    • vpcConfig (dict) --

      The VPC configuration.

      • subnets (list) --

        A list of subnet IDs associated with the simulation job.

        • (string) --

      • securityGroups (list) --

        A list of security group IDs associated with the simulation job.

        • (string) --

      • vpcId (string) --

        The VPC ID associated with your simulation job.

      • assignPublicIp (boolean) --

        A boolean indicating if a public IP was assigned.

    • networkInterface (dict) --

      The network interface information for the simulation job.

      • networkInterfaceId (string) --

        The ID of the network interface.

      • privateIpAddress (string) --

        The IPv4 address of the network interface within the subnet.

      • publicIpAddress (string) --

        The IPv4 public address of the network interface.

    • compute (dict) --

      Compute information for the simulation job.

      • simulationUnitLimit (integer) --

        The simulation unit limit. Your simulation is allocated CPU and memory proportional to the supplied simulation unit limit. A simulation unit is 1 vcpu and 2GB of memory. You are only billed for the SU utilization you consume up to the maximum value provided. The default is 15.

      • computeType (string) --

        Compute type response information for the simulation job.

      • gpuUnitLimit (integer) --

        Compute GPU unit limit for the simulation job. It is the same as the number of GPUs allocated to the SimulationJob.

DescribeSimulationJobBatch (updated) Link ¶
Changes (response)
{'createdRequests': {'computeType': 'CPU | GPU_AND_CPU'},
 'failedRequests': {'request': {'compute': {'computeType': 'CPU | GPU_AND_CPU',
                                            'gpuUnitLimit': 'integer'},
                                'dataSources': {'destination': 'string',
                                                'type': 'Prefix | Archive | '
                                                        'File'},
                                'robotApplications': {'launchConfig': {'command': ['string']}},
                                'simulationApplications': {'launchConfig': {'command': ['string']}}}},
 'pendingRequests': {'compute': {'computeType': 'CPU | GPU_AND_CPU',
                                 'gpuUnitLimit': 'integer'},
                     'dataSources': {'destination': 'string',
                                     'type': 'Prefix | Archive | File'},
                     'robotApplications': {'launchConfig': {'command': ['string']}},
                     'simulationApplications': {'launchConfig': {'command': ['string']}}}}

Describes a simulation job batch.

See also: AWS API Documentation

Request Syntax

client.describe_simulation_job_batch(
    batch='string'
)
type batch

string

param batch

[REQUIRED]

The id of the batch to describe.

rtype

dict

returns

Response Syntax

{
    'arn': 'string',
    'status': 'Pending'|'InProgress'|'Failed'|'Completed'|'Canceled'|'Canceling'|'Completing'|'TimingOut'|'TimedOut',
    'lastUpdatedAt': datetime(2015, 1, 1),
    'createdAt': datetime(2015, 1, 1),
    'clientRequestToken': 'string',
    'batchPolicy': {
        'timeoutInSeconds': 123,
        'maxConcurrency': 123
    },
    'failureCode': 'InternalServiceError',
    'failureReason': 'string',
    'failedRequests': [
        {
            'request': {
                'outputLocation': {
                    's3Bucket': 'string',
                    's3Prefix': 'string'
                },
                'loggingConfig': {
                    'recordAllRosTopics': True|False
                },
                'maxJobDurationInSeconds': 123,
                'iamRole': 'string',
                'failureBehavior': 'Fail'|'Continue',
                'useDefaultApplications': True|False,
                'robotApplications': [
                    {
                        'application': 'string',
                        'applicationVersion': 'string',
                        'launchConfig': {
                            'packageName': 'string',
                            'launchFile': 'string',
                            'environmentVariables': {
                                'string': 'string'
                            },
                            'portForwardingConfig': {
                                'portMappings': [
                                    {
                                        'jobPort': 123,
                                        'applicationPort': 123,
                                        'enableOnPublicIp': True|False
                                    },
                                ]
                            },
                            'streamUI': True|False,
                            'command': [
                                'string',
                            ]
                        },
                        'uploadConfigurations': [
                            {
                                'name': 'string',
                                'path': 'string',
                                'uploadBehavior': 'UPLOAD_ON_TERMINATE'|'UPLOAD_ROLLING_AUTO_REMOVE'
                            },
                        ],
                        'useDefaultUploadConfigurations': True|False,
                        'tools': [
                            {
                                'streamUI': True|False,
                                'name': 'string',
                                'command': 'string',
                                'streamOutputToCloudWatch': True|False,
                                'exitBehavior': 'FAIL'|'RESTART'
                            },
                        ],
                        'useDefaultTools': True|False
                    },
                ],
                'simulationApplications': [
                    {
                        'application': 'string',
                        'applicationVersion': 'string',
                        'launchConfig': {
                            'packageName': 'string',
                            'launchFile': 'string',
                            'environmentVariables': {
                                'string': 'string'
                            },
                            'portForwardingConfig': {
                                'portMappings': [
                                    {
                                        'jobPort': 123,
                                        'applicationPort': 123,
                                        'enableOnPublicIp': True|False
                                    },
                                ]
                            },
                            'streamUI': True|False,
                            'command': [
                                'string',
                            ]
                        },
                        'uploadConfigurations': [
                            {
                                'name': 'string',
                                'path': 'string',
                                'uploadBehavior': 'UPLOAD_ON_TERMINATE'|'UPLOAD_ROLLING_AUTO_REMOVE'
                            },
                        ],
                        'worldConfigs': [
                            {
                                'world': 'string'
                            },
                        ],
                        'useDefaultUploadConfigurations': True|False,
                        'tools': [
                            {
                                'streamUI': True|False,
                                'name': 'string',
                                'command': 'string',
                                'streamOutputToCloudWatch': True|False,
                                'exitBehavior': 'FAIL'|'RESTART'
                            },
                        ],
                        'useDefaultTools': True|False
                    },
                ],
                'dataSources': [
                    {
                        'name': 'string',
                        's3Bucket': 'string',
                        's3Keys': [
                            'string',
                        ],
                        'type': 'Prefix'|'Archive'|'File',
                        'destination': 'string'
                    },
                ],
                'vpcConfig': {
                    'subnets': [
                        'string',
                    ],
                    'securityGroups': [
                        'string',
                    ],
                    'assignPublicIp': True|False
                },
                'compute': {
                    'simulationUnitLimit': 123,
                    'computeType': 'CPU'|'GPU_AND_CPU',
                    'gpuUnitLimit': 123
                },
                'tags': {
                    'string': 'string'
                }
            },
            'failureReason': 'string',
            'failureCode': 'InternalServiceError'|'RobotApplicationCrash'|'SimulationApplicationCrash'|'RobotApplicationHealthCheckFailure'|'SimulationApplicationHealthCheckFailure'|'BadPermissionsRobotApplication'|'BadPermissionsSimulationApplication'|'BadPermissionsS3Object'|'BadPermissionsS3Output'|'BadPermissionsCloudwatchLogs'|'SubnetIpLimitExceeded'|'ENILimitExceeded'|'BadPermissionsUserCredentials'|'InvalidBundleRobotApplication'|'InvalidBundleSimulationApplication'|'InvalidS3Resource'|'ThrottlingError'|'LimitExceeded'|'MismatchedEtag'|'RobotApplicationVersionMismatchedEtag'|'SimulationApplicationVersionMismatchedEtag'|'ResourceNotFound'|'RequestThrottled'|'BatchTimedOut'|'BatchCanceled'|'InvalidInput'|'WrongRegionS3Bucket'|'WrongRegionS3Output'|'WrongRegionRobotApplication'|'WrongRegionSimulationApplication'|'UploadContentMismatchError',
            'failedAt': datetime(2015, 1, 1)
        },
    ],
    'pendingRequests': [
        {
            'outputLocation': {
                's3Bucket': 'string',
                's3Prefix': 'string'
            },
            'loggingConfig': {
                'recordAllRosTopics': True|False
            },
            'maxJobDurationInSeconds': 123,
            'iamRole': 'string',
            'failureBehavior': 'Fail'|'Continue',
            'useDefaultApplications': True|False,
            'robotApplications': [
                {
                    'application': 'string',
                    'applicationVersion': 'string',
                    'launchConfig': {
                        'packageName': 'string',
                        'launchFile': 'string',
                        'environmentVariables': {
                            'string': 'string'
                        },
                        'portForwardingConfig': {
                            'portMappings': [
                                {
                                    'jobPort': 123,
                                    'applicationPort': 123,
                                    'enableOnPublicIp': True|False
                                },
                            ]
                        },
                        'streamUI': True|False,
                        'command': [
                            'string',
                        ]
                    },
                    'uploadConfigurations': [
                        {
                            'name': 'string',
                            'path': 'string',
                            'uploadBehavior': 'UPLOAD_ON_TERMINATE'|'UPLOAD_ROLLING_AUTO_REMOVE'
                        },
                    ],
                    'useDefaultUploadConfigurations': True|False,
                    'tools': [
                        {
                            'streamUI': True|False,
                            'name': 'string',
                            'command': 'string',
                            'streamOutputToCloudWatch': True|False,
                            'exitBehavior': 'FAIL'|'RESTART'
                        },
                    ],
                    'useDefaultTools': True|False
                },
            ],
            'simulationApplications': [
                {
                    'application': 'string',
                    'applicationVersion': 'string',
                    'launchConfig': {
                        'packageName': 'string',
                        'launchFile': 'string',
                        'environmentVariables': {
                            'string': 'string'
                        },
                        'portForwardingConfig': {
                            'portMappings': [
                                {
                                    'jobPort': 123,
                                    'applicationPort': 123,
                                    'enableOnPublicIp': True|False
                                },
                            ]
                        },
                        'streamUI': True|False,
                        'command': [
                            'string',
                        ]
                    },
                    'uploadConfigurations': [
                        {
                            'name': 'string',
                            'path': 'string',
                            'uploadBehavior': 'UPLOAD_ON_TERMINATE'|'UPLOAD_ROLLING_AUTO_REMOVE'
                        },
                    ],
                    'worldConfigs': [
                        {
                            'world': 'string'
                        },
                    ],
                    'useDefaultUploadConfigurations': True|False,
                    'tools': [
                        {
                            'streamUI': True|False,
                            'name': 'string',
                            'command': 'string',
                            'streamOutputToCloudWatch': True|False,
                            'exitBehavior': 'FAIL'|'RESTART'
                        },
                    ],
                    'useDefaultTools': True|False
                },
            ],
            'dataSources': [
                {
                    'name': 'string',
                    's3Bucket': 'string',
                    's3Keys': [
                        'string',
                    ],
                    'type': 'Prefix'|'Archive'|'File',
                    'destination': 'string'
                },
            ],
            'vpcConfig': {
                'subnets': [
                    'string',
                ],
                'securityGroups': [
                    'string',
                ],
                'assignPublicIp': True|False
            },
            'compute': {
                'simulationUnitLimit': 123,
                'computeType': 'CPU'|'GPU_AND_CPU',
                'gpuUnitLimit': 123
            },
            'tags': {
                'string': 'string'
            }
        },
    ],
    'createdRequests': [
        {
            'arn': 'string',
            'lastUpdatedAt': datetime(2015, 1, 1),
            'name': 'string',
            'status': 'Pending'|'Preparing'|'Running'|'Restarting'|'Completed'|'Failed'|'RunningFailed'|'Terminating'|'Terminated'|'Canceled',
            'simulationApplicationNames': [
                'string',
            ],
            'robotApplicationNames': [
                'string',
            ],
            'dataSourceNames': [
                'string',
            ],
            'computeType': 'CPU'|'GPU_AND_CPU'
        },
    ],
    'tags': {
        'string': 'string'
    }
}

Response Structure

  • (dict) --

    • arn (string) --

      The Amazon Resource Name (ARN) of the batch.

    • status (string) --

      The status of the batch.

      Pending

      The simulation job batch request is pending.

      InProgress

      The simulation job batch is in progress.

      Failed

      The simulation job batch failed. One or more simulation job requests could not be completed due to an internal failure (like InternalServiceError ). See failureCode and failureReason for more information.

      Completed

      The simulation batch job completed. A batch is complete when (1) there are no pending simulation job requests in the batch and none of the failed simulation job requests are due to InternalServiceError and (2) when all created simulation jobs have reached a terminal state (for example, Completed or Failed ).

      Canceled

      The simulation batch job was cancelled.

      Canceling

      The simulation batch job is being cancelled.

      Completing

      The simulation batch job is completing.

      TimingOut

      The simulation job batch is timing out.

      If a batch timing out, and there are pending requests that were failing due to an internal failure (like InternalServiceError ), the batch status will be Failed . If there are no such failing request, the batch status will be TimedOut .

      TimedOut

      The simulation batch job timed out.

    • lastUpdatedAt (datetime) --

      The time, in milliseconds since the epoch, when the simulation job batch was last updated.

    • createdAt (datetime) --

      The time, in milliseconds since the epoch, when the simulation job batch was created.

    • clientRequestToken (string) --

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

    • batchPolicy (dict) --

      The batch policy.

      • timeoutInSeconds (integer) --

        The amount of time, in seconds, to wait for the batch to complete.

        If a batch times out, and there are pending requests that were failing due to an internal failure (like InternalServiceError ), they will be moved to the failed list and the batch status will be Failed . If the pending requests were failing for any other reason, the failed pending requests will be moved to the failed list and the batch status will be TimedOut .

      • maxConcurrency (integer) --

        The number of active simulation jobs create as part of the batch that can be in an active state at the same time.

        Active states include: Pending ,``Preparing`` , Running , Restarting , RunningFailed and Terminating . All other states are terminal states.

    • failureCode (string) --

      The failure code of the simulation job batch.

    • failureReason (string) --

      The reason the simulation job batch failed.

    • failedRequests (list) --

      A list of failed create simulation job requests. The request failed to be created into a simulation job. Failed requests do not have a simulation job ID.

      • (dict) --

        Information about a failed create simulation job request.

        • request (dict) --

          The simulation job request.

          • outputLocation (dict) --

            The output location.

            • s3Bucket (string) --

              The S3 bucket for output.

            • s3Prefix (string) --

              The S3 folder in the s3Bucket where output files will be placed.

          • loggingConfig (dict) --

            The logging configuration.

            • recordAllRosTopics (boolean) --

              A boolean indicating whether to record all ROS topics.

          • maxJobDurationInSeconds (integer) --

            The maximum simulation job duration in seconds. The value must be 8 days (691,200 seconds) or less.

          • iamRole (string) --

            The IAM role name that allows the simulation instance to call the AWS APIs that are specified in its associated policies on your behalf. This is how credentials are passed in to your simulation job.

          • failureBehavior (string) --

            The failure behavior the simulation job.

            Continue

            Leaves the host running for its maximum timeout duration after a 4XX error code.

            Fail

            Stop the simulation job and terminate the instance.

          • useDefaultApplications (boolean) --

            A Boolean indicating whether to use default applications in the simulation job. Default applications include Gazebo, rqt, rviz and terminal access.

          • robotApplications (list) --

            The robot applications to use in the simulation job.

            • (dict) --

              Application configuration information for a robot.

              • application (string) --

                The application information for the robot application.

              • applicationVersion (string) --

                The version of the robot application.

              • launchConfig (dict) --

                The launch configuration for the robot application.

                • packageName (string) --

                  The package name.

                • launchFile (string) --

                  The launch file name.

                • environmentVariables (dict) --

                  The environment variables for the application launch.

                  • (string) --

                    • (string) --

                • portForwardingConfig (dict) --

                  The port forwarding configuration.

                  • portMappings (list) --

                    The port mappings for the configuration.

                    • (dict) --

                      An object representing a port mapping.

                      • jobPort (integer) --

                        The port number on the simulation job instance to use as a remote connection point.

                      • applicationPort (integer) --

                        The port number on the application.

                      • enableOnPublicIp (boolean) --

                        A Boolean indicating whether to enable this port mapping on public IP.

                • streamUI (boolean) --

                  Boolean indicating whether a streaming session will be configured for the application. If True , AWS RoboMaker will configure a connection so you can interact with your application as it is running in the simulation. You must configure and launch the component. It must have a graphical user interface.

                • command (list) --

                  If you've specified General as the value for your RobotSoftwareSuite , you can use this field to specify a list of commands for your container image.

                  If you've specified SimulationRuntime as the value for your SimulationSoftwareSuite , you can use this field to specify a list of commands for your container image.

                  • (string) --

              • uploadConfigurations (list) --

                The upload configurations for the robot application.

                • (dict) --

                  Provides upload configuration information. Files are uploaded from the simulation job to a location you specify.

                  • name (string) --

                    A prefix that specifies where files will be uploaded in Amazon S3. It is appended to the simulation output location to determine the final path.

                    For example, if your simulation output location is s3://my-bucket and your upload configuration name is robot-test , your files will be uploaded to s3://my-bucket/<simid>/<runid>/robot-test .

                  • path (string) --

                    Specifies the path of the file(s) to upload. Standard Unix glob matching rules are accepted, with the addition of ** as a super asterisk . For example, specifying /var/log/**.log causes all .log files in the /var/log directory tree to be collected. For more examples, see Glob Library .

                  • uploadBehavior (string) --

                    Specifies when to upload the files:

                    UPLOAD_ON_TERMINATE

                    Matching files are uploaded once the simulation enters the TERMINATING state. Matching files are not uploaded until all of your code (including tools) have stopped.

                    If there is a problem uploading a file, the upload is retried. If problems persist, no further upload attempts will be made.

                    UPLOAD_ROLLING_AUTO_REMOVE

                    Matching files are uploaded as they are created. They are deleted after they are uploaded. The specified path is checked every 5 seconds. A final check is made when all of your code (including tools) have stopped.

              • useDefaultUploadConfigurations (boolean) --

                A Boolean indicating whether to use default upload configurations. By default, .ros and .gazebo files are uploaded when the application terminates and all ROS topics will be recorded.

                If you set this value, you must specify an outputLocation .

              • tools (list) --

                Information about tools configured for the robot application.

                • (dict) --

                  Information about a tool. Tools are used in a simulation job.

                  • streamUI (boolean) --

                    Boolean indicating whether a streaming session will be configured for the tool. If True , AWS RoboMaker will configure a connection so you can interact with the tool as it is running in the simulation. It must have a graphical user interface. The default is False .

                  • name (string) --

                    The name of the tool.

                  • command (string) --

                    Command-line arguments for the tool. It must include the tool executable name.

                  • streamOutputToCloudWatch (boolean) --

                    Boolean indicating whether logs will be recorded in CloudWatch for the tool. The default is False .

                  • exitBehavior (string) --

                    Exit behavior determines what happens when your tool quits running. RESTART will cause your tool to be restarted. FAIL will cause your job to exit. The default is RESTART .

              • useDefaultTools (boolean) --

                A Boolean indicating whether to use default robot application tools. The default tools are rviz, rqt, terminal and rosbag record. The default is False .

          • simulationApplications (list) --

            The simulation applications to use in the simulation job.

            • (dict) --

              Information about a simulation application configuration.

              • application (string) --

                The application information for the simulation application.

              • applicationVersion (string) --

                The version of the simulation application.

              • launchConfig (dict) --

                The launch configuration for the simulation application.

                • packageName (string) --

                  The package name.

                • launchFile (string) --

                  The launch file name.

                • environmentVariables (dict) --

                  The environment variables for the application launch.

                  • (string) --

                    • (string) --

                • portForwardingConfig (dict) --

                  The port forwarding configuration.

                  • portMappings (list) --

                    The port mappings for the configuration.

                    • (dict) --

                      An object representing a port mapping.

                      • jobPort (integer) --

                        The port number on the simulation job instance to use as a remote connection point.

                      • applicationPort (integer) --

                        The port number on the application.

                      • enableOnPublicIp (boolean) --

                        A Boolean indicating whether to enable this port mapping on public IP.

                • streamUI (boolean) --

                  Boolean indicating whether a streaming session will be configured for the application. If True , AWS RoboMaker will configure a connection so you can interact with your application as it is running in the simulation. You must configure and launch the component. It must have a graphical user interface.

                • command (list) --

                  If you've specified General as the value for your RobotSoftwareSuite , you can use this field to specify a list of commands for your container image.

                  If you've specified SimulationRuntime as the value for your SimulationSoftwareSuite , you can use this field to specify a list of commands for your container image.

                  • (string) --

              • uploadConfigurations (list) --

                Information about upload configurations for the simulation application.

                • (dict) --

                  Provides upload configuration information. Files are uploaded from the simulation job to a location you specify.

                  • name (string) --

                    A prefix that specifies where files will be uploaded in Amazon S3. It is appended to the simulation output location to determine the final path.

                    For example, if your simulation output location is s3://my-bucket and your upload configuration name is robot-test , your files will be uploaded to s3://my-bucket/<simid>/<runid>/robot-test .

                  • path (string) --

                    Specifies the path of the file(s) to upload. Standard Unix glob matching rules are accepted, with the addition of ** as a super asterisk . For example, specifying /var/log/**.log causes all .log files in the /var/log directory tree to be collected. For more examples, see Glob Library .

                  • uploadBehavior (string) --

                    Specifies when to upload the files:

                    UPLOAD_ON_TERMINATE

                    Matching files are uploaded once the simulation enters the TERMINATING state. Matching files are not uploaded until all of your code (including tools) have stopped.

                    If there is a problem uploading a file, the upload is retried. If problems persist, no further upload attempts will be made.

                    UPLOAD_ROLLING_AUTO_REMOVE

                    Matching files are uploaded as they are created. They are deleted after they are uploaded. The specified path is checked every 5 seconds. A final check is made when all of your code (including tools) have stopped.

              • worldConfigs (list) --

                A list of world configurations.

                • (dict) --

                  Configuration information for a world.

                  • world (string) --

                    The world generated by Simulation WorldForge.

              • useDefaultUploadConfigurations (boolean) --

                A Boolean indicating whether to use default upload configurations. By default, .ros and .gazebo files are uploaded when the application terminates and all ROS topics will be recorded.

                If you set this value, you must specify an outputLocation .

              • tools (list) --

                Information about tools configured for the simulation application.

                • (dict) --

                  Information about a tool. Tools are used in a simulation job.

                  • streamUI (boolean) --

                    Boolean indicating whether a streaming session will be configured for the tool. If True , AWS RoboMaker will configure a connection so you can interact with the tool as it is running in the simulation. It must have a graphical user interface. The default is False .

                  • name (string) --

                    The name of the tool.

                  • command (string) --

                    Command-line arguments for the tool. It must include the tool executable name.

                  • streamOutputToCloudWatch (boolean) --

                    Boolean indicating whether logs will be recorded in CloudWatch for the tool. The default is False .

                  • exitBehavior (string) --

                    Exit behavior determines what happens when your tool quits running. RESTART will cause your tool to be restarted. FAIL will cause your job to exit. The default is RESTART .

              • useDefaultTools (boolean) --

                A Boolean indicating whether to use default simulation application tools. The default tools are rviz, rqt, terminal and rosbag record. The default is False .

          • dataSources (list) --

            Specify data sources to mount read-only files from S3 into your simulation. These files are available under /opt/robomaker/datasources/data_source_name .

            Note

            There is a limit of 100 files and a combined size of 25GB for all DataSourceConfig objects.

            • (dict) --

              Information about a data source.

              • name (string) --

                The name of the data source.

              • s3Bucket (string) --

                The S3 bucket where the data files are located.

              • s3Keys (list) --

                The list of S3 keys identifying the data source files.

                • (string) --

              • type (string) --

                The data type for the data source that you're using for your container image or simulation job. You can use this field to specify whether your data source is an Archive, an Amazon S3 prefix, or a file.

                If you don't specify a field, the default value is File .

              • destination (string) --

                The location where your files are mounted in the container image.

                If you've specified the type of the data source as an Archive , you must provide an Amazon S3 object key to your archive. The object key must point to either a .zip or .tar.gz file.

                If you've specified the type of the data source as a Prefix , you provide the Amazon S3 prefix that points to the files that you are using for your data source.

                If you've specified the type of the data source as a File , you provide the Amazon S3 path to the file that you're using as your data source.

          • vpcConfig (dict) --

            If your simulation job accesses resources in a VPC, you provide this parameter identifying the list of security group IDs and subnet IDs. These must belong to the same VPC. You must provide at least one security group and two subnet IDs.

            • subnets (list) --

              A list of one or more subnet IDs in your VPC.

              • (string) --

            • securityGroups (list) --

              A list of one or more security groups IDs in your VPC.

              • (string) --

            • assignPublicIp (boolean) --

              A boolean indicating whether to assign a public IP address.

          • compute (dict) --

            Compute information for the simulation job

            • simulationUnitLimit (integer) --

              The simulation unit limit. Your simulation is allocated CPU and memory proportional to the supplied simulation unit limit. A simulation unit is 1 vcpu and 2GB of memory. You are only billed for the SU utilization you consume up to the maximum value provided. The default is 15.

            • computeType (string) --

              Compute type information for the simulation job.

            • gpuUnitLimit (integer) --

              Compute GPU unit limit for the simulation job. It is the same as the number of GPUs allocated to the SimulationJob.

          • tags (dict) --

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

            • (string) --

              • (string) --

        • failureReason (string) --

          The failure reason of the simulation job request.

        • failureCode (string) --

          The failure code.

        • failedAt (datetime) --

          The time, in milliseconds since the epoch, when the simulation job batch failed.

    • pendingRequests (list) --

      A list of pending simulation job requests. These requests have not yet been created into simulation jobs.

      • (dict) --

        Information about a simulation job request.

        • outputLocation (dict) --

          The output location.

          • s3Bucket (string) --

            The S3 bucket for output.

          • s3Prefix (string) --

            The S3 folder in the s3Bucket where output files will be placed.

        • loggingConfig (dict) --

          The logging configuration.

          • recordAllRosTopics (boolean) --

            A boolean indicating whether to record all ROS topics.

        • maxJobDurationInSeconds (integer) --

          The maximum simulation job duration in seconds. The value must be 8 days (691,200 seconds) or less.

        • iamRole (string) --

          The IAM role name that allows the simulation instance to call the AWS APIs that are specified in its associated policies on your behalf. This is how credentials are passed in to your simulation job.

        • failureBehavior (string) --

          The failure behavior the simulation job.

          Continue

          Leaves the host running for its maximum timeout duration after a 4XX error code.

          Fail

          Stop the simulation job and terminate the instance.

        • useDefaultApplications (boolean) --

          A Boolean indicating whether to use default applications in the simulation job. Default applications include Gazebo, rqt, rviz and terminal access.

        • robotApplications (list) --

          The robot applications to use in the simulation job.

          • (dict) --

            Application configuration information for a robot.

            • application (string) --

              The application information for the robot application.

            • applicationVersion (string) --

              The version of the robot application.

            • launchConfig (dict) --

              The launch configuration for the robot application.

              • packageName (string) --

                The package name.

              • launchFile (string) --

                The launch file name.

              • environmentVariables (dict) --

                The environment variables for the application launch.

                • (string) --

                  • (string) --

              • portForwardingConfig (dict) --

                The port forwarding configuration.

                • portMappings (list) --

                  The port mappings for the configuration.

                  • (dict) --

                    An object representing a port mapping.

                    • jobPort (integer) --

                      The port number on the simulation job instance to use as a remote connection point.

                    • applicationPort (integer) --

                      The port number on the application.

                    • enableOnPublicIp (boolean) --

                      A Boolean indicating whether to enable this port mapping on public IP.

              • streamUI (boolean) --

                Boolean indicating whether a streaming session will be configured for the application. If True , AWS RoboMaker will configure a connection so you can interact with your application as it is running in the simulation. You must configure and launch the component. It must have a graphical user interface.

              • command (list) --

                If you've specified General as the value for your RobotSoftwareSuite , you can use this field to specify a list of commands for your container image.

                If you've specified SimulationRuntime as the value for your SimulationSoftwareSuite , you can use this field to specify a list of commands for your container image.

                • (string) --

            • uploadConfigurations (list) --

              The upload configurations for the robot application.

              • (dict) --

                Provides upload configuration information. Files are uploaded from the simulation job to a location you specify.

                • name (string) --

                  A prefix that specifies where files will be uploaded in Amazon S3. It is appended to the simulation output location to determine the final path.

                  For example, if your simulation output location is s3://my-bucket and your upload configuration name is robot-test , your files will be uploaded to s3://my-bucket/<simid>/<runid>/robot-test .

                • path (string) --

                  Specifies the path of the file(s) to upload. Standard Unix glob matching rules are accepted, with the addition of ** as a super asterisk . For example, specifying /var/log/**.log causes all .log files in the /var/log directory tree to be collected. For more examples, see Glob Library .

                • uploadBehavior (string) --

                  Specifies when to upload the files:

                  UPLOAD_ON_TERMINATE

                  Matching files are uploaded once the simulation enters the TERMINATING state. Matching files are not uploaded until all of your code (including tools) have stopped.

                  If there is a problem uploading a file, the upload is retried. If problems persist, no further upload attempts will be made.

                  UPLOAD_ROLLING_AUTO_REMOVE

                  Matching files are uploaded as they are created. They are deleted after they are uploaded. The specified path is checked every 5 seconds. A final check is made when all of your code (including tools) have stopped.

            • useDefaultUploadConfigurations (boolean) --

              A Boolean indicating whether to use default upload configurations. By default, .ros and .gazebo files are uploaded when the application terminates and all ROS topics will be recorded.

              If you set this value, you must specify an outputLocation .

            • tools (list) --

              Information about tools configured for the robot application.

              • (dict) --

                Information about a tool. Tools are used in a simulation job.

                • streamUI (boolean) --

                  Boolean indicating whether a streaming session will be configured for the tool. If True , AWS RoboMaker will configure a connection so you can interact with the tool as it is running in the simulation. It must have a graphical user interface. The default is False .

                • name (string) --

                  The name of the tool.

                • command (string) --

                  Command-line arguments for the tool. It must include the tool executable name.

                • streamOutputToCloudWatch (boolean) --

                  Boolean indicating whether logs will be recorded in CloudWatch for the tool. The default is False .

                • exitBehavior (string) --

                  Exit behavior determines what happens when your tool quits running. RESTART will cause your tool to be restarted. FAIL will cause your job to exit. The default is RESTART .

            • useDefaultTools (boolean) --

              A Boolean indicating whether to use default robot application tools. The default tools are rviz, rqt, terminal and rosbag record. The default is False .

        • simulationApplications (list) --

          The simulation applications to use in the simulation job.

          • (dict) --

            Information about a simulation application configuration.

            • application (string) --

              The application information for the simulation application.

            • applicationVersion (string) --

              The version of the simulation application.

            • launchConfig (dict) --

              The launch configuration for the simulation application.

              • packageName (string) --

                The package name.

              • launchFile (string) --

                The launch file name.

              • environmentVariables (dict) --

                The environment variables for the application launch.

                • (string) --

                  • (string) --

              • portForwardingConfig (dict) --

                The port forwarding configuration.

                • portMappings (list) --

                  The port mappings for the configuration.

                  • (dict) --

                    An object representing a port mapping.

                    • jobPort (integer) --

                      The port number on the simulation job instance to use as a remote connection point.

                    • applicationPort (integer) --

                      The port number on the application.

                    • enableOnPublicIp (boolean) --

                      A Boolean indicating whether to enable this port mapping on public IP.

              • streamUI (boolean) --

                Boolean indicating whether a streaming session will be configured for the application. If True , AWS RoboMaker will configure a connection so you can interact with your application as it is running in the simulation. You must configure and launch the component. It must have a graphical user interface.

              • command (list) --

                If you've specified General as the value for your RobotSoftwareSuite , you can use this field to specify a list of commands for your container image.

                If you've specified SimulationRuntime as the value for your SimulationSoftwareSuite , you can use this field to specify a list of commands for your container image.

                • (string) --

            • uploadConfigurations (list) --

              Information about upload configurations for the simulation application.

              • (dict) --

                Provides upload configuration information. Files are uploaded from the simulation job to a location you specify.

                • name (string) --

                  A prefix that specifies where files will be uploaded in Amazon S3. It is appended to the simulation output location to determine the final path.

                  For example, if your simulation output location is s3://my-bucket and your upload configuration name is robot-test , your files will be uploaded to s3://my-bucket/<simid>/<runid>/robot-test .

                • path (string) --

                  Specifies the path of the file(s) to upload. Standard Unix glob matching rules are accepted, with the addition of ** as a super asterisk . For example, specifying /var/log/**.log causes all .log files in the /var/log directory tree to be collected. For more examples, see Glob Library .

                • uploadBehavior (string) --

                  Specifies when to upload the files:

                  UPLOAD_ON_TERMINATE

                  Matching files are uploaded once the simulation enters the TERMINATING state. Matching files are not uploaded until all of your code (including tools) have stopped.

                  If there is a problem uploading a file, the upload is retried. If problems persist, no further upload attempts will be made.

                  UPLOAD_ROLLING_AUTO_REMOVE

                  Matching files are uploaded as they are created. They are deleted after they are uploaded. The specified path is checked every 5 seconds. A final check is made when all of your code (including tools) have stopped.

            • worldConfigs (list) --

              A list of world configurations.

              • (dict) --

                Configuration information for a world.

                • world (string) --

                  The world generated by Simulation WorldForge.

            • useDefaultUploadConfigurations (boolean) --

              A Boolean indicating whether to use default upload configurations. By default, .ros and .gazebo files are uploaded when the application terminates and all ROS topics will be recorded.

              If you set this value, you must specify an outputLocation .

            • tools (list) --

              Information about tools configured for the simulation application.

              • (dict) --

                Information about a tool. Tools are used in a simulation job.

                • streamUI (boolean) --

                  Boolean indicating whether a streaming session will be configured for the tool. If True , AWS RoboMaker will configure a connection so you can interact with the tool as it is running in the simulation. It must have a graphical user interface. The default is False .

                • name (string) --

                  The name of the tool.

                • command (string) --

                  Command-line arguments for the tool. It must include the tool executable name.

                • streamOutputToCloudWatch (boolean) --

                  Boolean indicating whether logs will be recorded in CloudWatch for the tool. The default is False .

                • exitBehavior (string) --

                  Exit behavior determines what happens when your tool quits running. RESTART will cause your tool to be restarted. FAIL will cause your job to exit. The default is RESTART .

            • useDefaultTools (boolean) --

              A Boolean indicating whether to use default simulation application tools. The default tools are rviz, rqt, terminal and rosbag record. The default is False .

        • dataSources (list) --

          Specify data sources to mount read-only files from S3 into your simulation. These files are available under /opt/robomaker/datasources/data_source_name .

          Note

          There is a limit of 100 files and a combined size of 25GB for all DataSourceConfig objects.

          • (dict) --

            Information about a data source.

            • name (string) --

              The name of the data source.

            • s3Bucket (string) --

              The S3 bucket where the data files are located.

            • s3Keys (list) --

              The list of S3 keys identifying the data source files.

              • (string) --

            • type (string) --

              The data type for the data source that you're using for your container image or simulation job. You can use this field to specify whether your data source is an Archive, an Amazon S3 prefix, or a file.

              If you don't specify a field, the default value is File .

            • destination (string) --

              The location where your files are mounted in the container image.

              If you've specified the type of the data source as an Archive , you must provide an Amazon S3 object key to your archive. The object key must point to either a .zip or .tar.gz file.

              If you've specified the type of the data source as a Prefix , you provide the Amazon S3 prefix that points to the files that you are using for your data source.

              If you've specified the type of the data source as a File , you provide the Amazon S3 path to the file that you're using as your data source.

        • vpcConfig (dict) --

          If your simulation job accesses resources in a VPC, you provide this parameter identifying the list of security group IDs and subnet IDs. These must belong to the same VPC. You must provide at least one security group and two subnet IDs.

          • subnets (list) --

            A list of one or more subnet IDs in your VPC.

            • (string) --

          • securityGroups (list) --

            A list of one or more security groups IDs in your VPC.

            • (string) --

          • assignPublicIp (boolean) --

            A boolean indicating whether to assign a public IP address.

        • compute (dict) --

          Compute information for the simulation job

          • simulationUnitLimit (integer) --

            The simulation unit limit. Your simulation is allocated CPU and memory proportional to the supplied simulation unit limit. A simulation unit is 1 vcpu and 2GB of memory. You are only billed for the SU utilization you consume up to the maximum value provided. The default is 15.

          • computeType (string) --

            Compute type information for the simulation job.

          • gpuUnitLimit (integer) --

            Compute GPU unit limit for the simulation job. It is the same as the number of GPUs allocated to the SimulationJob.

        • tags (dict) --

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

          • (string) --

            • (string) --

    • createdRequests (list) --

      A list of created simulation job summaries.

      • (dict) --

        Summary information for a simulation job.

        • arn (string) --

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

        • lastUpdatedAt (datetime) --

          The time, in milliseconds since the epoch, when the simulation job was last updated.

        • name (string) --

          The name of the simulation job.

        • status (string) --

          The status of the simulation job.

        • simulationApplicationNames (list) --

          A list of simulation job simulation application names.

          • (string) --

        • robotApplicationNames (list) --

          A list of simulation job robot application names.

          • (string) --

        • dataSourceNames (list) --

          The names of the data sources.

          • (string) --

        • computeType (string) --

          The compute type for the simulation job summary.

    • tags (dict) --

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

      • (string) --

        • (string) --

ListRobotApplications (updated) Link ¶
Changes (response)
{'robotApplicationSummaries': {'robotSoftwareSuite': {'name': {'General'}}}}

Returns a list of robot application. You can optionally provide filters to retrieve specific robot applications.

See also: AWS API Documentation

Request Syntax

client.list_robot_applications(
    versionQualifier='string',
    nextToken='string',
    maxResults=123,
    filters=[
        {
            'name': 'string',
            'values': [
                'string',
            ]
        },
    ]
)
type versionQualifier

string

param versionQualifier

The version qualifier of the robot application.

type nextToken

string

param nextToken

If the previous paginated request did not return all of the remaining results, the response object's nextToken parameter value is set to a token. To retrieve the next set of results, call ListRobotApplications again and assign that token to the request object's nextToken parameter. If there are no remaining results, the previous response object's NextToken parameter is set to null.

type maxResults

integer

param maxResults

When this parameter is used, ListRobotApplications only returns maxResults results in a single page along with a nextToken response element. The remaining results of the initial request can be seen by sending another ListRobotApplications request with the returned nextToken value. This value can be between 1 and 100. If this parameter is not used, then ListRobotApplications returns up to 100 results and a nextToken value if applicable.

type filters

list

param filters

Optional filters to limit results.

The filter name name is supported. When filtering, you must use the complete value of the filtered item. You can use up to three filters.

  • (dict) --

    Information about a filter.

    • name (string) --

      The name of the filter.

    • values (list) --

      A list of values.

      • (string) --

rtype

dict

returns

Response Syntax

{
    'robotApplicationSummaries': [
        {
            'name': 'string',
            'arn': 'string',
            'version': 'string',
            'lastUpdatedAt': datetime(2015, 1, 1),
            'robotSoftwareSuite': {
                'name': 'ROS'|'ROS2'|'General',
                'version': 'Kinetic'|'Melodic'|'Dashing'|'Foxy'
            }
        },
    ],
    'nextToken': 'string'
}

Response Structure

  • (dict) --

    • robotApplicationSummaries (list) --

      A list of robot application summaries that meet the criteria of the request.

      • (dict) --

        Summary information for a robot application.

        • name (string) --

          The name of the robot application.

        • arn (string) --

          The Amazon Resource Name (ARN) of the robot.

        • version (string) --

          The version of the robot application.

        • lastUpdatedAt (datetime) --

          The time, in milliseconds since the epoch, when the robot application was last updated.

        • robotSoftwareSuite (dict) --

          Information about a robot software suite (ROS distribution).

          • name (string) --

            The name of the robot software suite (ROS distribution).

          • version (string) --

            The version of the robot software suite (ROS distribution).

    • nextToken (string) --

      If the previous paginated request did not return all of the remaining results, the response object's nextToken parameter value is set to a token. To retrieve the next set of results, call ListRobotApplications again and assign that token to the request object's nextToken parameter. If there are no remaining results, the previous response object's NextToken parameter is set to null.

ListSimulationApplications (updated) Link ¶
Changes (response)
{'simulationApplicationSummaries': {'robotSoftwareSuite': {'name': {'General'}},
                                    'simulationSoftwareSuite': {'name': {'SimulationRuntime'}}}}

Returns a list of simulation applications. You can optionally provide filters to retrieve specific simulation applications.

See also: AWS API Documentation

Request Syntax

client.list_simulation_applications(
    versionQualifier='string',
    nextToken='string',
    maxResults=123,
    filters=[
        {
            'name': 'string',
            'values': [
                'string',
            ]
        },
    ]
)
type versionQualifier

string

param versionQualifier

The version qualifier of the simulation application.

type nextToken

string

param nextToken

If the previous paginated request did not return all of the remaining results, the response object's nextToken parameter value is set to a token. To retrieve the next set of results, call ListSimulationApplications again and assign that token to the request object's nextToken parameter. If there are no remaining results, the previous response object's NextToken parameter is set to null.

type maxResults

integer

param maxResults

When this parameter is used, ListSimulationApplications only returns maxResults results in a single page along with a nextToken response element. The remaining results of the initial request can be seen by sending another ListSimulationApplications request with the returned nextToken value. This value can be between 1 and 100. If this parameter is not used, then ListSimulationApplications returns up to 100 results and a nextToken value if applicable.

type filters

list

param filters

Optional list of filters to limit results.

The filter name name is supported. When filtering, you must use the complete value of the filtered item. You can use up to three filters.

  • (dict) --

    Information about a filter.

    • name (string) --

      The name of the filter.

    • values (list) --

      A list of values.

      • (string) --

rtype

dict

returns

Response Syntax

{
    'simulationApplicationSummaries': [
        {
            'name': 'string',
            'arn': 'string',
            'version': 'string',
            'lastUpdatedAt': datetime(2015, 1, 1),
            'robotSoftwareSuite': {
                'name': 'ROS'|'ROS2'|'General',
                'version': 'Kinetic'|'Melodic'|'Dashing'|'Foxy'
            },
            'simulationSoftwareSuite': {
                'name': 'Gazebo'|'RosbagPlay'|'SimulationRuntime',
                'version': 'string'
            }
        },
    ],
    'nextToken': 'string'
}

Response Structure

  • (dict) --

    • simulationApplicationSummaries (list) --

      A list of simulation application summaries that meet the criteria of the request.

      • (dict) --

        Summary information for a simulation application.

        • name (string) --

          The name of the simulation application.

        • arn (string) --

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

        • version (string) --

          The version of the simulation application.

        • lastUpdatedAt (datetime) --

          The time, in milliseconds since the epoch, when the simulation application was last updated.

        • robotSoftwareSuite (dict) --

          Information about a robot software suite (ROS distribution).

          • name (string) --

            The name of the robot software suite (ROS distribution).

          • version (string) --

            The version of the robot software suite (ROS distribution).

        • simulationSoftwareSuite (dict) --

          Information about a simulation software suite.

          • name (string) --

            The name of the simulation software suite.

          • version (string) --

            The version of the simulation software suite.

    • nextToken (string) --

      If the previous paginated request did not return all of the remaining results, the response object's nextToken parameter value is set to a token. To retrieve the next set of results, call ListSimulationApplications again and assign that token to the request object's nextToken parameter. If there are no remaining results, the previous response object's NextToken parameter is set to null.

ListSimulationJobs (updated) Link ¶
Changes (response)
{'simulationJobSummaries': {'computeType': 'CPU | GPU_AND_CPU'}}

Returns a list of simulation jobs. You can optionally provide filters to retrieve specific simulation jobs.

See also: AWS API Documentation

Request Syntax

client.list_simulation_jobs(
    nextToken='string',
    maxResults=123,
    filters=[
        {
            'name': 'string',
            'values': [
                'string',
            ]
        },
    ]
)
type nextToken

string

param nextToken

If the previous paginated request did not return all of the remaining results, the response object's nextToken parameter value is set to a token. To retrieve the next set of results, call ListSimulationJobs again and assign that token to the request object's nextToken parameter. If there are no remaining results, the previous response object's NextToken parameter is set to null.

type maxResults

integer

param maxResults

When this parameter is used, ListSimulationJobs only returns maxResults results in a single page along with a nextToken response element. The remaining results of the initial request can be seen by sending another ListSimulationJobs request with the returned nextToken value. This value can be between 1 and 1000. If this parameter is not used, then ListSimulationJobs returns up to 1000 results and a nextToken value if applicable.

type filters

list

param filters

Optional filters to limit results.

The filter names status and simulationApplicationName and robotApplicationName are supported. When filtering, you must use the complete value of the filtered item. You can use up to three filters, but they must be for the same named item. For example, if you are looking for items with the status Preparing or the status Running .

  • (dict) --

    Information about a filter.

    • name (string) --

      The name of the filter.

    • values (list) --

      A list of values.

      • (string) --

rtype

dict

returns

Response Syntax

{
    'simulationJobSummaries': [
        {
            'arn': 'string',
            'lastUpdatedAt': datetime(2015, 1, 1),
            'name': 'string',
            'status': 'Pending'|'Preparing'|'Running'|'Restarting'|'Completed'|'Failed'|'RunningFailed'|'Terminating'|'Terminated'|'Canceled',
            'simulationApplicationNames': [
                'string',
            ],
            'robotApplicationNames': [
                'string',
            ],
            'dataSourceNames': [
                'string',
            ],
            'computeType': 'CPU'|'GPU_AND_CPU'
        },
    ],
    'nextToken': 'string'
}

Response Structure

  • (dict) --

    • simulationJobSummaries (list) --

      A list of simulation job summaries that meet the criteria of the request.

      • (dict) --

        Summary information for a simulation job.

        • arn (string) --

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

        • lastUpdatedAt (datetime) --

          The time, in milliseconds since the epoch, when the simulation job was last updated.

        • name (string) --

          The name of the simulation job.

        • status (string) --

          The status of the simulation job.

        • simulationApplicationNames (list) --

          A list of simulation job simulation application names.

          • (string) --

        • robotApplicationNames (list) --

          A list of simulation job robot application names.

          • (string) --

        • dataSourceNames (list) --

          The names of the data sources.

          • (string) --

        • computeType (string) --

          The compute type for the simulation job summary.

    • nextToken (string) --

      If the previous paginated request did not return all of the remaining results, the response object's nextToken parameter value is set to a token. To retrieve the next set of results, call ListSimulationJobs again and assign that token to the request object's nextToken parameter. If there are no remaining results, the previous response object's NextToken parameter is set to null.

StartSimulationJobBatch (updated) Link ¶
Changes (request, response)
Request
{'createSimulationJobRequests': {'compute': {'computeType': 'CPU | GPU_AND_CPU',
                                             'gpuUnitLimit': 'integer'},
                                 'dataSources': {'destination': 'string',
                                                 'type': 'Prefix | Archive | '
                                                         'File'},
                                 'robotApplications': {'launchConfig': {'command': ['string']}},
                                 'simulationApplications': {'launchConfig': {'command': ['string']}}}}
Response
{'createdRequests': {'computeType': 'CPU | GPU_AND_CPU'},
 'failedRequests': {'request': {'compute': {'computeType': 'CPU | GPU_AND_CPU',
                                            'gpuUnitLimit': 'integer'},
                                'dataSources': {'destination': 'string',
                                                'type': 'Prefix | Archive | '
                                                        'File'},
                                'robotApplications': {'launchConfig': {'command': ['string']}},
                                'simulationApplications': {'launchConfig': {'command': ['string']}}}},
 'pendingRequests': {'compute': {'computeType': 'CPU | GPU_AND_CPU',
                                 'gpuUnitLimit': 'integer'},
                     'dataSources': {'destination': 'string',
                                     'type': 'Prefix | Archive | File'},
                     'robotApplications': {'launchConfig': {'command': ['string']}},
                     'simulationApplications': {'launchConfig': {'command': ['string']}}}}

Starts a new simulation job batch. The batch is defined using one or more SimulationJobRequest objects.

See also: AWS API Documentation

Request Syntax

client.start_simulation_job_batch(
    clientRequestToken='string',
    batchPolicy={
        'timeoutInSeconds': 123,
        'maxConcurrency': 123
    },
    createSimulationJobRequests=[
        {
            'outputLocation': {
                's3Bucket': 'string',
                's3Prefix': 'string'
            },
            'loggingConfig': {
                'recordAllRosTopics': True|False
            },
            'maxJobDurationInSeconds': 123,
            'iamRole': 'string',
            'failureBehavior': 'Fail'|'Continue',
            'useDefaultApplications': True|False,
            'robotApplications': [
                {
                    'application': 'string',
                    'applicationVersion': 'string',
                    'launchConfig': {
                        'packageName': 'string',
                        'launchFile': 'string',
                        'environmentVariables': {
                            'string': 'string'
                        },
                        'portForwardingConfig': {
                            'portMappings': [
                                {
                                    'jobPort': 123,
                                    'applicationPort': 123,
                                    'enableOnPublicIp': True|False
                                },
                            ]
                        },
                        'streamUI': True|False,
                        'command': [
                            'string',
                        ]
                    },
                    'uploadConfigurations': [
                        {
                            'name': 'string',
                            'path': 'string',
                            'uploadBehavior': 'UPLOAD_ON_TERMINATE'|'UPLOAD_ROLLING_AUTO_REMOVE'
                        },
                    ],
                    'useDefaultUploadConfigurations': True|False,
                    'tools': [
                        {
                            'streamUI': True|False,
                            'name': 'string',
                            'command': 'string',
                            'streamOutputToCloudWatch': True|False,
                            'exitBehavior': 'FAIL'|'RESTART'
                        },
                    ],
                    'useDefaultTools': True|False
                },
            ],
            'simulationApplications': [
                {
                    'application': 'string',
                    'applicationVersion': 'string',
                    'launchConfig': {
                        'packageName': 'string',
                        'launchFile': 'string',
                        'environmentVariables': {
                            'string': 'string'
                        },
                        'portForwardingConfig': {
                            'portMappings': [
                                {
                                    'jobPort': 123,
                                    'applicationPort': 123,
                                    'enableOnPublicIp': True|False
                                },
                            ]
                        },
                        'streamUI': True|False,
                        'command': [
                            'string',
                        ]
                    },
                    'uploadConfigurations': [
                        {
                            'name': 'string',
                            'path': 'string',
                            'uploadBehavior': 'UPLOAD_ON_TERMINATE'|'UPLOAD_ROLLING_AUTO_REMOVE'
                        },
                    ],
                    'worldConfigs': [
                        {
                            'world': 'string'
                        },
                    ],
                    'useDefaultUploadConfigurations': True|False,
                    'tools': [
                        {
                            'streamUI': True|False,
                            'name': 'string',
                            'command': 'string',
                            'streamOutputToCloudWatch': True|False,
                            'exitBehavior': 'FAIL'|'RESTART'
                        },
                    ],
                    'useDefaultTools': True|False
                },
            ],
            'dataSources': [
                {
                    'name': 'string',
                    's3Bucket': 'string',
                    's3Keys': [
                        'string',
                    ],
                    'type': 'Prefix'|'Archive'|'File',
                    'destination': 'string'
                },
            ],
            'vpcConfig': {
                'subnets': [
                    'string',
                ],
                'securityGroups': [
                    'string',
                ],
                'assignPublicIp': True|False
            },
            'compute': {
                'simulationUnitLimit': 123,
                'computeType': 'CPU'|'GPU_AND_CPU',
                'gpuUnitLimit': 123
            },
            'tags': {
                'string': 'string'
            }
        },
    ],
    tags={
        'string': 'string'
    }
)
type clientRequestToken

string

param clientRequestToken

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

This field is autopopulated if not provided.

type batchPolicy

dict

param batchPolicy

The batch policy.

  • timeoutInSeconds (integer) --

    The amount of time, in seconds, to wait for the batch to complete.

    If a batch times out, and there are pending requests that were failing due to an internal failure (like InternalServiceError ), they will be moved to the failed list and the batch status will be Failed . If the pending requests were failing for any other reason, the failed pending requests will be moved to the failed list and the batch status will be TimedOut .

  • maxConcurrency (integer) --

    The number of active simulation jobs create as part of the batch that can be in an active state at the same time.

    Active states include: Pending ,``Preparing`` , Running , Restarting , RunningFailed and Terminating . All other states are terminal states.

type createSimulationJobRequests

list

param createSimulationJobRequests

[REQUIRED]

A list of simulation job requests to create in the batch.

  • (dict) --

    Information about a simulation job request.

    • outputLocation (dict) --

      The output location.

      • s3Bucket (string) --

        The S3 bucket for output.

      • s3Prefix (string) --

        The S3 folder in the s3Bucket where output files will be placed.

    • loggingConfig (dict) --

      The logging configuration.

      • recordAllRosTopics (boolean) -- [REQUIRED]

        A boolean indicating whether to record all ROS topics.

    • maxJobDurationInSeconds (integer) -- [REQUIRED]

      The maximum simulation job duration in seconds. The value must be 8 days (691,200 seconds) or less.

    • iamRole (string) --

      The IAM role name that allows the simulation instance to call the AWS APIs that are specified in its associated policies on your behalf. This is how credentials are passed in to your simulation job.

    • failureBehavior (string) --

      The failure behavior the simulation job.

      Continue

      Leaves the host running for its maximum timeout duration after a 4XX error code.

      Fail

      Stop the simulation job and terminate the instance.

    • useDefaultApplications (boolean) --

      A Boolean indicating whether to use default applications in the simulation job. Default applications include Gazebo, rqt, rviz and terminal access.

    • robotApplications (list) --

      The robot applications to use in the simulation job.

      • (dict) --

        Application configuration information for a robot.

        • application (string) -- [REQUIRED]

          The application information for the robot application.

        • applicationVersion (string) --

          The version of the robot application.

        • launchConfig (dict) -- [REQUIRED]

          The launch configuration for the robot application.

          • packageName (string) --

            The package name.

          • launchFile (string) --

            The launch file name.

          • environmentVariables (dict) --

            The environment variables for the application launch.

            • (string) --

              • (string) --

          • portForwardingConfig (dict) --

            The port forwarding configuration.

            • portMappings (list) --

              The port mappings for the configuration.

              • (dict) --

                An object representing a port mapping.

                • jobPort (integer) -- [REQUIRED]

                  The port number on the simulation job instance to use as a remote connection point.

                • applicationPort (integer) -- [REQUIRED]

                  The port number on the application.

                • enableOnPublicIp (boolean) --

                  A Boolean indicating whether to enable this port mapping on public IP.

          • streamUI (boolean) --

            Boolean indicating whether a streaming session will be configured for the application. If True , AWS RoboMaker will configure a connection so you can interact with your application as it is running in the simulation. You must configure and launch the component. It must have a graphical user interface.

          • command (list) --

            If you've specified General as the value for your RobotSoftwareSuite , you can use this field to specify a list of commands for your container image.

            If you've specified SimulationRuntime as the value for your SimulationSoftwareSuite , you can use this field to specify a list of commands for your container image.

            • (string) --

        • uploadConfigurations (list) --

          The upload configurations for the robot application.

          • (dict) --

            Provides upload configuration information. Files are uploaded from the simulation job to a location you specify.

            • name (string) -- [REQUIRED]

              A prefix that specifies where files will be uploaded in Amazon S3. It is appended to the simulation output location to determine the final path.

              For example, if your simulation output location is s3://my-bucket and your upload configuration name is robot-test , your files will be uploaded to s3://my-bucket/<simid>/<runid>/robot-test .

            • path (string) -- [REQUIRED]

              Specifies the path of the file(s) to upload. Standard Unix glob matching rules are accepted, with the addition of ** as a super asterisk . For example, specifying /var/log/**.log causes all .log files in the /var/log directory tree to be collected. For more examples, see Glob Library .

            • uploadBehavior (string) -- [REQUIRED]

              Specifies when to upload the files:

              UPLOAD_ON_TERMINATE

              Matching files are uploaded once the simulation enters the TERMINATING state. Matching files are not uploaded until all of your code (including tools) have stopped.

              If there is a problem uploading a file, the upload is retried. If problems persist, no further upload attempts will be made.

              UPLOAD_ROLLING_AUTO_REMOVE

              Matching files are uploaded as they are created. They are deleted after they are uploaded. The specified path is checked every 5 seconds. A final check is made when all of your code (including tools) have stopped.

        • useDefaultUploadConfigurations (boolean) --

          A Boolean indicating whether to use default upload configurations. By default, .ros and .gazebo files are uploaded when the application terminates and all ROS topics will be recorded.

          If you set this value, you must specify an outputLocation .

        • tools (list) --

          Information about tools configured for the robot application.

          • (dict) --

            Information about a tool. Tools are used in a simulation job.

            • streamUI (boolean) --

              Boolean indicating whether a streaming session will be configured for the tool. If True , AWS RoboMaker will configure a connection so you can interact with the tool as it is running in the simulation. It must have a graphical user interface. The default is False .

            • name (string) -- [REQUIRED]

              The name of the tool.

            • command (string) -- [REQUIRED]

              Command-line arguments for the tool. It must include the tool executable name.

            • streamOutputToCloudWatch (boolean) --

              Boolean indicating whether logs will be recorded in CloudWatch for the tool. The default is False .

            • exitBehavior (string) --

              Exit behavior determines what happens when your tool quits running. RESTART will cause your tool to be restarted. FAIL will cause your job to exit. The default is RESTART .

        • useDefaultTools (boolean) --

          A Boolean indicating whether to use default robot application tools. The default tools are rviz, rqt, terminal and rosbag record. The default is False .

    • simulationApplications (list) --

      The simulation applications to use in the simulation job.

      • (dict) --

        Information about a simulation application configuration.

        • application (string) -- [REQUIRED]

          The application information for the simulation application.

        • applicationVersion (string) --

          The version of the simulation application.

        • launchConfig (dict) -- [REQUIRED]

          The launch configuration for the simulation application.

          • packageName (string) --

            The package name.

          • launchFile (string) --

            The launch file name.

          • environmentVariables (dict) --

            The environment variables for the application launch.

            • (string) --

              • (string) --

          • portForwardingConfig (dict) --

            The port forwarding configuration.

            • portMappings (list) --

              The port mappings for the configuration.

              • (dict) --

                An object representing a port mapping.

                • jobPort (integer) -- [REQUIRED]

                  The port number on the simulation job instance to use as a remote connection point.

                • applicationPort (integer) -- [REQUIRED]

                  The port number on the application.

                • enableOnPublicIp (boolean) --

                  A Boolean indicating whether to enable this port mapping on public IP.

          • streamUI (boolean) --

            Boolean indicating whether a streaming session will be configured for the application. If True , AWS RoboMaker will configure a connection so you can interact with your application as it is running in the simulation. You must configure and launch the component. It must have a graphical user interface.

          • command (list) --

            If you've specified General as the value for your RobotSoftwareSuite , you can use this field to specify a list of commands for your container image.

            If you've specified SimulationRuntime as the value for your SimulationSoftwareSuite , you can use this field to specify a list of commands for your container image.

            • (string) --

        • uploadConfigurations (list) --

          Information about upload configurations for the simulation application.

          • (dict) --

            Provides upload configuration information. Files are uploaded from the simulation job to a location you specify.

            • name (string) -- [REQUIRED]

              A prefix that specifies where files will be uploaded in Amazon S3. It is appended to the simulation output location to determine the final path.

              For example, if your simulation output location is s3://my-bucket and your upload configuration name is robot-test , your files will be uploaded to s3://my-bucket/<simid>/<runid>/robot-test .

            • path (string) -- [REQUIRED]

              Specifies the path of the file(s) to upload. Standard Unix glob matching rules are accepted, with the addition of ** as a super asterisk . For example, specifying /var/log/**.log causes all .log files in the /var/log directory tree to be collected. For more examples, see Glob Library .

            • uploadBehavior (string) -- [REQUIRED]

              Specifies when to upload the files:

              UPLOAD_ON_TERMINATE

              Matching files are uploaded once the simulation enters the TERMINATING state. Matching files are not uploaded until all of your code (including tools) have stopped.

              If there is a problem uploading a file, the upload is retried. If problems persist, no further upload attempts will be made.

              UPLOAD_ROLLING_AUTO_REMOVE

              Matching files are uploaded as they are created. They are deleted after they are uploaded. The specified path is checked every 5 seconds. A final check is made when all of your code (including tools) have stopped.

        • worldConfigs (list) --

          A list of world configurations.

          • (dict) --

            Configuration information for a world.

            • world (string) --

              The world generated by Simulation WorldForge.

        • useDefaultUploadConfigurations (boolean) --

          A Boolean indicating whether to use default upload configurations. By default, .ros and .gazebo files are uploaded when the application terminates and all ROS topics will be recorded.

          If you set this value, you must specify an outputLocation .

        • tools (list) --

          Information about tools configured for the simulation application.

          • (dict) --

            Information about a tool. Tools are used in a simulation job.

            • streamUI (boolean) --

              Boolean indicating whether a streaming session will be configured for the tool. If True , AWS RoboMaker will configure a connection so you can interact with the tool as it is running in the simulation. It must have a graphical user interface. The default is False .

            • name (string) -- [REQUIRED]

              The name of the tool.

            • command (string) -- [REQUIRED]

              Command-line arguments for the tool. It must include the tool executable name.

            • streamOutputToCloudWatch (boolean) --

              Boolean indicating whether logs will be recorded in CloudWatch for the tool. The default is False .

            • exitBehavior (string) --

              Exit behavior determines what happens when your tool quits running. RESTART will cause your tool to be restarted. FAIL will cause your job to exit. The default is RESTART .

        • useDefaultTools (boolean) --

          A Boolean indicating whether to use default simulation application tools. The default tools are rviz, rqt, terminal and rosbag record. The default is False .

    • dataSources (list) --

      Specify data sources to mount read-only files from S3 into your simulation. These files are available under /opt/robomaker/datasources/data_source_name .

      Note

      There is a limit of 100 files and a combined size of 25GB for all DataSourceConfig objects.

      • (dict) --

        Information about a data source.

        • name (string) -- [REQUIRED]

          The name of the data source.

        • s3Bucket (string) -- [REQUIRED]

          The S3 bucket where the data files are located.

        • s3Keys (list) -- [REQUIRED]

          The list of S3 keys identifying the data source files.

          • (string) --

        • type (string) --

          The data type for the data source that you're using for your container image or simulation job. You can use this field to specify whether your data source is an Archive, an Amazon S3 prefix, or a file.

          If you don't specify a field, the default value is File .

        • destination (string) --

          The location where your files are mounted in the container image.

          If you've specified the type of the data source as an Archive , you must provide an Amazon S3 object key to your archive. The object key must point to either a .zip or .tar.gz file.

          If you've specified the type of the data source as a Prefix , you provide the Amazon S3 prefix that points to the files that you are using for your data source.

          If you've specified the type of the data source as a File , you provide the Amazon S3 path to the file that you're using as your data source.

    • vpcConfig (dict) --

      If your simulation job accesses resources in a VPC, you provide this parameter identifying the list of security group IDs and subnet IDs. These must belong to the same VPC. You must provide at least one security group and two subnet IDs.

      • subnets (list) -- [REQUIRED]

        A list of one or more subnet IDs in your VPC.

        • (string) --

      • securityGroups (list) --

        A list of one or more security groups IDs in your VPC.

        • (string) --

      • assignPublicIp (boolean) --

        A boolean indicating whether to assign a public IP address.

    • compute (dict) --

      Compute information for the simulation job

      • simulationUnitLimit (integer) --

        The simulation unit limit. Your simulation is allocated CPU and memory proportional to the supplied simulation unit limit. A simulation unit is 1 vcpu and 2GB of memory. You are only billed for the SU utilization you consume up to the maximum value provided. The default is 15.

      • computeType (string) --

        Compute type information for the simulation job.

      • gpuUnitLimit (integer) --

        Compute GPU unit limit for the simulation job. It is the same as the number of GPUs allocated to the SimulationJob.

    • tags (dict) --

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

      • (string) --

        • (string) --

type tags

dict

param tags

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

  • (string) --

    • (string) --

rtype

dict

returns

Response Syntax

{
    'arn': 'string',
    'status': 'Pending'|'InProgress'|'Failed'|'Completed'|'Canceled'|'Canceling'|'Completing'|'TimingOut'|'TimedOut',
    'createdAt': datetime(2015, 1, 1),
    'clientRequestToken': 'string',
    'batchPolicy': {
        'timeoutInSeconds': 123,
        'maxConcurrency': 123
    },
    'failureCode': 'InternalServiceError',
    'failureReason': 'string',
    'failedRequests': [
        {
            'request': {
                'outputLocation': {
                    's3Bucket': 'string',
                    's3Prefix': 'string'
                },
                'loggingConfig': {
                    'recordAllRosTopics': True|False
                },
                'maxJobDurationInSeconds': 123,
                'iamRole': 'string',
                'failureBehavior': 'Fail'|'Continue',
                'useDefaultApplications': True|False,
                'robotApplications': [
                    {
                        'application': 'string',
                        'applicationVersion': 'string',
                        'launchConfig': {
                            'packageName': 'string',
                            'launchFile': 'string',
                            'environmentVariables': {
                                'string': 'string'
                            },
                            'portForwardingConfig': {
                                'portMappings': [
                                    {
                                        'jobPort': 123,
                                        'applicationPort': 123,
                                        'enableOnPublicIp': True|False
                                    },
                                ]
                            },
                            'streamUI': True|False,
                            'command': [
                                'string',
                            ]
                        },
                        'uploadConfigurations': [
                            {
                                'name': 'string',
                                'path': 'string',
                                'uploadBehavior': 'UPLOAD_ON_TERMINATE'|'UPLOAD_ROLLING_AUTO_REMOVE'
                            },
                        ],
                        'useDefaultUploadConfigurations': True|False,
                        'tools': [
                            {
                                'streamUI': True|False,
                                'name': 'string',
                                'command': 'string',
                                'streamOutputToCloudWatch': True|False,
                                'exitBehavior': 'FAIL'|'RESTART'
                            },
                        ],
                        'useDefaultTools': True|False
                    },
                ],
                'simulationApplications': [
                    {
                        'application': 'string',
                        'applicationVersion': 'string',
                        'launchConfig': {
                            'packageName': 'string',
                            'launchFile': 'string',
                            'environmentVariables': {
                                'string': 'string'
                            },
                            'portForwardingConfig': {
                                'portMappings': [
                                    {
                                        'jobPort': 123,
                                        'applicationPort': 123,
                                        'enableOnPublicIp': True|False
                                    },
                                ]
                            },
                            'streamUI': True|False,
                            'command': [
                                'string',
                            ]
                        },
                        'uploadConfigurations': [
                            {
                                'name': 'string',
                                'path': 'string',
                                'uploadBehavior': 'UPLOAD_ON_TERMINATE'|'UPLOAD_ROLLING_AUTO_REMOVE'
                            },
                        ],
                        'worldConfigs': [
                            {
                                'world': 'string'
                            },
                        ],
                        'useDefaultUploadConfigurations': True|False,
                        'tools': [
                            {
                                'streamUI': True|False,
                                'name': 'string',
                                'command': 'string',
                                'streamOutputToCloudWatch': True|False,
                                'exitBehavior': 'FAIL'|'RESTART'
                            },
                        ],
                        'useDefaultTools': True|False
                    },
                ],
                'dataSources': [
                    {
                        'name': 'string',
                        's3Bucket': 'string',
                        's3Keys': [
                            'string',
                        ],
                        'type': 'Prefix'|'Archive'|'File',
                        'destination': 'string'
                    },
                ],
                'vpcConfig': {
                    'subnets': [
                        'string',
                    ],
                    'securityGroups': [
                        'string',
                    ],
                    'assignPublicIp': True|False
                },
                'compute': {
                    'simulationUnitLimit': 123,
                    'computeType': 'CPU'|'GPU_AND_CPU',
                    'gpuUnitLimit': 123
                },
                'tags': {
                    'string': 'string'
                }
            },
            'failureReason': 'string',
            'failureCode': 'InternalServiceError'|'RobotApplicationCrash'|'SimulationApplicationCrash'|'RobotApplicationHealthCheckFailure'|'SimulationApplicationHealthCheckFailure'|'BadPermissionsRobotApplication'|'BadPermissionsSimulationApplication'|'BadPermissionsS3Object'|'BadPermissionsS3Output'|'BadPermissionsCloudwatchLogs'|'SubnetIpLimitExceeded'|'ENILimitExceeded'|'BadPermissionsUserCredentials'|'InvalidBundleRobotApplication'|'InvalidBundleSimulationApplication'|'InvalidS3Resource'|'ThrottlingError'|'LimitExceeded'|'MismatchedEtag'|'RobotApplicationVersionMismatchedEtag'|'SimulationApplicationVersionMismatchedEtag'|'ResourceNotFound'|'RequestThrottled'|'BatchTimedOut'|'BatchCanceled'|'InvalidInput'|'WrongRegionS3Bucket'|'WrongRegionS3Output'|'WrongRegionRobotApplication'|'WrongRegionSimulationApplication'|'UploadContentMismatchError',
            'failedAt': datetime(2015, 1, 1)
        },
    ],
    'pendingRequests': [
        {
            'outputLocation': {
                's3Bucket': 'string',
                's3Prefix': 'string'
            },
            'loggingConfig': {
                'recordAllRosTopics': True|False
            },
            'maxJobDurationInSeconds': 123,
            'iamRole': 'string',
            'failureBehavior': 'Fail'|'Continue',
            'useDefaultApplications': True|False,
            'robotApplications': [
                {
                    'application': 'string',
                    'applicationVersion': 'string',
                    'launchConfig': {
                        'packageName': 'string',
                        'launchFile': 'string',
                        'environmentVariables': {
                            'string': 'string'
                        },
                        'portForwardingConfig': {
                            'portMappings': [
                                {
                                    'jobPort': 123,
                                    'applicationPort': 123,
                                    'enableOnPublicIp': True|False
                                },
                            ]
                        },
                        'streamUI': True|False,
                        'command': [
                            'string',
                        ]
                    },
                    'uploadConfigurations': [
                        {
                            'name': 'string',
                            'path': 'string',
                            'uploadBehavior': 'UPLOAD_ON_TERMINATE'|'UPLOAD_ROLLING_AUTO_REMOVE'
                        },
                    ],
                    'useDefaultUploadConfigurations': True|False,
                    'tools': [
                        {
                            'streamUI': True|False,
                            'name': 'string',
                            'command': 'string',
                            'streamOutputToCloudWatch': True|False,
                            'exitBehavior': 'FAIL'|'RESTART'
                        },
                    ],
                    'useDefaultTools': True|False
                },
            ],
            'simulationApplications': [
                {
                    'application': 'string',
                    'applicationVersion': 'string',
                    'launchConfig': {
                        'packageName': 'string',
                        'launchFile': 'string',
                        'environmentVariables': {
                            'string': 'string'
                        },
                        'portForwardingConfig': {
                            'portMappings': [
                                {
                                    'jobPort': 123,
                                    'applicationPort': 123,
                                    'enableOnPublicIp': True|False
                                },
                            ]
                        },
                        'streamUI': True|False,
                        'command': [
                            'string',
                        ]
                    },
                    'uploadConfigurations': [
                        {
                            'name': 'string',
                            'path': 'string',
                            'uploadBehavior': 'UPLOAD_ON_TERMINATE'|'UPLOAD_ROLLING_AUTO_REMOVE'
                        },
                    ],
                    'worldConfigs': [
                        {
                            'world': 'string'
                        },
                    ],
                    'useDefaultUploadConfigurations': True|False,
                    'tools': [
                        {
                            'streamUI': True|False,
                            'name': 'string',
                            'command': 'string',
                            'streamOutputToCloudWatch': True|False,
                            'exitBehavior': 'FAIL'|'RESTART'
                        },
                    ],
                    'useDefaultTools': True|False
                },
            ],
            'dataSources': [
                {
                    'name': 'string',
                    's3Bucket': 'string',
                    's3Keys': [
                        'string',
                    ],
                    'type': 'Prefix'|'Archive'|'File',
                    'destination': 'string'
                },
            ],
            'vpcConfig': {
                'subnets': [
                    'string',
                ],
                'securityGroups': [
                    'string',
                ],
                'assignPublicIp': True|False
            },
            'compute': {
                'simulationUnitLimit': 123,
                'computeType': 'CPU'|'GPU_AND_CPU',
                'gpuUnitLimit': 123
            },
            'tags': {
                'string': 'string'
            }
        },
    ],
    'createdRequests': [
        {
            'arn': 'string',
            'lastUpdatedAt': datetime(2015, 1, 1),
            'name': 'string',
            'status': 'Pending'|'Preparing'|'Running'|'Restarting'|'Completed'|'Failed'|'RunningFailed'|'Terminating'|'Terminated'|'Canceled',
            'simulationApplicationNames': [
                'string',
            ],
            'robotApplicationNames': [
                'string',
            ],
            'dataSourceNames': [
                'string',
            ],
            'computeType': 'CPU'|'GPU_AND_CPU'
        },
    ],
    'tags': {
        'string': 'string'
    }
}

Response Structure

  • (dict) --

    • arn (string) --

      The Amazon Resource Name (arn) of the batch.

    • status (string) --

      The status of the simulation job batch.

      Pending

      The simulation job batch request is pending.

      InProgress

      The simulation job batch is in progress.

      Failed

      The simulation job batch failed. One or more simulation job requests could not be completed due to an internal failure (like InternalServiceError ). See failureCode and failureReason for more information.

      Completed

      The simulation batch job completed. A batch is complete when (1) there are no pending simulation job requests in the batch and none of the failed simulation job requests are due to InternalServiceError and (2) when all created simulation jobs have reached a terminal state (for example, Completed or Failed ).

      Canceled

      The simulation batch job was cancelled.

      Canceling

      The simulation batch job is being cancelled.

      Completing

      The simulation batch job is completing.

      TimingOut

      The simulation job batch is timing out.

      If a batch timing out, and there are pending requests that were failing due to an internal failure (like InternalServiceError ), the batch status will be Failed . If there are no such failing request, the batch status will be TimedOut .

      TimedOut

      The simulation batch job timed out.

    • createdAt (datetime) --

      The time, in milliseconds since the epoch, when the simulation job batch was created.

    • clientRequestToken (string) --

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

    • batchPolicy (dict) --

      The batch policy.

      • timeoutInSeconds (integer) --

        The amount of time, in seconds, to wait for the batch to complete.

        If a batch times out, and there are pending requests that were failing due to an internal failure (like InternalServiceError ), they will be moved to the failed list and the batch status will be Failed . If the pending requests were failing for any other reason, the failed pending requests will be moved to the failed list and the batch status will be TimedOut .

      • maxConcurrency (integer) --

        The number of active simulation jobs create as part of the batch that can be in an active state at the same time.

        Active states include: Pending ,``Preparing`` , Running , Restarting , RunningFailed and Terminating . All other states are terminal states.

    • failureCode (string) --

      The failure code if the simulation job batch failed.

    • failureReason (string) --

      The reason the simulation job batch failed.

    • failedRequests (list) --

      A list of failed simulation job requests. The request failed to be created into a simulation job. Failed requests do not have a simulation job ID.

      • (dict) --

        Information about a failed create simulation job request.

        • request (dict) --

          The simulation job request.

          • outputLocation (dict) --

            The output location.

            • s3Bucket (string) --

              The S3 bucket for output.

            • s3Prefix (string) --

              The S3 folder in the s3Bucket where output files will be placed.

          • loggingConfig (dict) --

            The logging configuration.

            • recordAllRosTopics (boolean) --

              A boolean indicating whether to record all ROS topics.

          • maxJobDurationInSeconds (integer) --

            The maximum simulation job duration in seconds. The value must be 8 days (691,200 seconds) or less.

          • iamRole (string) --

            The IAM role name that allows the simulation instance to call the AWS APIs that are specified in its associated policies on your behalf. This is how credentials are passed in to your simulation job.

          • failureBehavior (string) --

            The failure behavior the simulation job.

            Continue

            Leaves the host running for its maximum timeout duration after a 4XX error code.

            Fail

            Stop the simulation job and terminate the instance.

          • useDefaultApplications (boolean) --

            A Boolean indicating whether to use default applications in the simulation job. Default applications include Gazebo, rqt, rviz and terminal access.

          • robotApplications (list) --

            The robot applications to use in the simulation job.

            • (dict) --

              Application configuration information for a robot.

              • application (string) --

                The application information for the robot application.

              • applicationVersion (string) --

                The version of the robot application.

              • launchConfig (dict) --

                The launch configuration for the robot application.

                • packageName (string) --

                  The package name.

                • launchFile (string) --

                  The launch file name.

                • environmentVariables (dict) --

                  The environment variables for the application launch.

                  • (string) --

                    • (string) --

                • portForwardingConfig (dict) --

                  The port forwarding configuration.

                  • portMappings (list) --

                    The port mappings for the configuration.

                    • (dict) --

                      An object representing a port mapping.

                      • jobPort (integer) --

                        The port number on the simulation job instance to use as a remote connection point.

                      • applicationPort (integer) --

                        The port number on the application.

                      • enableOnPublicIp (boolean) --

                        A Boolean indicating whether to enable this port mapping on public IP.

                • streamUI (boolean) --

                  Boolean indicating whether a streaming session will be configured for the application. If True , AWS RoboMaker will configure a connection so you can interact with your application as it is running in the simulation. You must configure and launch the component. It must have a graphical user interface.

                • command (list) --

                  If you've specified General as the value for your RobotSoftwareSuite , you can use this field to specify a list of commands for your container image.

                  If you've specified SimulationRuntime as the value for your SimulationSoftwareSuite , you can use this field to specify a list of commands for your container image.

                  • (string) --

              • uploadConfigurations (list) --

                The upload configurations for the robot application.

                • (dict) --

                  Provides upload configuration information. Files are uploaded from the simulation job to a location you specify.

                  • name (string) --

                    A prefix that specifies where files will be uploaded in Amazon S3. It is appended to the simulation output location to determine the final path.

                    For example, if your simulation output location is s3://my-bucket and your upload configuration name is robot-test , your files will be uploaded to s3://my-bucket/<simid>/<runid>/robot-test .

                  • path (string) --

                    Specifies the path of the file(s) to upload. Standard Unix glob matching rules are accepted, with the addition of ** as a super asterisk . For example, specifying /var/log/**.log causes all .log files in the /var/log directory tree to be collected. For more examples, see Glob Library .

                  • uploadBehavior (string) --

                    Specifies when to upload the files:

                    UPLOAD_ON_TERMINATE

                    Matching files are uploaded once the simulation enters the TERMINATING state. Matching files are not uploaded until all of your code (including tools) have stopped.

                    If there is a problem uploading a file, the upload is retried. If problems persist, no further upload attempts will be made.

                    UPLOAD_ROLLING_AUTO_REMOVE

                    Matching files are uploaded as they are created. They are deleted after they are uploaded. The specified path is checked every 5 seconds. A final check is made when all of your code (including tools) have stopped.

              • useDefaultUploadConfigurations (boolean) --

                A Boolean indicating whether to use default upload configurations. By default, .ros and .gazebo files are uploaded when the application terminates and all ROS topics will be recorded.

                If you set this value, you must specify an outputLocation .

              • tools (list) --

                Information about tools configured for the robot application.

                • (dict) --

                  Information about a tool. Tools are used in a simulation job.

                  • streamUI (boolean) --

                    Boolean indicating whether a streaming session will be configured for the tool. If True , AWS RoboMaker will configure a connection so you can interact with the tool as it is running in the simulation. It must have a graphical user interface. The default is False .

                  • name (string) --

                    The name of the tool.

                  • command (string) --

                    Command-line arguments for the tool. It must include the tool executable name.

                  • streamOutputToCloudWatch (boolean) --

                    Boolean indicating whether logs will be recorded in CloudWatch for the tool. The default is False .

                  • exitBehavior (string) --

                    Exit behavior determines what happens when your tool quits running. RESTART will cause your tool to be restarted. FAIL will cause your job to exit. The default is RESTART .

              • useDefaultTools (boolean) --

                A Boolean indicating whether to use default robot application tools. The default tools are rviz, rqt, terminal and rosbag record. The default is False .

          • simulationApplications (list) --

            The simulation applications to use in the simulation job.

            • (dict) --

              Information about a simulation application configuration.

              • application (string) --

                The application information for the simulation application.

              • applicationVersion (string) --

                The version of the simulation application.

              • launchConfig (dict) --

                The launch configuration for the simulation application.

                • packageName (string) --

                  The package name.

                • launchFile (string) --

                  The launch file name.

                • environmentVariables (dict) --

                  The environment variables for the application launch.

                  • (string) --

                    • (string) --

                • portForwardingConfig (dict) --

                  The port forwarding configuration.

                  • portMappings (list) --

                    The port mappings for the configuration.

                    • (dict) --

                      An object representing a port mapping.

                      • jobPort (integer) --

                        The port number on the simulation job instance to use as a remote connection point.

                      • applicationPort (integer) --

                        The port number on the application.

                      • enableOnPublicIp (boolean) --

                        A Boolean indicating whether to enable this port mapping on public IP.

                • streamUI (boolean) --

                  Boolean indicating whether a streaming session will be configured for the application. If True , AWS RoboMaker will configure a connection so you can interact with your application as it is running in the simulation. You must configure and launch the component. It must have a graphical user interface.

                • command (list) --

                  If you've specified General as the value for your RobotSoftwareSuite , you can use this field to specify a list of commands for your container image.

                  If you've specified SimulationRuntime as the value for your SimulationSoftwareSuite , you can use this field to specify a list of commands for your container image.

                  • (string) --

              • uploadConfigurations (list) --

                Information about upload configurations for the simulation application.

                • (dict) --

                  Provides upload configuration information. Files are uploaded from the simulation job to a location you specify.

                  • name (string) --

                    A prefix that specifies where files will be uploaded in Amazon S3. It is appended to the simulation output location to determine the final path.

                    For example, if your simulation output location is s3://my-bucket and your upload configuration name is robot-test , your files will be uploaded to s3://my-bucket/<simid>/<runid>/robot-test .

                  • path (string) --

                    Specifies the path of the file(s) to upload. Standard Unix glob matching rules are accepted, with the addition of ** as a super asterisk . For example, specifying /var/log/**.log causes all .log files in the /var/log directory tree to be collected. For more examples, see Glob Library .

                  • uploadBehavior (string) --

                    Specifies when to upload the files:

                    UPLOAD_ON_TERMINATE

                    Matching files are uploaded once the simulation enters the TERMINATING state. Matching files are not uploaded until all of your code (including tools) have stopped.

                    If there is a problem uploading a file, the upload is retried. If problems persist, no further upload attempts will be made.

                    UPLOAD_ROLLING_AUTO_REMOVE

                    Matching files are uploaded as they are created. They are deleted after they are uploaded. The specified path is checked every 5 seconds. A final check is made when all of your code (including tools) have stopped.

              • worldConfigs (list) --

                A list of world configurations.

                • (dict) --

                  Configuration information for a world.

                  • world (string) --

                    The world generated by Simulation WorldForge.

              • useDefaultUploadConfigurations (boolean) --

                A Boolean indicating whether to use default upload configurations. By default, .ros and .gazebo files are uploaded when the application terminates and all ROS topics will be recorded.

                If you set this value, you must specify an outputLocation .

              • tools (list) --

                Information about tools configured for the simulation application.

                • (dict) --

                  Information about a tool. Tools are used in a simulation job.

                  • streamUI (boolean) --

                    Boolean indicating whether a streaming session will be configured for the tool. If True , AWS RoboMaker will configure a connection so you can interact with the tool as it is running in the simulation. It must have a graphical user interface. The default is False .

                  • name (string) --

                    The name of the tool.

                  • command (string) --

                    Command-line arguments for the tool. It must include the tool executable name.

                  • streamOutputToCloudWatch (boolean) --

                    Boolean indicating whether logs will be recorded in CloudWatch for the tool. The default is False .

                  • exitBehavior (string) --

                    Exit behavior determines what happens when your tool quits running. RESTART will cause your tool to be restarted. FAIL will cause your job to exit. The default is RESTART .

              • useDefaultTools (boolean) --

                A Boolean indicating whether to use default simulation application tools. The default tools are rviz, rqt, terminal and rosbag record. The default is False .

          • dataSources (list) --

            Specify data sources to mount read-only files from S3 into your simulation. These files are available under /opt/robomaker/datasources/data_source_name .

            Note

            There is a limit of 100 files and a combined size of 25GB for all DataSourceConfig objects.

            • (dict) --

              Information about a data source.

              • name (string) --

                The name of the data source.

              • s3Bucket (string) --

                The S3 bucket where the data files are located.

              • s3Keys (list) --

                The list of S3 keys identifying the data source files.

                • (string) --

              • type (string) --

                The data type for the data source that you're using for your container image or simulation job. You can use this field to specify whether your data source is an Archive, an Amazon S3 prefix, or a file.

                If you don't specify a field, the default value is File .

              • destination (string) --

                The location where your files are mounted in the container image.

                If you've specified the type of the data source as an Archive , you must provide an Amazon S3 object key to your archive. The object key must point to either a .zip or .tar.gz file.

                If you've specified the type of the data source as a Prefix , you provide the Amazon S3 prefix that points to the files that you are using for your data source.

                If you've specified the type of the data source as a File , you provide the Amazon S3 path to the file that you're using as your data source.

          • vpcConfig (dict) --

            If your simulation job accesses resources in a VPC, you provide this parameter identifying the list of security group IDs and subnet IDs. These must belong to the same VPC. You must provide at least one security group and two subnet IDs.

            • subnets (list) --

              A list of one or more subnet IDs in your VPC.

              • (string) --

            • securityGroups (list) --

              A list of one or more security groups IDs in your VPC.

              • (string) --

            • assignPublicIp (boolean) --

              A boolean indicating whether to assign a public IP address.

          • compute (dict) --

            Compute information for the simulation job

            • simulationUnitLimit (integer) --

              The simulation unit limit. Your simulation is allocated CPU and memory proportional to the supplied simulation unit limit. A simulation unit is 1 vcpu and 2GB of memory. You are only billed for the SU utilization you consume up to the maximum value provided. The default is 15.

            • computeType (string) --

              Compute type information for the simulation job.

            • gpuUnitLimit (integer) --

              Compute GPU unit limit for the simulation job. It is the same as the number of GPUs allocated to the SimulationJob.

          • tags (dict) --

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

            • (string) --

              • (string) --

        • failureReason (string) --

          The failure reason of the simulation job request.

        • failureCode (string) --

          The failure code.

        • failedAt (datetime) --

          The time, in milliseconds since the epoch, when the simulation job batch failed.

    • pendingRequests (list) --

      A list of pending simulation job requests. These requests have not yet been created into simulation jobs.

      • (dict) --

        Information about a simulation job request.

        • outputLocation (dict) --

          The output location.

          • s3Bucket (string) --

            The S3 bucket for output.

          • s3Prefix (string) --

            The S3 folder in the s3Bucket where output files will be placed.

        • loggingConfig (dict) --

          The logging configuration.

          • recordAllRosTopics (boolean) --

            A boolean indicating whether to record all ROS topics.

        • maxJobDurationInSeconds (integer) --

          The maximum simulation job duration in seconds. The value must be 8 days (691,200 seconds) or less.

        • iamRole (string) --

          The IAM role name that allows the simulation instance to call the AWS APIs that are specified in its associated policies on your behalf. This is how credentials are passed in to your simulation job.

        • failureBehavior (string) --

          The failure behavior the simulation job.

          Continue

          Leaves the host running for its maximum timeout duration after a 4XX error code.

          Fail

          Stop the simulation job and terminate the instance.

        • useDefaultApplications (boolean) --

          A Boolean indicating whether to use default applications in the simulation job. Default applications include Gazebo, rqt, rviz and terminal access.

        • robotApplications (list) --

          The robot applications to use in the simulation job.

          • (dict) --

            Application configuration information for a robot.

            • application (string) --

              The application information for the robot application.

            • applicationVersion (string) --

              The version of the robot application.

            • launchConfig (dict) --

              The launch configuration for the robot application.

              • packageName (string) --

                The package name.

              • launchFile (string) --

                The launch file name.

              • environmentVariables (dict) --

                The environment variables for the application launch.

                • (string) --

                  • (string) --

              • portForwardingConfig (dict) --

                The port forwarding configuration.

                • portMappings (list) --

                  The port mappings for the configuration.

                  • (dict) --

                    An object representing a port mapping.

                    • jobPort (integer) --

                      The port number on the simulation job instance to use as a remote connection point.

                    • applicationPort (integer) --

                      The port number on the application.

                    • enableOnPublicIp (boolean) --

                      A Boolean indicating whether to enable this port mapping on public IP.

              • streamUI (boolean) --

                Boolean indicating whether a streaming session will be configured for the application. If True , AWS RoboMaker will configure a connection so you can interact with your application as it is running in the simulation. You must configure and launch the component. It must have a graphical user interface.

              • command (list) --

                If you've specified General as the value for your RobotSoftwareSuite , you can use this field to specify a list of commands for your container image.

                If you've specified SimulationRuntime as the value for your SimulationSoftwareSuite , you can use this field to specify a list of commands for your container image.

                • (string) --

            • uploadConfigurations (list) --

              The upload configurations for the robot application.

              • (dict) --

                Provides upload configuration information. Files are uploaded from the simulation job to a location you specify.

                • name (string) --

                  A prefix that specifies where files will be uploaded in Amazon S3. It is appended to the simulation output location to determine the final path.

                  For example, if your simulation output location is s3://my-bucket and your upload configuration name is robot-test , your files will be uploaded to s3://my-bucket/<simid>/<runid>/robot-test .

                • path (string) --

                  Specifies the path of the file(s) to upload. Standard Unix glob matching rules are accepted, with the addition of ** as a super asterisk . For example, specifying /var/log/**.log causes all .log files in the /var/log directory tree to be collected. For more examples, see Glob Library .

                • uploadBehavior (string) --

                  Specifies when to upload the files:

                  UPLOAD_ON_TERMINATE

                  Matching files are uploaded once the simulation enters the TERMINATING state. Matching files are not uploaded until all of your code (including tools) have stopped.

                  If there is a problem uploading a file, the upload is retried. If problems persist, no further upload attempts will be made.

                  UPLOAD_ROLLING_AUTO_REMOVE

                  Matching files are uploaded as they are created. They are deleted after they are uploaded. The specified path is checked every 5 seconds. A final check is made when all of your code (including tools) have stopped.

            • useDefaultUploadConfigurations (boolean) --

              A Boolean indicating whether to use default upload configurations. By default, .ros and .gazebo files are uploaded when the application terminates and all ROS topics will be recorded.

              If you set this value, you must specify an outputLocation .

            • tools (list) --

              Information about tools configured for the robot application.

              • (dict) --

                Information about a tool. Tools are used in a simulation job.

                • streamUI (boolean) --

                  Boolean indicating whether a streaming session will be configured for the tool. If True , AWS RoboMaker will configure a connection so you can interact with the tool as it is running in the simulation. It must have a graphical user interface. The default is False .

                • name (string) --

                  The name of the tool.

                • command (string) --

                  Command-line arguments for the tool. It must include the tool executable name.

                • streamOutputToCloudWatch (boolean) --

                  Boolean indicating whether logs will be recorded in CloudWatch for the tool. The default is False .

                • exitBehavior (string) --

                  Exit behavior determines what happens when your tool quits running. RESTART will cause your tool to be restarted. FAIL will cause your job to exit. The default is RESTART .

            • useDefaultTools (boolean) --

              A Boolean indicating whether to use default robot application tools. The default tools are rviz, rqt, terminal and rosbag record. The default is False .

        • simulationApplications (list) --

          The simulation applications to use in the simulation job.

          • (dict) --

            Information about a simulation application configuration.

            • application (string) --

              The application information for the simulation application.

            • applicationVersion (string) --

              The version of the simulation application.

            • launchConfig (dict) --

              The launch configuration for the simulation application.

              • packageName (string) --

                The package name.

              • launchFile (string) --

                The launch file name.

              • environmentVariables (dict) --

                The environment variables for the application launch.

                • (string) --

                  • (string) --

              • portForwardingConfig (dict) --

                The port forwarding configuration.

                • portMappings (list) --

                  The port mappings for the configuration.

                  • (dict) --

                    An object representing a port mapping.

                    • jobPort (integer) --

                      The port number on the simulation job instance to use as a remote connection point.

                    • applicationPort (integer) --

                      The port number on the application.

                    • enableOnPublicIp (boolean) --

                      A Boolean indicating whether to enable this port mapping on public IP.

              • streamUI (boolean) --

                Boolean indicating whether a streaming session will be configured for the application. If True , AWS RoboMaker will configure a connection so you can interact with your application as it is running in the simulation. You must configure and launch the component. It must have a graphical user interface.

              • command (list) --

                If you've specified General as the value for your RobotSoftwareSuite , you can use this field to specify a list of commands for your container image.

                If you've specified SimulationRuntime as the value for your SimulationSoftwareSuite , you can use this field to specify a list of commands for your container image.

                • (string) --

            • uploadConfigurations (list) --

              Information about upload configurations for the simulation application.

              • (dict) --

                Provides upload configuration information. Files are uploaded from the simulation job to a location you specify.

                • name (string) --

                  A prefix that specifies where files will be uploaded in Amazon S3. It is appended to the simulation output location to determine the final path.

                  For example, if your simulation output location is s3://my-bucket and your upload configuration name is robot-test , your files will be uploaded to s3://my-bucket/<simid>/<runid>/robot-test .

                • path (string) --

                  Specifies the path of the file(s) to upload. Standard Unix glob matching rules are accepted, with the addition of ** as a super asterisk . For example, specifying /var/log/**.log causes all .log files in the /var/log directory tree to be collected. For more examples, see Glob Library .

                • uploadBehavior (string) --

                  Specifies when to upload the files:

                  UPLOAD_ON_TERMINATE

                  Matching files are uploaded once the simulation enters the TERMINATING state. Matching files are not uploaded until all of your code (including tools) have stopped.

                  If there is a problem uploading a file, the upload is retried. If problems persist, no further upload attempts will be made.

                  UPLOAD_ROLLING_AUTO_REMOVE

                  Matching files are uploaded as they are created. They are deleted after they are uploaded. The specified path is checked every 5 seconds. A final check is made when all of your code (including tools) have stopped.

            • worldConfigs (list) --

              A list of world configurations.

              • (dict) --

                Configuration information for a world.

                • world (string) --

                  The world generated by Simulation WorldForge.

            • useDefaultUploadConfigurations (boolean) --

              A Boolean indicating whether to use default upload configurations. By default, .ros and .gazebo files are uploaded when the application terminates and all ROS topics will be recorded.

              If you set this value, you must specify an outputLocation .

            • tools (list) --

              Information about tools configured for the simulation application.

              • (dict) --

                Information about a tool. Tools are used in a simulation job.

                • streamUI (boolean) --

                  Boolean indicating whether a streaming session will be configured for the tool. If True , AWS RoboMaker will configure a connection so you can interact with the tool as it is running in the simulation. It must have a graphical user interface. The default is False .

                • name (string) --

                  The name of the tool.

                • command (string) --

                  Command-line arguments for the tool. It must include the tool executable name.

                • streamOutputToCloudWatch (boolean) --

                  Boolean indicating whether logs will be recorded in CloudWatch for the tool. The default is False .

                • exitBehavior (string) --

                  Exit behavior determines what happens when your tool quits running. RESTART will cause your tool to be restarted. FAIL will cause your job to exit. The default is RESTART .

            • useDefaultTools (boolean) --

              A Boolean indicating whether to use default simulation application tools. The default tools are rviz, rqt, terminal and rosbag record. The default is False .

        • dataSources (list) --

          Specify data sources to mount read-only files from S3 into your simulation. These files are available under /opt/robomaker/datasources/data_source_name .

          Note

          There is a limit of 100 files and a combined size of 25GB for all DataSourceConfig objects.

          • (dict) --

            Information about a data source.

            • name (string) --

              The name of the data source.

            • s3Bucket (string) --

              The S3 bucket where the data files are located.

            • s3Keys (list) --

              The list of S3 keys identifying the data source files.

              • (string) --

            • type (string) --

              The data type for the data source that you're using for your container image or simulation job. You can use this field to specify whether your data source is an Archive, an Amazon S3 prefix, or a file.

              If you don't specify a field, the default value is File .

            • destination (string) --

              The location where your files are mounted in the container image.

              If you've specified the type of the data source as an Archive , you must provide an Amazon S3 object key to your archive. The object key must point to either a .zip or .tar.gz file.

              If you've specified the type of the data source as a Prefix , you provide the Amazon S3 prefix that points to the files that you are using for your data source.

              If you've specified the type of the data source as a File , you provide the Amazon S3 path to the file that you're using as your data source.

        • vpcConfig (dict) --

          If your simulation job accesses resources in a VPC, you provide this parameter identifying the list of security group IDs and subnet IDs. These must belong to the same VPC. You must provide at least one security group and two subnet IDs.

          • subnets (list) --

            A list of one or more subnet IDs in your VPC.

            • (string) --

          • securityGroups (list) --

            A list of one or more security groups IDs in your VPC.

            • (string) --

          • assignPublicIp (boolean) --

            A boolean indicating whether to assign a public IP address.

        • compute (dict) --

          Compute information for the simulation job

          • simulationUnitLimit (integer) --

            The simulation unit limit. Your simulation is allocated CPU and memory proportional to the supplied simulation unit limit. A simulation unit is 1 vcpu and 2GB of memory. You are only billed for the SU utilization you consume up to the maximum value provided. The default is 15.

          • computeType (string) --

            Compute type information for the simulation job.

          • gpuUnitLimit (integer) --

            Compute GPU unit limit for the simulation job. It is the same as the number of GPUs allocated to the SimulationJob.

        • tags (dict) --

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

          • (string) --

            • (string) --

    • createdRequests (list) --

      A list of created simulation job request summaries.

      • (dict) --

        Summary information for a simulation job.

        • arn (string) --

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

        • lastUpdatedAt (datetime) --

          The time, in milliseconds since the epoch, when the simulation job was last updated.

        • name (string) --

          The name of the simulation job.

        • status (string) --

          The status of the simulation job.

        • simulationApplicationNames (list) --

          A list of simulation job simulation application names.

          • (string) --

        • robotApplicationNames (list) --

          A list of simulation job robot application names.

          • (string) --

        • dataSourceNames (list) --

          The names of the data sources.

          • (string) --

        • computeType (string) --

          The compute type for the simulation job summary.

    • tags (dict) --

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

      • (string) --

        • (string) --

UpdateRobotApplication (updated) Link ¶
Changes (both)
{'robotSoftwareSuite': {'name': {'General'}}}

Updates a robot application.

See also: AWS API Documentation

Request Syntax

client.update_robot_application(
    application='string',
    sources=[
        {
            's3Bucket': 'string',
            's3Key': 'string',
            'architecture': 'X86_64'|'ARM64'|'ARMHF'
        },
    ],
    robotSoftwareSuite={
        'name': 'ROS'|'ROS2'|'General',
        'version': 'Kinetic'|'Melodic'|'Dashing'|'Foxy'
    },
    currentRevisionId='string',
    environment={
        'uri': 'string'
    }
)
type application

string

param application

[REQUIRED]

The application information for the robot application.

type sources

list

param sources

The sources of the robot application.

  • (dict) --

    Information about a source configuration.

    • s3Bucket (string) --

      The Amazon S3 bucket name.

    • s3Key (string) --

      The s3 object key.

    • architecture (string) --

      The target processor architecture for the application.

type robotSoftwareSuite

dict

param robotSoftwareSuite

[REQUIRED]

The robot software suite (ROS distribution) used by the robot application.

  • name (string) --

    The name of the robot software suite (ROS distribution).

  • version (string) --

    The version of the robot software suite (ROS distribution).

type currentRevisionId

string

param currentRevisionId

The revision id for the robot application.

type environment

dict

param environment

The object that contains the Docker image URI for your robot application.

  • uri (string) --

    The Docker image URI for either your robot or simulation applications.

rtype

dict

returns

Response Syntax

{
    'arn': 'string',
    'name': 'string',
    'version': 'string',
    'sources': [
        {
            's3Bucket': 'string',
            's3Key': 'string',
            'etag': 'string',
            'architecture': 'X86_64'|'ARM64'|'ARMHF'
        },
    ],
    'robotSoftwareSuite': {
        'name': 'ROS'|'ROS2'|'General',
        'version': 'Kinetic'|'Melodic'|'Dashing'|'Foxy'
    },
    'lastUpdatedAt': datetime(2015, 1, 1),
    'revisionId': 'string',
    'environment': {
        'uri': 'string'
    }
}

Response Structure

  • (dict) --

    • arn (string) --

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

    • name (string) --

      The name of the robot application.

    • version (string) --

      The version of the robot application.

    • sources (list) --

      The sources of the robot application.

      • (dict) --

        Information about a source.

        • s3Bucket (string) --

          The s3 bucket name.

        • s3Key (string) --

          The s3 object key.

        • etag (string) --

          A hash of the object specified by s3Bucket and s3Key .

        • architecture (string) --

          The taget processor architecture for the application.

    • robotSoftwareSuite (dict) --

      The robot software suite (ROS distribution) used by the robot application.

      • name (string) --

        The name of the robot software suite (ROS distribution).

      • version (string) --

        The version of the robot software suite (ROS distribution).

    • lastUpdatedAt (datetime) --

      The time, in milliseconds since the epoch, when the robot application was last updated.

    • revisionId (string) --

      The revision id of the robot application.

    • environment (dict) --

      The object that contains the Docker image URI for your robot application.

      • uri (string) --

        The Docker image URI for either your robot or simulation applications.

UpdateSimulationApplication (updated) Link ¶
Changes (both)
{'robotSoftwareSuite': {'name': {'General'}},
 'simulationSoftwareSuite': {'name': {'SimulationRuntime'}}}

Updates a simulation application.

See also: AWS API Documentation

Request Syntax

client.update_simulation_application(
    application='string',
    sources=[
        {
            's3Bucket': 'string',
            's3Key': 'string',
            'architecture': 'X86_64'|'ARM64'|'ARMHF'
        },
    ],
    simulationSoftwareSuite={
        'name': 'Gazebo'|'RosbagPlay'|'SimulationRuntime',
        'version': 'string'
    },
    robotSoftwareSuite={
        'name': 'ROS'|'ROS2'|'General',
        'version': 'Kinetic'|'Melodic'|'Dashing'|'Foxy'
    },
    renderingEngine={
        'name': 'OGRE',
        'version': 'string'
    },
    currentRevisionId='string',
    environment={
        'uri': 'string'
    }
)
type application

string

param application

[REQUIRED]

The application information for the simulation application.

type sources

list

param sources

The sources of the simulation application.

  • (dict) --

    Information about a source configuration.

    • s3Bucket (string) --

      The Amazon S3 bucket name.

    • s3Key (string) --

      The s3 object key.

    • architecture (string) --

      The target processor architecture for the application.

type simulationSoftwareSuite

dict

param simulationSoftwareSuite

[REQUIRED]

The simulation software suite used by the simulation application.

  • name (string) --

    The name of the simulation software suite.

  • version (string) --

    The version of the simulation software suite.

type robotSoftwareSuite

dict

param robotSoftwareSuite

[REQUIRED]

Information about the robot software suite (ROS distribution).

  • name (string) --

    The name of the robot software suite (ROS distribution).

  • version (string) --

    The version of the robot software suite (ROS distribution).

type renderingEngine

dict

param renderingEngine

The rendering engine for the simulation application.

  • name (string) --

    The name of the rendering engine.

  • version (string) --

    The version of the rendering engine.

type currentRevisionId

string

param currentRevisionId

The revision id for the robot application.

type environment

dict

param environment

The object that contains the Docker image URI for your simulation application.

  • uri (string) --

    The Docker image URI for either your robot or simulation applications.

rtype

dict

returns

Response Syntax

{
    'arn': 'string',
    'name': 'string',
    'version': 'string',
    'sources': [
        {
            's3Bucket': 'string',
            's3Key': 'string',
            'etag': 'string',
            'architecture': 'X86_64'|'ARM64'|'ARMHF'
        },
    ],
    'simulationSoftwareSuite': {
        'name': 'Gazebo'|'RosbagPlay'|'SimulationRuntime',
        'version': 'string'
    },
    'robotSoftwareSuite': {
        'name': 'ROS'|'ROS2'|'General',
        'version': 'Kinetic'|'Melodic'|'Dashing'|'Foxy'
    },
    'renderingEngine': {
        'name': 'OGRE',
        'version': 'string'
    },
    'lastUpdatedAt': datetime(2015, 1, 1),
    'revisionId': 'string',
    'environment': {
        'uri': 'string'
    }
}

Response Structure

  • (dict) --

    • arn (string) --

      The Amazon Resource Name (ARN) of the updated simulation application.

    • name (string) --

      The name of the simulation application.

    • version (string) --

      The version of the robot application.

    • sources (list) --

      The sources of the simulation application.

      • (dict) --

        Information about a source.

        • s3Bucket (string) --

          The s3 bucket name.

        • s3Key (string) --

          The s3 object key.

        • etag (string) --

          A hash of the object specified by s3Bucket and s3Key .

        • architecture (string) --

          The taget processor architecture for the application.

    • simulationSoftwareSuite (dict) --

      The simulation software suite used by the simulation application.

      • name (string) --

        The name of the simulation software suite.

      • version (string) --

        The version of the simulation software suite.

    • robotSoftwareSuite (dict) --

      Information about the robot software suite (ROS distribution).

      • name (string) --

        The name of the robot software suite (ROS distribution).

      • version (string) --

        The version of the robot software suite (ROS distribution).

    • renderingEngine (dict) --

      The rendering engine for the simulation application.

      • name (string) --

        The name of the rendering engine.

      • version (string) --

        The version of the rendering engine.

    • lastUpdatedAt (datetime) --

      The time, in milliseconds since the epoch, when the simulation application was last updated.

    • revisionId (string) --

      The revision id of the simulation application.

    • environment (dict) --

      The object that contains the Docker image URI used for your simulation application.

      • uri (string) --

        The Docker image URI for either your robot or simulation applications.