1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`CreateSimulationJob`](crate::operation::create_simulation_job::builders::CreateSimulationJobFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`client_request_token(impl Into<String>)`](crate::operation::create_simulation_job::builders::CreateSimulationJobFluentBuilder::client_request_token) / [`set_client_request_token(Option<String>)`](crate::operation::create_simulation_job::builders::CreateSimulationJobFluentBuilder::set_client_request_token): <p>Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.</p>
/// - [`output_location(OutputLocation)`](crate::operation::create_simulation_job::builders::CreateSimulationJobFluentBuilder::output_location) / [`set_output_location(Option<OutputLocation>)`](crate::operation::create_simulation_job::builders::CreateSimulationJobFluentBuilder::set_output_location): <p>Location for output files generated by the simulation job.</p>
/// - [`logging_config(LoggingConfig)`](crate::operation::create_simulation_job::builders::CreateSimulationJobFluentBuilder::logging_config) / [`set_logging_config(Option<LoggingConfig>)`](crate::operation::create_simulation_job::builders::CreateSimulationJobFluentBuilder::set_logging_config): <p>The logging configuration.</p>
/// - [`max_job_duration_in_seconds(i64)`](crate::operation::create_simulation_job::builders::CreateSimulationJobFluentBuilder::max_job_duration_in_seconds) / [`set_max_job_duration_in_seconds(Option<i64>)`](crate::operation::create_simulation_job::builders::CreateSimulationJobFluentBuilder::set_max_job_duration_in_seconds): <p>The maximum simulation job duration in seconds (up to 14 days or 1,209,600 seconds. When <code>maxJobDurationInSeconds</code> is reached, the simulation job will status will transition to <code>Completed</code>.</p>
/// - [`iam_role(impl Into<String>)`](crate::operation::create_simulation_job::builders::CreateSimulationJobFluentBuilder::iam_role) / [`set_iam_role(Option<String>)`](crate::operation::create_simulation_job::builders::CreateSimulationJobFluentBuilder::set_iam_role): <p>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. </p>
/// - [`failure_behavior(FailureBehavior)`](crate::operation::create_simulation_job::builders::CreateSimulationJobFluentBuilder::failure_behavior) / [`set_failure_behavior(Option<FailureBehavior>)`](crate::operation::create_simulation_job::builders::CreateSimulationJobFluentBuilder::set_failure_behavior): <p>The failure behavior the simulation job.</p> <dl> <dt> Continue </dt> <dd> <p>Leaves the instance running for its maximum timeout duration after a <code>4XX</code> error code.</p> </dd> <dt> Fail </dt> <dd> <p>Stop the simulation job and terminate the instance.</p> </dd> </dl>
/// - [`robot_applications(RobotApplicationConfig)`](crate::operation::create_simulation_job::builders::CreateSimulationJobFluentBuilder::robot_applications) / [`set_robot_applications(Option<Vec<RobotApplicationConfig>>)`](crate::operation::create_simulation_job::builders::CreateSimulationJobFluentBuilder::set_robot_applications): <p>The robot application to use in the simulation job.</p>
/// - [`simulation_applications(SimulationApplicationConfig)`](crate::operation::create_simulation_job::builders::CreateSimulationJobFluentBuilder::simulation_applications) / [`set_simulation_applications(Option<Vec<SimulationApplicationConfig>>)`](crate::operation::create_simulation_job::builders::CreateSimulationJobFluentBuilder::set_simulation_applications): <p>The simulation application to use in the simulation job.</p>
/// - [`data_sources(DataSourceConfig)`](crate::operation::create_simulation_job::builders::CreateSimulationJobFluentBuilder::data_sources) / [`set_data_sources(Option<Vec<DataSourceConfig>>)`](crate::operation::create_simulation_job::builders::CreateSimulationJobFluentBuilder::set_data_sources): <p>Specify data sources to mount read-only files from S3 into your simulation. These files are available under <code>/opt/robomaker/datasources/data_source_name</code>. </p> <note> <p>There is a limit of 100 files and a combined size of 25GB for all <code>DataSourceConfig</code> objects. </p> </note>
/// - [`tags(impl Into<String>, impl Into<String>)`](crate::operation::create_simulation_job::builders::CreateSimulationJobFluentBuilder::tags) / [`set_tags(Option<HashMap<String, String>>)`](crate::operation::create_simulation_job::builders::CreateSimulationJobFluentBuilder::set_tags): <p>A map that contains tag keys and tag values that are attached to the simulation job.</p>
/// - [`vpc_config(VpcConfig)`](crate::operation::create_simulation_job::builders::CreateSimulationJobFluentBuilder::vpc_config) / [`set_vpc_config(Option<VpcConfig>)`](crate::operation::create_simulation_job::builders::CreateSimulationJobFluentBuilder::set_vpc_config): <p>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. </p>
/// - [`compute(Compute)`](crate::operation::create_simulation_job::builders::CreateSimulationJobFluentBuilder::compute) / [`set_compute(Option<Compute>)`](crate::operation::create_simulation_job::builders::CreateSimulationJobFluentBuilder::set_compute): <p>Compute information for the simulation job.</p>
/// - On success, responds with [`CreateSimulationJobOutput`](crate::operation::create_simulation_job::CreateSimulationJobOutput) with field(s):
/// - [`arn(Option<String>)`](crate::operation::create_simulation_job::CreateSimulationJobOutput::arn): <p>The Amazon Resource Name (ARN) of the simulation job.</p>
/// - [`status(Option<SimulationJobStatus>)`](crate::operation::create_simulation_job::CreateSimulationJobOutput::status): <p>The status of the simulation job.</p>
/// - [`last_started_at(Option<DateTime>)`](crate::operation::create_simulation_job::CreateSimulationJobOutput::last_started_at): <p>The time, in milliseconds since the epoch, when the simulation job was last started.</p>
/// - [`last_updated_at(Option<DateTime>)`](crate::operation::create_simulation_job::CreateSimulationJobOutput::last_updated_at): <p>The time, in milliseconds since the epoch, when the simulation job was last updated.</p>
/// - [`failure_behavior(Option<FailureBehavior>)`](crate::operation::create_simulation_job::CreateSimulationJobOutput::failure_behavior): <p>the failure behavior for the simulation job.</p>
/// - [`failure_code(Option<SimulationJobErrorCode>)`](crate::operation::create_simulation_job::CreateSimulationJobOutput::failure_code): <p>The failure code of the simulation job if it failed:</p> <dl> <dt> InternalServiceError </dt> <dd> <p>Internal service error.</p> </dd> <dt> RobotApplicationCrash </dt> <dd> <p>Robot application exited abnormally.</p> </dd> <dt> SimulationApplicationCrash </dt> <dd> <p> Simulation application exited abnormally.</p> </dd> <dt> BadPermissionsRobotApplication </dt> <dd> <p>Robot application bundle could not be downloaded.</p> </dd> <dt> BadPermissionsSimulationApplication </dt> <dd> <p>Simulation application bundle could not be downloaded.</p> </dd> <dt> BadPermissionsS3Output </dt> <dd> <p>Unable to publish outputs to customer-provided S3 bucket.</p> </dd> <dt> BadPermissionsCloudwatchLogs </dt> <dd> <p>Unable to publish logs to customer-provided CloudWatch Logs resource.</p> </dd> <dt> SubnetIpLimitExceeded </dt> <dd> <p>Subnet IP limit exceeded.</p> </dd> <dt> ENILimitExceeded </dt> <dd> <p>ENI limit exceeded.</p> </dd> <dt> BadPermissionsUserCredentials </dt> <dd> <p>Unable to use the Role provided.</p> </dd> <dt> InvalidBundleRobotApplication </dt> <dd> <p>Robot bundle cannot be extracted (invalid format, bundling error, or other issue).</p> </dd> <dt> InvalidBundleSimulationApplication </dt> <dd> <p>Simulation bundle cannot be extracted (invalid format, bundling error, or other issue).</p> </dd> <dt> RobotApplicationVersionMismatchedEtag </dt> <dd> <p>Etag for RobotApplication does not match value during version creation.</p> </dd> <dt> SimulationApplicationVersionMismatchedEtag </dt> <dd> <p>Etag for SimulationApplication does not match value during version creation.</p> </dd> </dl>
/// - [`client_request_token(Option<String>)`](crate::operation::create_simulation_job::CreateSimulationJobOutput::client_request_token): <p>Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.</p>
/// - [`output_location(Option<OutputLocation>)`](crate::operation::create_simulation_job::CreateSimulationJobOutput::output_location): <p>Simulation job output files location.</p>
/// - [`logging_config(Option<LoggingConfig>)`](crate::operation::create_simulation_job::CreateSimulationJobOutput::logging_config): <p>The logging configuration.</p>
/// - [`max_job_duration_in_seconds(i64)`](crate::operation::create_simulation_job::CreateSimulationJobOutput::max_job_duration_in_seconds): <p>The maximum simulation job duration in seconds. </p>
/// - [`simulation_time_millis(i64)`](crate::operation::create_simulation_job::CreateSimulationJobOutput::simulation_time_millis): <p>The simulation job execution duration in milliseconds.</p>
/// - [`iam_role(Option<String>)`](crate::operation::create_simulation_job::CreateSimulationJobOutput::iam_role): <p>The IAM role that allows the simulation job to call the AWS APIs that are specified in its associated policies on your behalf.</p>
/// - [`robot_applications(Option<Vec<RobotApplicationConfig>>)`](crate::operation::create_simulation_job::CreateSimulationJobOutput::robot_applications): <p>The robot application used by the simulation job.</p>
/// - [`simulation_applications(Option<Vec<SimulationApplicationConfig>>)`](crate::operation::create_simulation_job::CreateSimulationJobOutput::simulation_applications): <p>The simulation application used by the simulation job.</p>
/// - [`data_sources(Option<Vec<DataSource>>)`](crate::operation::create_simulation_job::CreateSimulationJobOutput::data_sources): <p>The data sources for the simulation job.</p>
/// - [`tags(Option<HashMap<String, String>>)`](crate::operation::create_simulation_job::CreateSimulationJobOutput::tags): <p>The list of all tags added to the simulation job.</p>
/// - [`vpc_config(Option<VpcConfigResponse>)`](crate::operation::create_simulation_job::CreateSimulationJobOutput::vpc_config): <p>Information about the vpc configuration.</p>
/// - [`compute(Option<ComputeResponse>)`](crate::operation::create_simulation_job::CreateSimulationJobOutput::compute): <p>Compute information for the simulation job.</p>
/// - On failure, responds with [`SdkError<CreateSimulationJobError>`](crate::operation::create_simulation_job::CreateSimulationJobError)
pub fn create_simulation_job(&self) -> crate::operation::create_simulation_job::builders::CreateSimulationJobFluentBuilder {
crate::operation::create_simulation_job::builders::CreateSimulationJobFluentBuilder::new(self.handle.clone())
}
}