Class: Aws::RoboMaker::Types::SimulationJobRequest

Inherits:
Struct
  • Object
show all
Defined in:
gems/aws-sdk-robomaker/lib/aws-sdk-robomaker/types.rb

Overview

Note:

When making an API call, you may pass SimulationJobRequest data as a hash:

{
  output_location: {
    s3_bucket: "S3Bucket",
    s3_prefix: "S3Key",
  },
  logging_config: {
    record_all_ros_topics: false, # required
  },
  max_job_duration_in_seconds: 1, # required
  iam_role: "IamRole",
  failure_behavior: "Fail", # accepts Fail, Continue
  use_default_applications: false,
  robot_applications: [
    {
      application: "Arn", # required
      application_version: "Version",
      launch_config: { # required
        package_name: "Command", # required
        launch_file: "Command", # required
        environment_variables: {
          "EnvironmentVariableKey" => "EnvironmentVariableValue",
        },
        port_forwarding_config: {
          port_mappings: [
            {
              job_port: 1, # required
              application_port: 1, # required
              enable_on_public_ip: false,
            },
          ],
        },
        stream_ui: false,
      },
      upload_configurations: [
        {
          name: "Name", # required
          path: "Path", # required
          upload_behavior: "UPLOAD_ON_TERMINATE", # required, accepts UPLOAD_ON_TERMINATE, UPLOAD_ROLLING_AUTO_REMOVE
        },
      ],
      use_default_upload_configurations: false,
      tools: [
        {
          stream_ui: false,
          name: "Name", # required
          command: "UnrestrictedCommand", # required
          stream_output_to_cloud_watch: false,
          exit_behavior: "FAIL", # accepts FAIL, RESTART
        },
      ],
      use_default_tools: false,
    },
  ],
  simulation_applications: [
    {
      application: "Arn", # required
      application_version: "Version",
      launch_config: { # required
        package_name: "Command", # required
        launch_file: "Command", # required
        environment_variables: {
          "EnvironmentVariableKey" => "EnvironmentVariableValue",
        },
        port_forwarding_config: {
          port_mappings: [
            {
              job_port: 1, # required
              application_port: 1, # required
              enable_on_public_ip: false,
            },
          ],
        },
        stream_ui: false,
      },
      upload_configurations: [
        {
          name: "Name", # required
          path: "Path", # required
          upload_behavior: "UPLOAD_ON_TERMINATE", # required, accepts UPLOAD_ON_TERMINATE, UPLOAD_ROLLING_AUTO_REMOVE
        },
      ],
      world_configs: [
        {
          world: "Arn",
        },
      ],
      use_default_upload_configurations: false,
      tools: [
        {
          stream_ui: false,
          name: "Name", # required
          command: "UnrestrictedCommand", # required
          stream_output_to_cloud_watch: false,
          exit_behavior: "FAIL", # accepts FAIL, RESTART
        },
      ],
      use_default_tools: false,
    },
  ],
  data_sources: [
    {
      name: "Name", # required
      s3_bucket: "S3Bucket", # required
      s3_keys: ["S3Key"], # required
    },
  ],
  vpc_config: {
    subnets: ["NonEmptyString"], # required
    security_groups: ["NonEmptyString"],
    assign_public_ip: false,
  },
  compute: {
    simulation_unit_limit: 1,
  },
  tags: {
    "TagKey" => "TagValue",
  },
}

Information about a simulation job request.

Constant Summary collapse

SENSITIVE =
[]

Instance Attribute Summary collapse

Instance Attribute Details

#computeTypes::Compute

Compute information for the simulation job

Returns:



5764
5765
5766
5767
5768
5769
5770
5771
5772
5773
5774
5775
5776
5777
5778
5779
# File 'gems/aws-sdk-robomaker/lib/aws-sdk-robomaker/types.rb', line 5764

class SimulationJobRequest < Struct.new(
  :output_location,
  :logging_config,
  :max_job_duration_in_seconds,
  :iam_role,
  :failure_behavior,
  :use_default_applications,
  :robot_applications,
  :simulation_applications,
  :data_sources,
  :vpc_config,
  :compute,
  :tags)
  SENSITIVE = []
  include Aws::Structure
end

#data_sourcesArray<Types::DataSourceConfig>

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

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

Returns:



5764
5765
5766
5767
5768
5769
5770
5771
5772
5773
5774
5775
5776
5777
5778
5779
# File 'gems/aws-sdk-robomaker/lib/aws-sdk-robomaker/types.rb', line 5764

class SimulationJobRequest < Struct.new(
  :output_location,
  :logging_config,
  :max_job_duration_in_seconds,
  :iam_role,
  :failure_behavior,
  :use_default_applications,
  :robot_applications,
  :simulation_applications,
  :data_sources,
  :vpc_config,
  :compute,
  :tags)
  SENSITIVE = []
  include Aws::Structure
end

#failure_behaviorString

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.

Returns:

  • (String)


5764
5765
5766
5767
5768
5769
5770
5771
5772
5773
5774
5775
5776
5777
5778
5779
# File 'gems/aws-sdk-robomaker/lib/aws-sdk-robomaker/types.rb', line 5764

class SimulationJobRequest < Struct.new(
  :output_location,
  :logging_config,
  :max_job_duration_in_seconds,
  :iam_role,
  :failure_behavior,
  :use_default_applications,
  :robot_applications,
  :simulation_applications,
  :data_sources,
  :vpc_config,
  :compute,
  :tags)
  SENSITIVE = []
  include Aws::Structure
end

#iam_roleString

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.

Returns:

  • (String)


5764
5765
5766
5767
5768
5769
5770
5771
5772
5773
5774
5775
5776
5777
5778
5779
# File 'gems/aws-sdk-robomaker/lib/aws-sdk-robomaker/types.rb', line 5764

class SimulationJobRequest < Struct.new(
  :output_location,
  :logging_config,
  :max_job_duration_in_seconds,
  :iam_role,
  :failure_behavior,
  :use_default_applications,
  :robot_applications,
  :simulation_applications,
  :data_sources,
  :vpc_config,
  :compute,
  :tags)
  SENSITIVE = []
  include Aws::Structure
end

#logging_configTypes::LoggingConfig

The logging configuration.



5764
5765
5766
5767
5768
5769
5770
5771
5772
5773
5774
5775
5776
5777
5778
5779
# File 'gems/aws-sdk-robomaker/lib/aws-sdk-robomaker/types.rb', line 5764

class SimulationJobRequest < Struct.new(
  :output_location,
  :logging_config,
  :max_job_duration_in_seconds,
  :iam_role,
  :failure_behavior,
  :use_default_applications,
  :robot_applications,
  :simulation_applications,
  :data_sources,
  :vpc_config,
  :compute,
  :tags)
  SENSITIVE = []
  include Aws::Structure
end

#max_job_duration_in_secondsInteger

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

Returns:

  • (Integer)


5764
5765
5766
5767
5768
5769
5770
5771
5772
5773
5774
5775
5776
5777
5778
5779
# File 'gems/aws-sdk-robomaker/lib/aws-sdk-robomaker/types.rb', line 5764

class SimulationJobRequest < Struct.new(
  :output_location,
  :logging_config,
  :max_job_duration_in_seconds,
  :iam_role,
  :failure_behavior,
  :use_default_applications,
  :robot_applications,
  :simulation_applications,
  :data_sources,
  :vpc_config,
  :compute,
  :tags)
  SENSITIVE = []
  include Aws::Structure
end

#output_locationTypes::OutputLocation

The output location.



5764
5765
5766
5767
5768
5769
5770
5771
5772
5773
5774
5775
5776
5777
5778
5779
# File 'gems/aws-sdk-robomaker/lib/aws-sdk-robomaker/types.rb', line 5764

class SimulationJobRequest < Struct.new(
  :output_location,
  :logging_config,
  :max_job_duration_in_seconds,
  :iam_role,
  :failure_behavior,
  :use_default_applications,
  :robot_applications,
  :simulation_applications,
  :data_sources,
  :vpc_config,
  :compute,
  :tags)
  SENSITIVE = []
  include Aws::Structure
end

#robot_applicationsArray<Types::RobotApplicationConfig>

The robot applications to use in the simulation job.

Returns:



5764
5765
5766
5767
5768
5769
5770
5771
5772
5773
5774
5775
5776
5777
5778
5779
# File 'gems/aws-sdk-robomaker/lib/aws-sdk-robomaker/types.rb', line 5764

class SimulationJobRequest < Struct.new(
  :output_location,
  :logging_config,
  :max_job_duration_in_seconds,
  :iam_role,
  :failure_behavior,
  :use_default_applications,
  :robot_applications,
  :simulation_applications,
  :data_sources,
  :vpc_config,
  :compute,
  :tags)
  SENSITIVE = []
  include Aws::Structure
end

#simulation_applicationsArray<Types::SimulationApplicationConfig>

The simulation applications to use in the simulation job.



5764
5765
5766
5767
5768
5769
5770
5771
5772
5773
5774
5775
5776
5777
5778
5779
# File 'gems/aws-sdk-robomaker/lib/aws-sdk-robomaker/types.rb', line 5764

class SimulationJobRequest < Struct.new(
  :output_location,
  :logging_config,
  :max_job_duration_in_seconds,
  :iam_role,
  :failure_behavior,
  :use_default_applications,
  :robot_applications,
  :simulation_applications,
  :data_sources,
  :vpc_config,
  :compute,
  :tags)
  SENSITIVE = []
  include Aws::Structure
end

#tagsHash<String,String>

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

Returns:

  • (Hash<String,String>)


5764
5765
5766
5767
5768
5769
5770
5771
5772
5773
5774
5775
5776
5777
5778
5779
# File 'gems/aws-sdk-robomaker/lib/aws-sdk-robomaker/types.rb', line 5764

class SimulationJobRequest < Struct.new(
  :output_location,
  :logging_config,
  :max_job_duration_in_seconds,
  :iam_role,
  :failure_behavior,
  :use_default_applications,
  :robot_applications,
  :simulation_applications,
  :data_sources,
  :vpc_config,
  :compute,
  :tags)
  SENSITIVE = []
  include Aws::Structure
end

#use_default_applicationsBoolean

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

Returns:

  • (Boolean)


5764
5765
5766
5767
5768
5769
5770
5771
5772
5773
5774
5775
5776
5777
5778
5779
# File 'gems/aws-sdk-robomaker/lib/aws-sdk-robomaker/types.rb', line 5764

class SimulationJobRequest < Struct.new(
  :output_location,
  :logging_config,
  :max_job_duration_in_seconds,
  :iam_role,
  :failure_behavior,
  :use_default_applications,
  :robot_applications,
  :simulation_applications,
  :data_sources,
  :vpc_config,
  :compute,
  :tags)
  SENSITIVE = []
  include Aws::Structure
end

#vpc_configTypes::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 two subnet IDs.

Returns:



5764
5765
5766
5767
5768
5769
5770
5771
5772
5773
5774
5775
5776
5777
5778
5779
# File 'gems/aws-sdk-robomaker/lib/aws-sdk-robomaker/types.rb', line 5764

class SimulationJobRequest < Struct.new(
  :output_location,
  :logging_config,
  :max_job_duration_in_seconds,
  :iam_role,
  :failure_behavior,
  :use_default_applications,
  :robot_applications,
  :simulation_applications,
  :data_sources,
  :vpc_config,
  :compute,
  :tags)
  SENSITIVE = []
  include Aws::Structure
end