updateComputeEnvironment method

Future<UpdateComputeEnvironmentResponse> updateComputeEnvironment({
  1. required String computeEnvironment,
  2. ComputeResourceUpdate? computeResources,
  3. String? serviceRole,
  4. CEState? state,
})

Updates an AWS Batch compute environment.

May throw ClientException. May throw ServerException.

Parameter computeEnvironment : The name or full Amazon Resource Name (ARN) of the compute environment to update.

Parameter computeResources : Details of the compute resources managed by the compute environment. Required for a managed compute environment. For more information, see Compute Environments in the AWS Batch User Guide.

Parameter serviceRole : The full Amazon Resource Name (ARN) of the IAM role that allows AWS Batch to make calls to other AWS services on your behalf. For more information, see AWS Batch service IAM role in the AWS Batch User Guide.

If your specified role has a path other than /, then you must either specify the full role ARN (this is recommended) or prefix the role name with the path.

Parameter state : The state of the compute environment. Compute environments in the ENABLED state can accept jobs from a queue and scale in or out automatically based on the workload demand of its associated queues.

If the state is ENABLED, then the AWS Batch scheduler can attempt to place jobs from an associated job queue on the compute resources within the environment. If the compute environment is managed, then it can scale its instances out or in automatically, based on the job queue demand.

If the state is DISABLED, then the AWS Batch scheduler doesn't attempt to place jobs within the environment. Jobs in a STARTING or RUNNING state continue to progress normally. Managed compute environments in the DISABLED state don't scale out. However, they scale in to minvCpus value after instances become idle.

Implementation

Future<UpdateComputeEnvironmentResponse> updateComputeEnvironment({
  required String computeEnvironment,
  ComputeResourceUpdate? computeResources,
  String? serviceRole,
  CEState? state,
}) async {
  ArgumentError.checkNotNull(computeEnvironment, 'computeEnvironment');
  final $payload = <String, dynamic>{
    'computeEnvironment': computeEnvironment,
    if (computeResources != null) 'computeResources': computeResources,
    if (serviceRole != null) 'serviceRole': serviceRole,
    if (state != null) 'state': state.toValue(),
  };
  final response = await _protocol.send(
    payload: $payload,
    method: 'POST',
    requestUri: '/v1/updatecomputeenvironment',
    exceptionFnMap: _exceptionFns,
  );
  return UpdateComputeEnvironmentResponse.fromJson(response);
}