updateCluster method
Updates a cluster configuration. You can update the scheduler version, modify scheduler settings, and update accounting configuration for an existing cluster. For more information about updating the scheduler version, see Updating the scheduler version on a cluster in the PCS User Guide.
May throw AccessDeniedException.
May throw ConflictException.
May throw InternalServerException.
May throw ResourceNotFoundException.
May throw ThrottlingException.
May throw ValidationException.
Parameter clusterIdentifier :
The name or ID of the cluster to update.
Parameter clientToken :
A unique, case-sensitive identifier that you provide to ensure the
idempotency of the request. Idempotency ensures that an API request
completes only once. With an idempotent request, if the original request
completes successfully, the subsequent retries with the same client token
return the result from the original successful request and they have no
additional effect. If you don't specify a client token, the CLI and SDK
automatically generate 1 for you.
Parameter scheduler :
The scheduler configuration to update for the cluster. Use this to update
the scheduler version. For more information, see Updating
the scheduler version on a cluster in the PCS User Guide.
Parameter slurmConfiguration :
Additional options related to the Slurm scheduler.
Implementation
Future<UpdateClusterResponse> updateCluster({
required String clusterIdentifier,
String? clientToken,
UpdateSchedulerRequest? scheduler,
UpdateClusterSlurmConfigurationRequest? slurmConfiguration,
}) async {
final headers = <String, String>{
'Content-Type': 'application/x-amz-json-1.0',
'X-Amz-Target': 'AWSParallelComputingService.UpdateCluster'
};
final jsonResponse = await _protocol.send(
method: 'POST',
requestUri: '/',
exceptionFnMap: _exceptionFns,
// TODO queryParams
headers: headers,
payload: {
'clusterIdentifier': clusterIdentifier,
'clientToken': clientToken ?? _s.generateIdempotencyToken(),
if (scheduler != null) 'scheduler': scheduler,
if (slurmConfiguration != null)
'slurmConfiguration': slurmConfiguration,
},
);
return UpdateClusterResponse.fromJson(jsonResponse.body);
}