updatePipeline method

Future<UpdatePipelineResponse> updatePipeline({
  1. required String pipelineName,
  2. ParallelismConfiguration? parallelismConfiguration,
  3. String? pipelineDefinition,
  4. PipelineDefinitionS3Location? pipelineDefinitionS3Location,
  5. String? pipelineDescription,
  6. String? pipelineDisplayName,
  7. String? roleArn,
})

Updates a pipeline.

May throw ConflictException. May throw ResourceNotFound.

Parameter pipelineName : The name of the pipeline to update.

Parameter parallelismConfiguration : If specified, it applies to all executions of this pipeline by default.

Parameter pipelineDefinition : The JSON pipeline definition.

Parameter pipelineDefinitionS3Location : The location of the pipeline definition stored in Amazon S3. If specified, SageMaker will retrieve the pipeline definition from this location.

Parameter pipelineDescription : The description of the pipeline.

Parameter pipelineDisplayName : The display name of the pipeline.

Parameter roleArn : The Amazon Resource Name (ARN) that the pipeline uses to execute.

Implementation

Future<UpdatePipelineResponse> updatePipeline({
  required String pipelineName,
  ParallelismConfiguration? parallelismConfiguration,
  String? pipelineDefinition,
  PipelineDefinitionS3Location? pipelineDefinitionS3Location,
  String? pipelineDescription,
  String? pipelineDisplayName,
  String? roleArn,
}) async {
  final headers = <String, String>{
    'Content-Type': 'application/x-amz-json-1.1',
    'X-Amz-Target': 'SageMaker.UpdatePipeline'
  };
  final jsonResponse = await _protocol.send(
    method: 'POST',
    requestUri: '/',
    exceptionFnMap: _exceptionFns,
    // TODO queryParams
    headers: headers,
    payload: {
      'PipelineName': pipelineName,
      if (parallelismConfiguration != null)
        'ParallelismConfiguration': parallelismConfiguration,
      if (pipelineDefinition != null)
        'PipelineDefinition': pipelineDefinition,
      if (pipelineDefinitionS3Location != null)
        'PipelineDefinitionS3Location': pipelineDefinitionS3Location,
      if (pipelineDescription != null)
        'PipelineDescription': pipelineDescription,
      if (pipelineDisplayName != null)
        'PipelineDisplayName': pipelineDisplayName,
      if (roleArn != null) 'RoleArn': roleArn,
    },
  );

  return UpdatePipelineResponse.fromJson(jsonResponse.body);
}