create method

Future<Operation> create(
  1. CreateClusterRequest request,
  2. String projectId,
  3. String zone, {
  4. String? $fields,
})

Creates a cluster, consisting of the specified number and type of Google Compute Engine instances.

By default, the cluster is created in the project's default network. One firewall is added for the cluster. After cluster creation, the Kubelet creates routes for each node to allow the containers on that node to communicate with all other instances in the cluster. Finally, an entry is added to the project's global metadata indicating which CIDR range the cluster is using.

request - The metadata request object.

Request parameters:

projectId - Deprecated. The Google Developers Console project ID or project number. This field has been deprecated and replaced by the parent field.

zone - Deprecated. The name of the Google Compute Engine zone in which the cluster resides. This field has been deprecated and replaced by the parent field.

$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> create(
  CreateClusterRequest request,
  core.String projectId,
  core.String zone, {
  core.String? $fields,
}) async {
  final body_ = convert.json.encode(request);
  final queryParams_ = <core.String, core.List<core.String>>{
    if ($fields != null) 'fields': [$fields],
  };

  final url_ = 'v1/projects/' +
      commons.escapeVariable('$projectId') +
      '/zones/' +
      commons.escapeVariable('$zone') +
      '/clusters';

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