update method

Updates an instance only if the necessary resources are available. This method can update only a specific set of instance properties. See Updating a running instance for a list of updatable instance properties.

Throws a http.ClientException if there were problems communicating with the API service. Throws a ServiceException if the API method failed for any reason.

Implementation

Future<Operation> update(UpdateInstanceRequest request) async {
  final url = _endPoint.replace(
    path:
        '/compute/v1/projects/${request.project}/zones/${request.zone}/instances/${request.instance}',
    queryParameters: {
      if (request.discardLocalSsd case final $1?) 'discardLocalSsd': '${$1}',
      'minimalAction': ?request.minimalAction,
      'mostDisruptiveAllowedAction': ?request.mostDisruptiveAllowedAction,
      'requestId': ?request.requestId,
    },
  );
  final response = await _client.put(url, body: request.instanceResource);
  return Operation.fromJson(response);
}