Skip to content

start_experiment

start_experiment(
    client_token: ClientToken,
    experiment_template_id: ExperimentTemplateId,
    *,
    config_overrides: Optional[fisClientConfig] = None,
    experiment_options: Optional[StartExperimentExperimentOptionsInput] = None,
    tags: Optional[TagMap] = None,
) -> StartExperimentResponse

Starts running an experiment from the specified experiment template.

Parameters:

Raises:

Source code in docs_src/capo_fis/_services/fis.py
def start_experiment(
    self,
    client_token: "capo_fis.types.client_token.ClientToken",
    experiment_template_id: "capo_fis.types.experiment_template_id.ExperimentTemplateId",
    *,
    config_overrides: Optional[fisClientConfig] = None,
    experiment_options: Optional[
        "capo_fis.types.start_experiment_experiment_options_input.StartExperimentExperimentOptionsInput"
    ] = None,
    tags: Optional["capo_fis.types.tag_map.TagMap"] = None,
) -> "capo_fis.types.start_experiment_response.StartExperimentResponse":
    """<p>Starts running an experiment from the specified experiment template.</p>

    Args:
        client_token: <p>Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.</p>
        experiment_template_id: <p>The ID of the experiment template.</p>
        experiment_options: <p>The experiment options for running the experiment.</p>
        tags: <p>The tags to apply to the experiment.</p>

    Raises:
        capo_fis.errors.conflict_exception.ConflictException: <p>The request could not be processed because of a conflict.</p>
        capo_fis.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified resource cannot be found.</p>
        capo_fis.errors.service_quota_exceeded_exception.ServiceQuotaExceededException: <p>You have exceeded your service quota.</p>
        capo_fis.errors.validation_exception.ValidationException: <p>The specified input is not valid, or fails to satisfy the constraints for the request.</p>
        capo_fis.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    def _handler(
        req: "OperationRequest[capo_fis.types.start_experiment_request.StartExperimentRequest]",
    ) -> OperationResponse[
        "capo_fis.types.start_experiment_response.StartExperimentResponse"
    ]:
        import capo_fis._operations.fault_injection_simulator.start_experiment

        output, http_response = (
            capo_fis._operations.fault_injection_simulator.start_experiment.start_experiment(
                req.options, req.input
            )
        )
        return OperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("StartExperiment")
    )
    input_: capo_fis.types.start_experiment_request.StartExperimentRequest = {
        "client_token": client_token,
        "experiment_template_id": experiment_template_id,
    }
    if experiment_options is not None:
        input_["experiment_options"] = experiment_options
    if tags is not None:
        input_["tags"] = tags

    response = execute_pipeline(
        OperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    response.response.close()
    return response.output