create method
- BareMetalNodePool request,
- String parent, {
- String? bareMetalNodePoolId,
- bool? validateOnly,
- String? $fields,
Creates a new bare metal node pool in a given project, location and Bare Metal cluster.
request
- The metadata request object.
Request parameters:
parent
- Required. The parent resource where this node pool will be
created.
projects/{project}/locations/{location}/bareMetalClusters/{cluster}
Value must have pattern
^projects/\[^/\]+/locations/\[^/\]+/bareMetalClusters/\[^/\]+$
.
bareMetalNodePoolId
- The ID to use for the node pool, which will become
the final component of the node pool's resource name. This value must be
up to 63 characters, and valid characters are /a-z-/. The value must not
be permitted to be a UUID (or UUID-like: anything matching
/^[0-9a-f]{8}(-[0-9a-f]{4}){3}-[0-9a-f]{12}$/i).
validateOnly
- If set, only validate the request, but do not actually
create the node pool.
$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(
BareMetalNodePool request,
core.String parent, {
core.String? bareMetalNodePoolId,
core.bool? validateOnly,
core.String? $fields,
}) async {
final body_ = convert.json.encode(request);
final queryParams_ = <core.String, core.List<core.String>>{
if (bareMetalNodePoolId != null)
'bareMetalNodePoolId': [bareMetalNodePoolId],
if (validateOnly != null) 'validateOnly': ['${validateOnly}'],
if ($fields != null) 'fields': [$fields],
};
final url_ = 'v1/' + core.Uri.encodeFull('$parent') + '/bareMetalNodePools';
final response_ = await _requester.request(
url_,
'POST',
body: body_,
queryParams: queryParams_,
);
return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>);
}