unenroll method

Future<Operation> unenroll(
  1. String name, {
  2. bool? allowMissing,
  3. String? etag,
  4. bool? force,
  5. bool? validateOnly,
  6. String? $fields,
})

Unenrolls an existing bare metal user cluster and its node pools from the Anthos On-Prem API within a given project and location.

Unenrollment removes the Cloud reference to the cluster without modifying the underlying OnPrem Resources. Clusters and node pools will continue to run; however, they will no longer be accessible through the Anthos On-Prem API or its clients.

Request parameters:

name - Required. Name of the bare metal user cluster to be unenrolled. Format: "projects/{project}/locations/{location}/bareMetalClusters/{cluster}" Value must have pattern ^projects/\[^/\]+/locations/\[^/\]+/bareMetalClusters/\[^/\]+$.

allowMissing - If set to true, and the bare metal cluster is not found, the request will succeed but no action will be taken on the server and return a completed LRO.

etag - The current etag of the bare metal Cluster. If an etag is provided and does not match the current etag of the cluster, deletion will be blocked and an ABORTED error will be returned.

force - This is required if the cluster has any associated node pools. When set, any child node pools will also be unenrolled.

validateOnly - Validate the request without actually doing any updates.

$fields - Selector specifying which fields to include in a partial response.

Completes with a Operation.

Completes with a commons.ApiRequestError if the API endpoint returned an error.

If the used http.Client completes with an error when making a REST call, this method will complete with the same error.

Implementation

async.Future<Operation> unenroll(
  core.String name, {
  core.bool? allowMissing,
  core.String? etag,
  core.bool? force,
  core.bool? validateOnly,
  core.String? $fields,
}) async {
  final queryParams_ = <core.String, core.List<core.String>>{
    if (allowMissing != null) 'allowMissing': ['${allowMissing}'],
    if (etag != null) 'etag': [etag],
    if (force != null) 'force': ['${force}'],
    if (validateOnly != null) 'validateOnly': ['${validateOnly}'],
    if ($fields != null) 'fields': [$fields],
  };

  final url_ = 'v1/' + core.Uri.encodeFull('$name') + ':unenroll';

  final response_ = await _requester.request(
    url_,
    'DELETE',
    queryParams: queryParams_,
  );
  return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>);
}