Class: Aws::RoboMaker::Types::CreateSimulationJobRequest

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 CreateSimulationJobRequest data as a hash:

{
  client_request_token: "ClientRequestToken",
  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", # required
  failure_behavior: "Fail", # accepts Fail, Continue
  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,
      },
    },
  ],
  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,
      },
      world_configs: [
        {
          world: "Arn",
        },
      ],
    },
  ],
  data_sources: [
    {
      name: "Name", # required
      s3_bucket: "S3Bucket", # required
      s3_keys: ["S3Key"], # required
    },
  ],
  tags: {
    "TagKey" => "TagValue",
  },
  vpc_config: {
    subnets: ["NonEmptyString"], # required
    security_groups: ["NonEmptyString"],
    assign_public_ip: false,
  },
  compute: {
    simulation_unit_limit: 1,
  },
}

Constant Summary collapse

SENSITIVE =
[]

Instance Attribute Summary collapse

Instance Attribute Details

#client_request_tokenString

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

A suitable default value is auto-generated. You should normally not need to pass this option.

Returns:

  • (String)


1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
# File 'gems/aws-sdk-robomaker/lib/aws-sdk-robomaker/types.rb', line 1156

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

#computeTypes::Compute

Compute information for the simulation job.

Returns:



1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
# File 'gems/aws-sdk-robomaker/lib/aws-sdk-robomaker/types.rb', line 1156

class CreateSimulationJobRequest < Struct.new(
  :client_request_token,
  :output_location,
  :logging_config,
  :max_job_duration_in_seconds,
  :iam_role,
  :failure_behavior,
  :robot_applications,
  :simulation_applications,
  :data_sources,
  :tags,
  :vpc_config,
  :compute)
  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:



1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
# File 'gems/aws-sdk-robomaker/lib/aws-sdk-robomaker/types.rb', line 1156

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

#failure_behaviorString

The failure behavior the simulation job.

Continue

Restart the simulation job in the same host instance.

Fail

Stop the simulation job and terminate the instance.

Returns:

  • (String)


1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
# File 'gems/aws-sdk-robomaker/lib/aws-sdk-robomaker/types.rb', line 1156

class CreateSimulationJobRequest < Struct.new(
  :client_request_token,
  :output_location,
  :logging_config,
  :max_job_duration_in_seconds,
  :iam_role,
  :failure_behavior,
  :robot_applications,
  :simulation_applications,
  :data_sources,
  :tags,
  :vpc_config,
  :compute)
  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)


1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
# File 'gems/aws-sdk-robomaker/lib/aws-sdk-robomaker/types.rb', line 1156

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

#logging_configTypes::LoggingConfig

The logging configuration.



1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
# File 'gems/aws-sdk-robomaker/lib/aws-sdk-robomaker/types.rb', line 1156

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

#max_job_duration_in_secondsInteger

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.

Returns:

  • (Integer)


1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
# File 'gems/aws-sdk-robomaker/lib/aws-sdk-robomaker/types.rb', line 1156

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

#output_locationTypes::OutputLocation

Location for output files generated by the simulation job.



1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
# File 'gems/aws-sdk-robomaker/lib/aws-sdk-robomaker/types.rb', line 1156

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

#robot_applicationsArray<Types::RobotApplicationConfig>

The robot application to use in the simulation job.

Returns:



1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
# File 'gems/aws-sdk-robomaker/lib/aws-sdk-robomaker/types.rb', line 1156

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

#simulation_applicationsArray<Types::SimulationApplicationConfig>

The simulation application to use in the simulation job.



1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
# File 'gems/aws-sdk-robomaker/lib/aws-sdk-robomaker/types.rb', line 1156

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

#tagsHash<String,String>

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

Returns:

  • (Hash<String,String>)


1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
# File 'gems/aws-sdk-robomaker/lib/aws-sdk-robomaker/types.rb', line 1156

class CreateSimulationJobRequest < Struct.new(
  :client_request_token,
  :output_location,
  :logging_config,
  :max_job_duration_in_seconds,
  :iam_role,
  :failure_behavior,
  :robot_applications,
  :simulation_applications,
  :data_sources,
  :tags,
  :vpc_config,
  :compute)
  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 one subnet ID.

Returns:



1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
# File 'gems/aws-sdk-robomaker/lib/aws-sdk-robomaker/types.rb', line 1156

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