replaceService method

Future<Service> replaceService(
  1. Service request,
  2. String name, {
  3. String? dryRun,
  4. String? $fields,
})

Replaces a service.

Only the spec and metadata labels and annotations are modifiable. After the Update request, Cloud Run will work to make the 'status' match the requested 'spec'. May provide metadata.resourceVersion to enforce update from last read for optimistic concurrency control.

request - The metadata request object.

Request parameters:

name - Required. The fully qualified name of the service to replace. It can be any of the following forms: * namespaces/{project_id_or_number}/services/{service_name} (only when the endpoint is regional) * projects/{project_id_or_number}/locations/{region}/services/{service_name} * projects/{project_id_or_number}/regions/{region}/services/{service_name} Value must have pattern ^namespaces/\[^/\]+/services/\[^/\]+$.

dryRun - Indicates that the server should validate the request and populate default values without persisting the request. Supported values: all

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

Completes with a Service.

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

  final url_ = 'apis/serving.knative.dev/v1/' + core.Uri.encodeFull('$name');

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