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,
  },
  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",
        launch_file: "Command",
        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,
        command: ["NonEmptyString"],
      },
      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",
        launch_file: "Command",
        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,
        command: ["NonEmptyString"],
      },
      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: ["S3KeyOrPrefix"], # required
      type: "Prefix", # accepts Prefix, Archive, File
      destination: "Path",
    },
  ],
  vpc_config: {
    subnets: ["NonEmptyString"], # required
    security_groups: ["NonEmptyString"],
    assign_public_ip: false,
  },
  compute: {
    simulation_unit_limit: 1,
    compute_type: "CPU", # accepts CPU, GPU_AND_CPU
    gpu_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:



5880
5881
5882
5883
5884
5885
5886
5887
5888
5889
5890
5891
5892
5893
5894
5895
# File 'gems/aws-sdk-robomaker/lib/aws-sdk-robomaker/types.rb', line 5880

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:



5880
5881
5882
5883
5884
5885
5886
5887
5888
5889
5890
5891
5892
5893
5894
5895
# File 'gems/aws-sdk-robomaker/lib/aws-sdk-robomaker/types.rb', line 5880

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)


5880
5881
5882
5883
5884
5885
5886
5887
5888
5889
5890
5891
5892
5893
5894
5895
# File 'gems/aws-sdk-robomaker/lib/aws-sdk-robomaker/types.rb', line 5880

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)


5880
5881
5882
5883
5884
5885
5886
5887
5888
5889
5890
5891
5892
5893
5894
5895
# File 'gems/aws-sdk-robomaker/lib/aws-sdk-robomaker/types.rb', line 5880

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.



5880
5881
5882
5883
5884
5885
5886
5887
5888
5889
5890
5891
5892
5893
5894
5895
# File 'gems/aws-sdk-robomaker/lib/aws-sdk-robomaker/types.rb', line 5880

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)


5880
5881
5882
5883
5884
5885
5886
5887
5888
5889
5890
5891
5892
5893
5894
5895
# File 'gems/aws-sdk-robomaker/lib/aws-sdk-robomaker/types.rb', line 5880

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.



5880
5881
5882
5883
5884
5885
5886
5887
5888
5889
5890
5891
5892
5893
5894
5895
# File 'gems/aws-sdk-robomaker/lib/aws-sdk-robomaker/types.rb', line 5880

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:



5880
5881
5882
5883
5884
5885
5886
5887
5888
5889
5890
5891
5892
5893
5894
5895
# File 'gems/aws-sdk-robomaker/lib/aws-sdk-robomaker/types.rb', line 5880

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.



5880
5881
5882
5883
5884
5885
5886
5887
5888
5889
5890
5891
5892
5893
5894
5895
# File 'gems/aws-sdk-robomaker/lib/aws-sdk-robomaker/types.rb', line 5880

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>)


5880
5881
5882
5883
5884
5885
5886
5887
5888
5889
5890
5891
5892
5893
5894
5895
# File 'gems/aws-sdk-robomaker/lib/aws-sdk-robomaker/types.rb', line 5880

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)


5880
5881
5882
5883
5884
5885
5886
5887
5888
5889
5890
5891
5892
5893
5894
5895
# File 'gems/aws-sdk-robomaker/lib/aws-sdk-robomaker/types.rb', line 5880

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:



5880
5881
5882
5883
5884
5885
5886
5887
5888
5889
5890
5891
5892
5893
5894
5895
# File 'gems/aws-sdk-robomaker/lib/aws-sdk-robomaker/types.rb', line 5880

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