update method
Updates a deployment and all of the resources described by the deployment manifest.
request
- The metadata request object.
Request parameters:
project
- The project ID for this request.
Value must have pattern
(?:(?:\[-a-z0-9\]{1,63}\.)*(?:\[a-z\](?:\[-a-z0-9\]{0,61}\[a-z0-9\])?):)?(?:\[0-9\]{1,19}|(?:\[a-z\](?:\[-a-z0-9\]{0,61}\[a-z0-9\])?))
.
deployment
- The name of the deployment for this request.
Value must have pattern \[a-z\](?:\[-a-z0-9\]{0,61}\[a-z0-9\])?
.
createPolicy
- Sets the policy to use for creating new resources.
Possible string values are:
- "CREATE_OR_ACQUIRE"
- "ACQUIRE"
deletePolicy
- Sets the policy to use for deleting resources.
Possible string values are:
- "DELETE"
- "ABANDON"
preview
- If set to true, updates the deployment and creates and updates
the "shell" resources but does not actually alter or instantiate these
resources. This allows you to preview what your deployment will look like.
You can use this intent to preview how an update would affect your
deployment. You must provide a target.config
with a configuration if
this is set to true. After previewing a deployment, you can deploy your
resources by making a request with the update()
or you can
cancelPreview()
to remove the preview altogether. Note that the
deployment will still exist after you cancel the preview and you must
separately delete this deployment if you want to remove it.
$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> update(
Deployment request,
core.String project,
core.String deployment, {
core.String? createPolicy,
core.String? deletePolicy,
core.bool? preview,
core.String? $fields,
}) async {
final body_ = convert.json.encode(request);
final queryParams_ = <core.String, core.List<core.String>>{
if (createPolicy != null) 'createPolicy': [createPolicy],
if (deletePolicy != null) 'deletePolicy': [deletePolicy],
if (preview != null) 'preview': ['${preview}'],
if ($fields != null) 'fields': [$fields],
};
final url_ = 'deploymentmanager/v2/projects/' +
commons.escapeVariable('$project') +
'/global/deployments/' +
commons.escapeVariable('$deployment');
final response_ = await _requester.request(
url_,
'PUT',
body: body_,
queryParams: queryParams_,
);
return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>);
}