diff --git a/discovery/compute-alpha.json b/discovery/compute-alpha.json index e78d01b83f..1ad1e3b938 100644 --- a/discovery/compute-alpha.json +++ b/discovery/compute-alpha.json @@ -2062,7 +2062,7 @@ ] }, "listUsable": { - "description": "Retrieves an aggregated list of all usable backend services in the specified project.", + "description": "Retrieves a list of all usable backend services in the specified project.", "flatPath": "projects/{project}/global/backendServices/listUsable", "httpMethod": "GET", "id": "compute.backendServices.listUsable", @@ -12585,6 +12585,56 @@ "https://www.googleapis.com/auth/compute" ] }, + "reportHostAsFaulty": { + "description": "Mark the host as faulty and try to restart the instance on a new host.", + "flatPath": "projects/{project}/zones/{zone}/instances/{instance}/reportHostAsFaulty", + "httpMethod": "POST", + "id": "compute.instances.reportHostAsFaulty", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "Name of the instance scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/zones/{zone}/instances/{instance}/reportHostAsFaulty", + "request": { + "$ref": "InstancesReportHostAsFaultyRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, "reset": { "description": "Performs a reset on the instance. This is a hard reset. The VM does not do a graceful shutdown. For more information, see Resetting an instance.", "flatPath": "projects/{project}/zones/{zone}/instances/{instance}/reset", @@ -14231,6 +14281,55 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, + "getIamPolicy": { + "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", + "flatPath": "projects/{project}/zones/{zone}/instantSnapshotGroups/{resource}/getIamPolicy", + "httpMethod": "GET", + "id": "compute.instantSnapshotGroups.getIamPolicy", + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "parameters": { + "optionsRequestedPolicyVersion": { + "description": "Requested IAM Policy version.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name or id of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/zones/{zone}/instantSnapshotGroups/{resource}/getIamPolicy", + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, "insert": { "description": "inserts a Zonal InstantSnapshotGroup resource", "flatPath": "projects/{project}/zones/{zone}/instantSnapshotGroups", @@ -14340,184 +14439,275 @@ "https://www.googleapis.com/auth/compute", "https://www.googleapis.com/auth/compute.readonly" ] - } - } - }, - "instantSnapshots": { - "methods": { - "aggregatedList": { - "description": "Retrieves an aggregated list of instantSnapshots. To prevent failure, Google recommends that you set the `returnPartialSuccess` parameter to `true`.", - "flatPath": "projects/{project}/aggregated/instantSnapshots", - "httpMethod": "GET", - "id": "compute.instantSnapshots.aggregatedList", - "parameterOrder": [ - "project" - ], - "parameters": { - "filter": { - "description": "A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. These two types of filter expressions cannot be mixed in one request. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq \"double quoted literal\"` `(fieldname1 eq literal) (fieldname2 ne \"literal\")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name \"instance\", you would use `name ne .*instance`. You cannot combine constraints on multiple fields using regular expressions.", - "location": "query", - "type": "string" - }, - "includeAllScopes": { - "description": "Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included.", - "location": "query", - "type": "boolean" - }, - "maxResults": { - "default": "500", - "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", - "format": "uint32", - "location": "query", - "minimum": "0", - "type": "integer" - }, - "orderBy": { - "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", - "location": "query", - "type": "string" - }, - "pageToken": { - "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", - "location": "query", - "type": "string" - }, - "project": { - "description": "Project ID for this request.", - "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, - "type": "string" - }, - "returnPartialSuccess": { - "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. For example, when partial success behavior is enabled, aggregatedList for a single zone scope either returns all resources in the zone or no resources, with an error code.", - "location": "query", - "type": "boolean" - }, - "serviceProjectNumber": { - "description": "The Shared VPC service project id or service project number for which aggregated list request is invoked for subnetworks list-usable api.", - "format": "int64", - "location": "query", - "type": "string" - } - }, - "path": "projects/{project}/aggregated/instantSnapshots", - "response": { - "$ref": "InstantSnapshotAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "delete": { - "description": "Deletes the specified InstantSnapshot resource. Keep in mind that deleting a single instantSnapshot might not necessarily delete all the data on that instantSnapshot. If any data on the instantSnapshot that is marked for deletion is needed for subsequent instantSnapshots, the data will be moved to the next corresponding instantSnapshot. For more information, see Deleting instantSnapshots.", - "flatPath": "projects/{project}/zones/{zone}/instantSnapshots/{instantSnapshot}", - "httpMethod": "DELETE", - "id": "compute.instantSnapshots.delete", - "parameterOrder": [ - "project", - "zone", - "instantSnapshot" - ], - "parameters": { - "instantSnapshot": { - "description": "Name of the InstantSnapshot resource to delete.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, - "type": "string" - }, - "project": { - "description": "Project ID for this request.", - "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, - "type": "string" - }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", - "location": "query", - "type": "string" - }, - "zone": { - "description": "The name of the zone for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, - "type": "string" - } - }, - "path": "projects/{project}/zones/{zone}/instantSnapshots/{instantSnapshot}", - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "description": "Returns the specified InstantSnapshot resource in the specified zone.", - "flatPath": "projects/{project}/zones/{zone}/instantSnapshots/{instantSnapshot}", - "httpMethod": "GET", - "id": "compute.instantSnapshots.get", - "parameterOrder": [ - "project", - "zone", - "instantSnapshot" - ], - "parameters": { - "instantSnapshot": { - "description": "Name of the InstantSnapshot resource to return.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, - "type": "string" - }, - "project": { - "description": "Project ID for this request.", - "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, - "type": "string" - }, - "zone": { - "description": "The name of the zone for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, - "type": "string" - } - }, - "path": "projects/{project}/zones/{zone}/instantSnapshots/{instantSnapshot}", - "response": { - "$ref": "InstantSnapshot" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] }, - "getIamPolicy": { - "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", - "flatPath": "projects/{project}/zones/{zone}/instantSnapshots/{resource}/getIamPolicy", - "httpMethod": "GET", - "id": "compute.instantSnapshots.getIamPolicy", + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", + "flatPath": "projects/{project}/zones/{zone}/instantSnapshotGroups/{resource}/setIamPolicy", + "httpMethod": "POST", + "id": "compute.instantSnapshotGroups.setIamPolicy", "parameterOrder": [ "project", "zone", "resource" ], "parameters": { - "optionsRequestedPolicyVersion": { - "description": "Requested IAM Policy version.", - "format": "int32", - "location": "query", - "type": "integer" - }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name or id of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/zones/{zone}/instantSnapshotGroups/{resource}/setIamPolicy", + "request": { + "$ref": "ZoneSetPolicyRequest" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "flatPath": "projects/{project}/zones/{zone}/instantSnapshotGroups/{resource}/testIamPermissions", + "httpMethod": "POST", + "id": "compute.instantSnapshotGroups.testIamPermissions", + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name or id of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/zones/{zone}/instantSnapshotGroups/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "instantSnapshots": { + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of instantSnapshots. To prevent failure, Google recommends that you set the `returnPartialSuccess` parameter to `true`.", + "flatPath": "projects/{project}/aggregated/instantSnapshots", + "httpMethod": "GET", + "id": "compute.instantSnapshots.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. These two types of filter expressions cannot be mixed in one request. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq \"double quoted literal\"` `(fieldname1 eq literal) (fieldname2 ne \"literal\")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name \"instance\", you would use `name ne .*instance`. You cannot combine constraints on multiple fields using regular expressions.", + "location": "query", + "type": "string" + }, + "includeAllScopes": { + "description": "Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included.", + "location": "query", + "type": "boolean" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. For example, when partial success behavior is enabled, aggregatedList for a single zone scope either returns all resources in the zone or no resources, with an error code.", + "location": "query", + "type": "boolean" + }, + "serviceProjectNumber": { + "description": "The Shared VPC service project id or service project number for which aggregated list request is invoked for subnetworks list-usable api.", + "format": "int64", + "location": "query", + "type": "string" + } + }, + "path": "projects/{project}/aggregated/instantSnapshots", + "response": { + "$ref": "InstantSnapshotAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "description": "Deletes the specified InstantSnapshot resource. Keep in mind that deleting a single instantSnapshot might not necessarily delete all the data on that instantSnapshot. If any data on the instantSnapshot that is marked for deletion is needed for subsequent instantSnapshots, the data will be moved to the next corresponding instantSnapshot. For more information, see Deleting instantSnapshots.", + "flatPath": "projects/{project}/zones/{zone}/instantSnapshots/{instantSnapshot}", + "httpMethod": "DELETE", + "id": "compute.instantSnapshots.delete", + "parameterOrder": [ + "project", + "zone", + "instantSnapshot" + ], + "parameters": { + "instantSnapshot": { + "description": "Name of the InstantSnapshot resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/zones/{zone}/instantSnapshots/{instantSnapshot}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified InstantSnapshot resource in the specified zone.", + "flatPath": "projects/{project}/zones/{zone}/instantSnapshots/{instantSnapshot}", + "httpMethod": "GET", + "id": "compute.instantSnapshots.get", + "parameterOrder": [ + "project", + "zone", + "instantSnapshot" + ], + "parameters": { + "instantSnapshot": { + "description": "Name of the InstantSnapshot resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/zones/{zone}/instantSnapshots/{instantSnapshot}", + "response": { + "$ref": "InstantSnapshot" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getIamPolicy": { + "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", + "flatPath": "projects/{project}/zones/{zone}/instantSnapshots/{resource}/getIamPolicy", + "httpMethod": "GET", + "id": "compute.instantSnapshots.getIamPolicy", + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "parameters": { + "optionsRequestedPolicyVersion": { + "description": "Requested IAM Policy version.", + "format": "int32", + "location": "query", + "type": "integer" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -23957,7 +24147,7 @@ ] }, "listUsable": { - "description": "Retrieves an aggregated list of all usable backend services in the specified project in the given region.", + "description": "Retrieves a list of all usable backend services in the specified project in the given region.", "flatPath": "projects/{project}/regions/{region}/backendServices/listUsable", "httpMethod": "GET", "id": "compute.regionBackendServices.listUsable", @@ -26471,11 +26661,115 @@ }, "regionInstanceGroupManagerResizeRequests": { "methods": { - "get": { - "description": "Returns all of the details about the specified resize request.", - "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resizeRequests/{resizeRequest}", - "httpMethod": "GET", - "id": "compute.regionInstanceGroupManagerResizeRequests.get", + "cancel": { + "description": "Cancels the specified resize request. Cancelled resize request no longer waits for the resources to be provisioned. Cancel is only possible for requests that are in accepted state.", + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resizeRequests/{resizeRequest}/cancel", + "httpMethod": "POST", + "id": "compute.regionInstanceGroupManagerResizeRequests.cancel", + "parameterOrder": [ + "project", + "region", + "instanceGroupManager", + "resizeRequest" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the managed instance group. Name should conform to RFC1035 or be a resource ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region scoping this request. Name should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "resizeRequest": { + "description": "The name of the resize request to cancel. Name should conform to RFC1035 or be a resource ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resizeRequests/{resizeRequest}/cancel", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "delete": { + "description": "Deletes the specified, inactive resize request. Requests that are still active cannot be deleted. Deleting request does not delete instances that were provisioned previously.", + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resizeRequests/{resizeRequest}", + "httpMethod": "DELETE", + "id": "compute.regionInstanceGroupManagerResizeRequests.delete", + "parameterOrder": [ + "project", + "region", + "instanceGroupManager", + "resizeRequest" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the managed instance group. Name should conform to RFC1035 or be a resource ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region scoping this request. Name should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "resizeRequest": { + "description": "The name of the resize request to delete. Name should conform to RFC1035 or be a resource ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resizeRequests/{resizeRequest}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns all of the details about the specified resize request.", + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resizeRequests/{resizeRequest}", + "httpMethod": "GET", + "id": "compute.regionInstanceGroupManagerResizeRequests.get", "parameterOrder": [ "project", "region", @@ -28633,6 +28927,55 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, + "getIamPolicy": { + "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", + "flatPath": "projects/{project}/regions/{region}/instantSnapshotGroups/{resource}/getIamPolicy", + "httpMethod": "GET", + "id": "compute.regionInstantSnapshotGroups.getIamPolicy", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "optionsRequestedPolicyVersion": { + "description": "Requested IAM Policy version.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name or id of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/instantSnapshotGroups/{resource}/getIamPolicy", + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, "insert": { "description": "creates a Regional InstantSnapshotGroup resource", "flatPath": "projects/{project}/regions/{region}/instantSnapshotGroups", @@ -28742,6 +29085,97 @@ "https://www.googleapis.com/auth/compute", "https://www.googleapis.com/auth/compute.readonly" ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", + "flatPath": "projects/{project}/regions/{region}/instantSnapshotGroups/{resource}/setIamPolicy", + "httpMethod": "POST", + "id": "compute.regionInstantSnapshotGroups.setIamPolicy", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name or id of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/instantSnapshotGroups/{resource}/setIamPolicy", + "request": { + "$ref": "RegionSetPolicyRequest" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "flatPath": "projects/{project}/regions/{region}/instantSnapshotGroups/{resource}/testIamPermissions", + "httpMethod": "POST", + "id": "compute.regionInstantSnapshotGroups.testIamPermissions", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name or id of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/instantSnapshotGroups/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } } }, @@ -33995,6 +34429,125 @@ } } }, + "reservationBlocks": { + "methods": { + "get": { + "description": "Retrieves information about the specified reservation block.", + "flatPath": "projects/{project}/zones/{zone}/reservations/{reservation}/reservationBlocks/{reservationBlock}", + "httpMethod": "GET", + "id": "compute.reservationBlocks.get", + "parameterOrder": [ + "project", + "zone", + "reservation", + "reservationBlock" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "required": true, + "type": "string" + }, + "reservation": { + "description": "The name of the reservation. Name should conform to RFC1035 or be a resource ID.", + "location": "path", + "required": true, + "type": "string" + }, + "reservationBlock": { + "description": "The name of the reservation block. Name should conform to RFC1035 or be a resource ID.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request. Zone name should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/zones/{zone}/reservations/{reservation}/reservationBlocks/{reservationBlock}", + "response": { + "$ref": "ReservationBlocksGetResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "description": "Retrieves a list of reservation blocks under a single reservation.", + "flatPath": "projects/{project}/zones/{zone}/reservations/{reservation}/reservationBlocks", + "httpMethod": "GET", + "id": "compute.reservationBlocks.list", + "parameterOrder": [ + "project", + "zone", + "reservation" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. These two types of filter expressions cannot be mixed in one request. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq \"double quoted literal\"` `(fieldname1 eq literal) (fieldname2 ne \"literal\")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name \"instance\", you would use `name ne .*instance`. You cannot combine constraints on multiple fields using regular expressions.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "required": true, + "type": "string" + }, + "reservation": { + "description": "The name of the reservation. Name should conform to RFC1035 or be a resource ID.", + "location": "path", + "required": true, + "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. For example, when partial success behavior is enabled, aggregatedList for a single zone scope either returns all resources in the zone or no resources, with an error code.", + "location": "query", + "type": "boolean" + }, + "zone": { + "description": "Name of the zone for this request. Zone name should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/zones/{zone}/reservations/{reservation}/reservationBlocks", + "response": { + "$ref": "ReservationBlocksListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, "reservations": { "methods": { "aggregatedList": { @@ -45055,7 +45608,7 @@ } } }, - "revision": "20240820", + "revision": "20240919", "rootUrl": "https://compute.googleapis.com/", "schemas": { "AWSV4Signature": { @@ -46471,6 +47024,11 @@ "description": "[Output Only] Contains output only fields.", "id": "AllocationResourceStatus", "properties": { + "reservationBlockCount": { + "description": "Indicates number of blocks for accelerator optimized family (applicable beyond A3 only).", + "format": "int32", + "type": "integer" + }, "specificSkuAllocation": { "$ref": "AllocationResourceStatusSpecificSKUAllocation", "description": "Allocation Properties of this reservation." @@ -48524,6 +49082,13 @@ "description": "[Output Only] Creation timestamp in RFC3339 text format.", "type": "string" }, + "customMetrics": { + "description": "List of custom metrics that are used for the WEIGHTED_ROUND_ROBIN locality_lb_policy.", + "items": { + "$ref": "BackendServiceCustomMetric" + }, + "type": "array" + }, "customRequestHeaders": { "description": "Headers that the load balancer adds to proxied requests. See [Creating custom headers](https://cloud.google.com/load-balancing/docs/custom-headers).", "items": { @@ -49148,6 +49713,21 @@ }, "type": "object" }, + "BackendServiceCustomMetric": { + "description": "Custom Metrics are used for WEIGHTED_ROUND_ROBIN locality_lb_policy.", + "id": "BackendServiceCustomMetric", + "properties": { + "dryRun": { + "description": "If true, the metric data is not used for load balancing.", + "type": "boolean" + }, + "name": { + "description": "Name of a custom utilization signal. The name must be 1-64 characters long and match the regular expression [a-z]([-_.a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, period, underscore, lowercase letter, or digit, except the last character, which cannot be a dash, period, or underscore. For usage guidelines, see Custom Metrics balancing mode. This field can only be used for a global or regional backend service with the loadBalancingScheme set to EXTERNAL_MANAGED, INTERNAL_MANAGED INTERNAL_SELF_MANAGED.", + "type": "string" + } + }, + "type": "object" + }, "BackendServiceFailoverPolicy": { "description": "For load balancers that have configurable failover: [Internal passthrough Network Load Balancers](https://cloud.google.com/load-balancing/docs/internal/failover-overview) and [external passthrough Network Load Balancers](https://cloud.google.com/load-balancing/docs/network/networklb-failover-overview). On failover or failback, this field indicates whether connection draining will be honored. Google Cloud has a fixed connection draining timeout of 10 minutes. A setting of true terminates existing TCP connections to the active pool during failover and failback, immediately draining traffic. A setting of false allows existing TCP connections to persist, even on VMs no longer in the active pool, for up to the duration of the connection draining timeout (10 minutes).", "id": "BackendServiceFailoverPolicy", @@ -50348,7 +50928,7 @@ }, "locationPolicy": { "$ref": "LocationPolicy", - "description": "Policy for chosing target zone. For more information, see Create VMs in bulk ." + "description": "Policy for choosing target zone. For more information, see Create VMs in bulk." }, "minCount": { "description": "The minimum number of instances to create. If no min_count is specified then count is used as the default value. If min_count instances cannot be created, then no instances will be created and instances already created will be deleted.", @@ -60399,6 +60979,10 @@ ], "type": "string" }, + "multiMig": { + "description": "URL to the multi-MIG that this Managed Instance Group belongs to.", + "type": "string" + }, "name": { "annotations": { "required": [ @@ -64089,6 +64673,42 @@ }, "type": "object" }, + "InstancesReportHostAsFaultyRequest": { + "id": "InstancesReportHostAsFaultyRequest", + "properties": { + "faultReasons": { + "items": { + "$ref": "InstancesReportHostAsFaultyRequestFaultReason" + }, + "type": "array" + } + }, + "type": "object" + }, + "InstancesReportHostAsFaultyRequestFaultReason": { + "id": "InstancesReportHostAsFaultyRequestFaultReason", + "properties": { + "behavior": { + "enum": [ + "BEHAVIOR_UNSPECIFIED", + "PERFORMANCE", + "SILENT_DATA_CORRUPTION", + "UNRECOVERABLE_GPU_ERROR" + ], + "enumDescriptions": [ + "Public reportable behaviors", + "", + "", + "" + ], + "type": "string" + }, + "description": { + "type": "string" + } + }, + "type": "object" + }, "InstancesResumeRequest": { "id": "InstancesResumeRequest", "properties": { @@ -65072,7 +65692,7 @@ "description": "Configuration for enabling Application Aware Interconnect (AAI) on this Cloud Interconnect connection between Google and your on-premises router." }, "availableFeatures": { - "description": "[Output only] List of features available for this Interconnect connection, which can take one of the following values: - MACSEC If present then the Interconnect connection is provisioned on MACsec capable hardware ports. If not present then the Interconnect connection is provisioned on non-MACsec capable ports and MACsec isn't supported and enabling MACsec fails.", + "description": "[Output only] List of features available for this Interconnect connection, which can take one of the following values: - IF_MACSEC If present then the Interconnect connection is provisioned on MACsec capable hardware ports. If not present then the Interconnect connection is provisioned on non-MACsec capable ports and MACsec isn't supported and enabling MACsec fails.", "items": { "enum": [ "IF_MACSEC" @@ -65225,7 +65845,7 @@ "type": "string" }, "requestedFeatures": { - "description": "Optional. List of features requested for this Interconnect connection, which can take one of the following values: - MACSEC If specified then the connection is created on MACsec capable hardware ports. If not specified, the default value is false, which allocates non-MACsec capable ports first if available. This parameter can be provided only with Interconnect INSERT. It isn't valid for Interconnect PATCH.", + "description": "Optional. List of features requested for this Interconnect connection, which can take one of the following values: - IF_MACSEC If specified then the connection is created on MACsec capable hardware ports. If not specified, the default value is false, which allocates non-MACsec capable ports first if available. This parameter can be provided only with Interconnect INSERT. It isn't valid for Interconnect PATCH.", "items": { "enum": [ "IF_MACSEC" @@ -65355,6 +65975,7 @@ "bandwidth": { "description": "Provisioned bandwidth capacity for the interconnect attachment. For attachments of type DEDICATED, the user can set the bandwidth. For attachments of type PARTNER, the Google Partner that is operating the interconnect must set the bandwidth. Output only for PARTNER type, mutable for PARTNER_PROVIDER and DEDICATED, and can take one of the following values: - BPS_50M: 50 Mbit/s - BPS_100M: 100 Mbit/s - BPS_200M: 200 Mbit/s - BPS_300M: 300 Mbit/s - BPS_400M: 400 Mbit/s - BPS_500M: 500 Mbit/s - BPS_1G: 1 Gbit/s - BPS_2G: 2 Gbit/s - BPS_5G: 5 Gbit/s - BPS_10G: 10 Gbit/s - BPS_20G: 20 Gbit/s - BPS_50G: 50 Gbit/s ", "enum": [ + "BPS_100G", "BPS_100M", "BPS_10G", "BPS_1G", @@ -65369,6 +65990,7 @@ "BPS_5G" ], "enumDescriptions": [ + "100 Gbit/s", "100 Mbit/s", "10 Gbit/s", "1 Gbit/s", @@ -69404,6 +70026,9 @@ ], "type": "string" }, + "currentActionDetails": { + "$ref": "ManagedInstanceCurrentActionDetails" + }, "id": { "description": "[Output only] The unique identifier for this resource. This field is empty when instance does not exist.", "format": "uint64", @@ -69523,6 +70148,45 @@ }, "type": "object" }, + "ManagedInstanceCurrentActionDetails": { + "id": "ManagedInstanceCurrentActionDetails", + "properties": { + "methodName": { + "type": "string" + }, + "trigger": { + "description": "[Output Only] Details of the current action that the managed instance group has scheduled for the instance. Contains trigger for the current action, and methodName in case it was triggered by API call. Possible values for trigger: - API Any API call. - PROACTIVE_UPDATE Proactive updater scheduled an update on this managed instance. - AUTOSCALING Instance being deleted/created after a decision from the Autoscaler. - REDISTRIBUTION The regional managed instance group is moving instances between zones to restore balance. - STANDBY_REFILL The managed instance group is refilling the Standby Pool (stopped/suspended virtual machines) after scale up. - MAINTENANCE Manual maintenance. - FAILED_CREATION The managed instance group is handling failed instance creation. - INSTANCE_FAILURE The managed instance group is handling instance failure, according to the Instance Lifecycle Policy. - FAILED_HEALTH_CHECK The managed instance group is handling failed health check, according to the Instance Lifecycle Policy. - TERMINATION_TIMESTAMP Instance reached termination time, thus managed instance group stops/deletes it. ", + "enum": [ + "API", + "AUTOSCALING", + "FAILED_CREATION", + "FAILED_HEALTH_CHECK", + "INSTANCE_FAILURE", + "MAINTENANCE", + "NONE", + "PROACTIVE_UPDATE", + "REDISTRIBUTION", + "STANDBY_REFILL", + "TERMINATION_TIMESTAMP" + ], + "enumDescriptions": [ + "Any API call.", + "Instance being deleted/created after a decision from the Autoscaler.", + "The managed instance group is handling failed instance creation.", + "The managed instance group is handling failed health check, according to the Instance Lifecycle Policy.", + "The managed instance group is handling instance failure, according to the Instance Lifecycle Policy.", + "Manual maintenance.", + "Default value, not visible externally.", + "Proactive updater scheduled an update on this managed instance.", + "The regional managed instance group is moving instances between zones to restore balance.", + "The managed instance group is refilling the Standby Pool (stopped/suspended virtual machines) after scale up.", + "Instance reached termination time, thus managed instance group stops/deletes it." + ], + "type": "string" + } + }, + "type": "object" + }, "ManagedInstanceInstanceFlexibilityOverride": { "id": "ManagedInstanceInstanceFlexibilityOverride", "properties": { @@ -81920,6 +82584,20 @@ "description": "Absolute time in future when the reservation will be auto-deleted by Compute Engine. Timestamp is represented in RFC3339 text format.", "type": "string" }, + "deploymentType": { + "description": "Specifies the deployment strategy for this reservation.", + "enum": [ + "DENSE", + "DEPLOYMENT_TYPE_UNSPECIFIED", + "FLEXIBLE" + ], + "enumDescriptions": [ + "Number of deployment blocks, size, and topology is fixed during creation and does not change over time. Deployment will be expressed in terms of blocks.", + "Deployment type is unspecified.", + "Distribution of capacity in blocks is not static and can change over time. This is expected to have more obtainability over DENSE deployment. Deployment will not be expressed in terms of blocks." + ], + "type": "string" + }, "description": { "description": "An optional description of this resource. Provide this property when you create the resource.", "type": "string" @@ -81929,6 +82607,20 @@ "format": "uint64", "type": "string" }, + "instanceTerminationAction": { + "description": "Instance termination action that will be invoked when the reservation is deleted.", + "enum": [ + "DELETE", + "INSTANCE_TERMINATION_ACTION_UNSPECIFIED", + "STOP" + ], + "enumDescriptions": [ + "Delete the VM.", + "Default value. This value is unused.", + "Stop the VM without storing in-memory content. default action." + ], + "type": "string" + }, "kind": { "default": "compute#reservation", "description": "[Output Only] Type of the resource. Always compute#reservations for reservations.", @@ -82206,6 +82898,233 @@ }, "type": "object" }, + "ReservationBlock": { + "description": "Represents a reservation block resource.", + "id": "ReservationBlock", + "properties": { + "count": { + "description": "[Output Only] Specifies the number of resources that are allocated in this block. It indicates the maximum number of VMs that a user can run on this particular block.", + "format": "int32", + "type": "integer" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "inUseCount": { + "description": "[Output Only] Indicates how many instances are in use on this block.", + "format": "int32", + "type": "integer" + }, + "kind": { + "description": "[Output Only] Type of the resource. Always compute#reservationBlock for reservation blocks.", + "type": "string" + }, + "locationPrefix": { + "description": "[Output Only] Obfuscated location where this reservation block physically resides in format /CCCC/GGGG. This matches the tripod specified in the VM topology information. Example: /USEAB1/0101/ is the location prefix in /USEAB1/0101/031/003", + "type": "string" + }, + "name": { + "description": "[Output Only] The name of this reservation block generated by Google Compute Engine. The name must be 1-63 characters long, and comply with RFC1035 @pattern [a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined fully-qualified URL for this resource.", + "type": "string" + }, + "selfLinkWithId": { + "description": "[Output Only] Server-defined URL for this resource with the resource id.", + "type": "string" + }, + "status": { + "description": "[Output Only] Status of the reservation block.", + "enum": [ + "CREATING", + "DELETING", + "INVALID", + "READY" + ], + "enumDescriptions": [ + "Resources are being allocated for the reservation block.", + "Reservation block is currently being deleted.", + "", + "Reservation block has allocated all its resources." + ], + "type": "string" + }, + "zone": { + "description": "[Output Only] Zone in which the reservation block resides.", + "type": "string" + } + }, + "type": "object" + }, + "ReservationBlocksGetResponse": { + "id": "ReservationBlocksGetResponse", + "properties": { + "resource": { + "$ref": "ReservationBlock" + } + }, + "type": "object" + }, + "ReservationBlocksListResponse": { + "description": "A list of reservation blocks under a single reservation.", + "id": "ReservationBlocksListResponse", + "properties": { + "id": { + "description": "Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of reservation block resources.", + "items": { + "$ref": "ReservationBlock" + }, + "type": "array" + }, + "kind": { + "default": "compute#reservationBlock", + "description": "Type of the resource. Always compute#reservationBlock for a list of reservation blocks.", + "type": "string" + }, + "nextPageToken": { + "description": "This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", + "LARGE_DEPLOYMENT_WARNING", + "LIST_OVERHEAD_QUOTA_EXCEED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "A WEIGHTED_MAGLEV backend service is associated with a health check that is not of type HTTP/HTTPS/HTTP2.", + "When deploying a deployment with a exceedingly large number of resources", + "Resource can't be retrieved due to list overhead quota exceed which captures the amount of resources filtered out by user-defined list filter.", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not have an ipv6 interface on the same network as the route.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, "ReservationList": { "id": "ReservationList", "properties": { @@ -84157,6 +85076,10 @@ "RoutePolicy": { "id": "RoutePolicy", "properties": { + "description": { + "description": "An optional description of route policy.", + "type": "string" + }, "fingerprint": { "description": "A fingerprint for the Route Policy being applied to this Router, which is essentially a hash of the Route Policy used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update Route Policy. You must always provide an up-to-date fingerprint hash in order to update or change labels. To see the latest fingerprint, make a getRoutePolicy() request to retrieve a Route Policy.", "format": "byte", @@ -87109,7 +88032,8 @@ "type": "array" }, "cloudArmorConfig": { - "$ref": "SecurityPolicyCloudArmorConfig" + "$ref": "SecurityPolicyCloudArmorConfig", + "deprecated": true }, "creationTimestamp": { "description": "[Output Only] Creation timestamp in RFC3339 text format.", @@ -87123,6 +88047,7 @@ "type": "string" }, "displayName": { + "deprecated": true, "description": "User-provided name of the organization security policy. The name should be unique in the organization in which the security policy is created. This should only be used when SecurityPolicyType is FIREWALL. The name must be 1-63 characters long, and comply with https://www.ietf.org/rfc/rfc1035.txt. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "type": "string" @@ -87171,6 +88096,7 @@ "type": "string" }, "ruleTupleCount": { + "deprecated": true, "description": "[Output Only] Total count of all security policy rule tuples. A security policy can not exceed a set number of tuples.", "format": "int32", "type": "integer" @@ -87427,6 +88353,7 @@ "type": "string" }, "displayName": { + "deprecated": true, "description": "[Output Only] The display name of the security policy of the association.", "type": "string" }, @@ -87464,6 +88391,7 @@ "id": "SecurityPolicyCloudArmorConfig", "properties": { "enableMl": { + "deprecated": true, "description": "If set to true, enables Cloud Armor Machine Learning.", "type": "boolean" } @@ -87678,6 +88606,7 @@ "type": "string" }, "direction": { + "deprecated": true, "description": "The direction in which this rule applies. This field may only be specified when versioned_expr is set to FIREWALL.", "enum": [ "EGRESS", @@ -87690,6 +88619,7 @@ "type": "string" }, "enableLogging": { + "deprecated": true, "description": "Denotes whether to enable logging for a particular rule. If logging is enabled, logs will be exported to the configured export destination in Stackdriver. Logs may be exported to BigQuery or Pub/Sub. Note: you cannot enable logging on \"goto_next\" rules. This field may only be specified when the versioned_expr is set to FIREWALL.", "type": "boolean" }, @@ -87756,11 +88686,13 @@ "type": "string" }, "ruleTupleCount": { + "deprecated": true, "description": "[Output Only] Calculation of the complexity of a single firewall security policy rule.", "format": "int32", "type": "integer" }, "targetResources": { + "deprecated": true, "description": "A list of network resource URLs to which this rule applies. This field allows you to control which network's VMs get this rule. If this field is left blank, all VMs within the organization will receive the rule. This field may only be specified when versioned_expr is set to FIREWALL.", "items": { "type": "string" @@ -87768,6 +88700,7 @@ "type": "array" }, "targetServiceAccounts": { + "deprecated": true, "description": "A list of service accounts indicating the sets of instances that are applied with this rule.", "items": { "type": "string" @@ -87839,6 +88772,7 @@ "id": "SecurityPolicyRuleMatcherConfig", "properties": { "destIpRanges": { + "deprecated": true, "description": "CIDR IP address range. This field may only be specified when versioned_expr is set to FIREWALL.", "items": { "type": "string" @@ -87846,6 +88780,7 @@ "type": "array" }, "destPorts": { + "deprecated": true, "description": "Pairs of IP protocols and ports that the rule should match. This field may only be specified when versioned_expr is set to FIREWALL.", "items": { "$ref": "SecurityPolicyRuleMatcherConfigDestinationPort" @@ -87853,6 +88788,7 @@ "type": "array" }, "layer4Configs": { + "deprecated": true, "description": "Pairs of IP protocols and ports that the rule should match. This field may only be specified when versioned_expr is set to FIREWALL.", "items": { "$ref": "SecurityPolicyRuleMatcherConfigLayer4Config" @@ -87873,10 +88809,12 @@ "id": "SecurityPolicyRuleMatcherConfigDestinationPort", "properties": { "ipProtocol": { + "deprecated": true, "description": "The IP protocol to which this rule applies. The protocol type is required when creating a firewall rule. This value can either be one of the following well known protocol strings (tcp, udp, icmp, esp, ah, ipip, sctp), or the IP protocol number.", "type": "string" }, "ports": { + "deprecated": true, "description": "An optional list of ports to which this rule applies. This field is only applicable for UDP or TCP protocol. Each entry must be either an integer or a range. If not specified, this rule applies to connections through any port. Example inputs include: [\"22\"], [\"80\",\"443\"], and [\"12345-12349\"]. This field may only be specified when versioned_expr is set to FIREWALL.", "items": { "type": "string" @@ -87890,10 +88828,12 @@ "id": "SecurityPolicyRuleMatcherConfigLayer4Config", "properties": { "ipProtocol": { + "deprecated": true, "description": "The IP protocol to which this rule applies. The protocol type is required when creating a firewall rule. This value can either be one of the following well known protocol strings (tcp, udp, icmp, esp, ah, ipip, sctp), or the IP protocol number.", "type": "string" }, "ports": { + "deprecated": true, "description": "An optional list of ports to which this rule applies. This field is only applicable for UDP or TCP protocol. Each entry must be either an integer or a range. If not specified, this rule applies to connections through any port. Example inputs include: [\"22\"], [\"80\",\"443\"], and [\"12345-12349\"]. This field may only be specified when versioned_expr is set to FIREWALL.", "items": { "type": "string" @@ -93287,7 +94227,7 @@ "type": "string" }, "internalIpv6Prefix": { - "description": "[Output Only] The internal IPv6 address range that is assigned to this subnetwork.", + "description": "The internal IPv6 address range that is owned by this subnetwork.", "type": "string" }, "ipCidrRange": { diff --git a/discovery/compute-beta.json b/discovery/compute-beta.json index 87a540b67a..cd2743cf79 100644 --- a/discovery/compute-beta.json +++ b/discovery/compute-beta.json @@ -2007,7 +2007,7 @@ ] }, "listUsable": { - "description": "Retrieves an aggregated list of all usable backend services in the specified project.", + "description": "Retrieves a list of all usable backend services in the specified project.", "flatPath": "projects/{project}/global/backendServices/listUsable", "httpMethod": "GET", "id": "compute.backendServices.listUsable", @@ -22797,7 +22797,7 @@ ] }, "listUsable": { - "description": "Retrieves an aggregated list of all usable backend services in the specified project in the given region.", + "description": "Retrieves a list of all usable backend services in the specified project in the given region.", "flatPath": "projects/{project}/regions/{region}/backendServices/listUsable", "httpMethod": "GET", "id": "compute.regionBackendServices.listUsable", @@ -25057,6 +25057,279 @@ } } }, + "regionInstanceGroupManagerResizeRequests": { + "methods": { + "cancel": { + "description": "Cancels the specified resize request. Cancelled resize request no longer waits for the resources to be provisioned. Cancel is only possible for requests that are in accepted state.", + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resizeRequests/{resizeRequest}/cancel", + "httpMethod": "POST", + "id": "compute.regionInstanceGroupManagerResizeRequests.cancel", + "parameterOrder": [ + "project", + "region", + "instanceGroupManager", + "resizeRequest" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the managed instance group. Name should conform to RFC1035 or be a resource ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region scoping this request. Name should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "resizeRequest": { + "description": "The name of the resize request to cancel. Name should conform to RFC1035 or be a resource ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resizeRequests/{resizeRequest}/cancel", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "delete": { + "description": "Deletes the specified, inactive resize request. Requests that are still active cannot be deleted. Deleting request does not delete instances that were provisioned previously.", + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resizeRequests/{resizeRequest}", + "httpMethod": "DELETE", + "id": "compute.regionInstanceGroupManagerResizeRequests.delete", + "parameterOrder": [ + "project", + "region", + "instanceGroupManager", + "resizeRequest" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the managed instance group. Name should conform to RFC1035 or be a resource ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region scoping this request. Name should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "resizeRequest": { + "description": "The name of the resize request to delete. Name should conform to RFC1035 or be a resource ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resizeRequests/{resizeRequest}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns all of the details about the specified resize request.", + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resizeRequests/{resizeRequest}", + "httpMethod": "GET", + "id": "compute.regionInstanceGroupManagerResizeRequests.get", + "parameterOrder": [ + "project", + "region", + "instanceGroupManager", + "resizeRequest" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the managed instance group. Name should conform to RFC1035 or be a resource ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region scoping this request. Name should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" + }, + "resizeRequest": { + "description": "The name of the resize request. Name should conform to RFC1035 or be a resource ID.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resizeRequests/{resizeRequest}", + "response": { + "$ref": "InstanceGroupManagerResizeRequest" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a new Resize Request that starts provisioning VMs immediately or queues VM creation.", + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resizeRequests", + "httpMethod": "POST", + "id": "compute.regionInstanceGroupManagerResizeRequests.insert", + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "parameters": { + "instanceGroupManager": { + "description": "Name of the managed instance group to which the resize request is scoped. Name should conform to RFC1035 or be a resource ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request. Name should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resizeRequests", + "request": { + "$ref": "InstanceGroupManagerResizeRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of Resize Requests that are contained in the managed instance group.", + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resizeRequests", + "httpMethod": "GET", + "id": "compute.regionInstanceGroupManagerResizeRequests.list", + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. These two types of filter expressions cannot be mixed in one request. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq \"double quoted literal\"` `(fieldname1 eq literal) (fieldname2 ne \"literal\")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name \"instance\", you would use `name ne .*instance`. You cannot combine constraints on multiple fields using regular expressions.", + "location": "query", + "type": "string" + }, + "instanceGroupManager": { + "description": "The name of the managed instance group. The name should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request. Name should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. For example, when partial success behavior is enabled, aggregatedList for a single zone scope either returns all resources in the zone or no resources, with an error code.", + "location": "query", + "type": "boolean" + } + }, + "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resizeRequests", + "response": { + "$ref": "RegionInstanceGroupManagerResizeRequestsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, "regionInstanceGroupManagers": { "methods": { "abandonInstances": { @@ -41911,7 +42184,7 @@ } } }, - "revision": "20240820", + "revision": "20240919", "rootUrl": "https://compute.googleapis.com/", "schemas": { "AWSV4Signature": { @@ -44714,6 +44987,13 @@ "selfLink": { "description": "[Output Only] Server-defined URL for the resource.", "type": "string" + }, + "usedBy": { + "description": "[Output Only] List of resources referencing that backend bucket.", + "items": { + "$ref": "BackendBucketUsedBy" + }, + "type": "array" } }, "type": "object" @@ -45000,6 +45280,16 @@ }, "type": "object" }, + "BackendBucketUsedBy": { + "id": "BackendBucketUsedBy", + "properties": { + "reference": { + "description": "[Output Only] Server-defined URL for UrlMaps referencing that BackendBucket.", + "type": "string" + } + }, + "type": "object" + }, "BackendService": { "description": "Represents a Backend Service resource. A backend service defines how Google Cloud load balancers distribute traffic. The backend service configuration contains a set of values, such as the protocol used to connect to backends, various distribution and session settings, health checks, and timeouts. These settings provide fine-grained control over how your load balancer behaves. Most of the settings have default values that allow for easy configuration if you need to get started quickly. Backend services in Google Compute Engine can be either regionally or globally scoped. * [Global](https://cloud.google.com/compute/docs/reference/rest/beta/backendServices) * [Regional](https://cloud.google.com/compute/docs/reference/rest/beta/regionBackendServices) For more information, see Backend Services.", "id": "BackendService", @@ -46662,7 +46952,7 @@ }, "locationPolicy": { "$ref": "LocationPolicy", - "description": "Policy for chosing target zone. For more information, see Create VMs in bulk ." + "description": "Policy for choosing target zone. For more information, see Create VMs in bulk." }, "minCount": { "description": "The minimum number of instances to create. If no min_count is specified then count is used as the default value. If min_count instances cannot be created, then no instances will be created and instances already created will be deleted.", @@ -55913,6 +56203,10 @@ ], "type": "string" }, + "multiMig": { + "description": "URL to the multi-MIG that this Managed Instance Group belongs to.", + "type": "string" + }, "name": { "annotations": { "required": [ @@ -60202,7 +60496,7 @@ "type": "boolean" }, "availableFeatures": { - "description": "[Output only] List of features available for this Interconnect connection, which can take one of the following values: - MACSEC If present then the Interconnect connection is provisioned on MACsec capable hardware ports. If not present then the Interconnect connection is provisioned on non-MACsec capable ports and MACsec isn't supported and enabling MACsec fails.", + "description": "[Output only] List of features available for this Interconnect connection, which can take one of the following values: - IF_MACSEC If present then the Interconnect connection is provisioned on MACsec capable hardware ports. If not present then the Interconnect connection is provisioned on non-MACsec capable ports and MACsec isn't supported and enabling MACsec fails.", "items": { "enum": [ "IF_MACSEC" @@ -60355,7 +60649,7 @@ "type": "string" }, "requestedFeatures": { - "description": "Optional. List of features requested for this Interconnect connection, which can take one of the following values: - MACSEC If specified then the connection is created on MACsec capable hardware ports. If not specified, the default value is false, which allocates non-MACsec capable ports first if available. This parameter can be provided only with Interconnect INSERT. It isn't valid for Interconnect PATCH.", + "description": "Optional. List of features requested for this Interconnect connection, which can take one of the following values: - IF_MACSEC If specified then the connection is created on MACsec capable hardware ports. If not specified, the default value is false, which allocates non-MACsec capable ports first if available. This parameter can be provided only with Interconnect INSERT. It isn't valid for Interconnect PATCH.", "items": { "enum": [ "IF_MACSEC" @@ -65723,6 +66017,11 @@ "description": "[Output Only] Address allocated from given subnetwork for PSC. This IP address acts as a VIP for a PSC NEG, allowing it to act as an endpoint in L7 PSC-XLB.", "type": "string" }, + "producerPort": { + "description": "The psc producer port is used to connect PSC NEG with specific port on the PSC Producer side; should only be used for the PRIVATE_SERVICE_CONNECT NEG type", + "format": "int32", + "type": "integer" + }, "pscConnectionId": { "description": "[Output Only] The PSC connection id of the PSC Network Endpoint Group Consumer.", "format": "uint64", @@ -73164,6 +73463,167 @@ }, "type": "object" }, + "RegionInstanceGroupManagerResizeRequestsListResponse": { + "id": "RegionInstanceGroupManagerResizeRequestsListResponse", + "properties": { + "etag": { + "type": "string" + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Resize Request resources.", + "items": { + "$ref": "InstanceGroupManagerResizeRequest" + }, + "type": "array" + }, + "kind": { + "default": "compute#regionInstanceGroupManagerResizeRequestList", + "description": "[Output Only] Type of the resource. Always compute#regionInstanceGroupManagerResizeRequestList for a list of Resize Requests.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "unreachables": { + "description": "[Output Only] Unreachable resources. end_interface: MixerListResponseWithEtagBuilder", + "items": { + "type": "string" + }, + "type": "array" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", + "LARGE_DEPLOYMENT_WARNING", + "LIST_OVERHEAD_QUOTA_EXCEED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "A WEIGHTED_MAGLEV backend service is associated with a health check that is not of type HTTP/HTTPS/HTTP2.", + "When deploying a deployment with a exceedingly large number of resources", + "Resource can't be retrieved due to list overhead quota exceed which captures the amount of resources filtered out by user-defined list filter.", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not have an ipv6 interface on the same network as the route.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, "RegionInstanceGroupManagerUpdateInstanceConfigReq": { "description": "RegionInstanceGroupManagers.updatePerInstanceConfigs", "id": "RegionInstanceGroupManagerUpdateInstanceConfigReq", @@ -74078,6 +74538,11 @@ "backendService": { "description": "The full or partial URL to the BackendService resource being mirrored to. The backend service configured for a mirroring policy must reference backends that are of the same type as the original backend service matched in the URL map. Serverless NEG backends are not currently supported as a mirrored backend service. ", "type": "string" + }, + "mirrorPercent": { + "description": "The percentage of requests to be mirrored to `backend_service`.", + "format": "double", + "type": "number" } }, "type": "object" @@ -78755,6 +79220,7 @@ "type": "string" }, "displayName": { + "deprecated": true, "description": "User-provided name of the organization security policy. The name should be unique in the organization in which the security policy is created. This should only be used when SecurityPolicyType is FIREWALL. The name must be 1-63 characters long, and comply with https://www.ietf.org/rfc/rfc1035.txt. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "type": "string" @@ -78803,6 +79269,7 @@ "type": "string" }, "ruleTupleCount": { + "deprecated": true, "description": "[Output Only] Total count of all security policy rule tuples. A security policy can not exceed a set number of tuples.", "format": "int32", "type": "integer" @@ -79057,6 +79524,7 @@ "type": "string" }, "displayName": { + "deprecated": true, "description": "[Output Only] The display name of the security policy of the association.", "type": "string" }, @@ -79287,6 +79755,7 @@ "type": "string" }, "direction": { + "deprecated": true, "description": "The direction in which this rule applies. This field may only be specified when versioned_expr is set to FIREWALL.", "enum": [ "EGRESS", @@ -79299,6 +79768,7 @@ "type": "string" }, "enableLogging": { + "deprecated": true, "description": "Denotes whether to enable logging for a particular rule. If logging is enabled, logs will be exported to the configured export destination in Stackdriver. Logs may be exported to BigQuery or Pub/Sub. Note: you cannot enable logging on \"goto_next\" rules. This field may only be specified when the versioned_expr is set to FIREWALL.", "type": "boolean" }, @@ -79346,11 +79816,13 @@ "type": "string" }, "ruleTupleCount": { + "deprecated": true, "description": "[Output Only] Calculation of the complexity of a single firewall security policy rule.", "format": "int32", "type": "integer" }, "targetResources": { + "deprecated": true, "description": "A list of network resource URLs to which this rule applies. This field allows you to control which network's VMs get this rule. If this field is left blank, all VMs within the organization will receive the rule. This field may only be specified when versioned_expr is set to FIREWALL.", "items": { "type": "string" @@ -79358,6 +79830,7 @@ "type": "array" }, "targetServiceAccounts": { + "deprecated": true, "description": "A list of service accounts indicating the sets of instances that are applied with this rule.", "items": { "type": "string" @@ -79429,6 +79902,7 @@ "id": "SecurityPolicyRuleMatcherConfig", "properties": { "destIpRanges": { + "deprecated": true, "description": "CIDR IP address range. This field may only be specified when versioned_expr is set to FIREWALL.", "items": { "type": "string" @@ -79436,6 +79910,7 @@ "type": "array" }, "layer4Configs": { + "deprecated": true, "description": "Pairs of IP protocols and ports that the rule should match. This field may only be specified when versioned_expr is set to FIREWALL.", "items": { "$ref": "SecurityPolicyRuleMatcherConfigLayer4Config" @@ -79456,10 +79931,12 @@ "id": "SecurityPolicyRuleMatcherConfigLayer4Config", "properties": { "ipProtocol": { + "deprecated": true, "description": "The IP protocol to which this rule applies. The protocol type is required when creating a firewall rule. This value can either be one of the following well known protocol strings (tcp, udp, icmp, esp, ah, ipip, sctp), or the IP protocol number.", "type": "string" }, "ports": { + "deprecated": true, "description": "An optional list of ports to which this rule applies. This field is only applicable for UDP or TCP protocol. Each entry must be either an integer or a range. If not specified, this rule applies to connections through any port. Example inputs include: [\"22\"], [\"80\",\"443\"], and [\"12345-12349\"]. This field may only be specified when versioned_expr is set to FIREWALL.", "items": { "type": "string" @@ -84292,7 +84769,7 @@ "type": "string" }, "internalIpv6Prefix": { - "description": "[Output Only] The internal IPv6 address range that is assigned to this subnetwork.", + "description": "The internal IPv6 address range that is owned by this subnetwork.", "type": "string" }, "ipCidrRange": { diff --git a/discovery/compute-v1.json b/discovery/compute-v1.json index 2f695b78eb..2036743f2c 100644 --- a/discovery/compute-v1.json +++ b/discovery/compute-v1.json @@ -1915,7 +1915,7 @@ ] }, "listUsable": { - "description": "Retrieves an aggregated list of all usable backend services in the specified project.", + "description": "Retrieves a list of all usable backend services in the specified project.", "flatPath": "projects/{project}/global/backendServices/listUsable", "httpMethod": "GET", "id": "compute.backendServices.listUsable", @@ -20638,7 +20638,7 @@ ] }, "listUsable": { - "description": "Retrieves an aggregated list of all usable backend services in the specified project in the given region.", + "description": "Retrieves a list of all usable backend services in the specified project in the given region.", "flatPath": "projects/{project}/regions/{region}/backendServices/listUsable", "httpMethod": "GET", "id": "compute.regionBackendServices.listUsable", @@ -37779,7 +37779,7 @@ } } }, - "revision": "20240820", + "revision": "20240919", "rootUrl": "https://compute.googleapis.com/", "schemas": { "AWSV4Signature": { @@ -40488,6 +40488,13 @@ "selfLink": { "description": "[Output Only] Server-defined URL for the resource.", "type": "string" + }, + "usedBy": { + "description": "[Output Only] List of resources referencing that backend bucket.", + "items": { + "$ref": "BackendBucketUsedBy" + }, + "type": "array" } }, "type": "object" @@ -40774,6 +40781,16 @@ }, "type": "object" }, + "BackendBucketUsedBy": { + "id": "BackendBucketUsedBy", + "properties": { + "reference": { + "description": "[Output Only] Server-defined URL for UrlMaps referencing that BackendBucket.", + "type": "string" + } + }, + "type": "object" + }, "BackendService": { "description": "Represents a Backend Service resource. A backend service defines how Google Cloud load balancers distribute traffic. The backend service configuration contains a set of values, such as the protocol used to connect to backends, various distribution and session settings, health checks, and timeouts. These settings provide fine-grained control over how your load balancer behaves. Most of the settings have default values that allow for easy configuration if you need to get started quickly. Backend services in Google Compute Engine can be either regionally or globally scoped. * [Global](https://cloud.google.com/compute/docs/reference/rest/v1/backendServices) * [Regional](https://cloud.google.com/compute/docs/reference/rest/v1/regionBackendServices) For more information, see Backend Services.", "id": "BackendService", @@ -42291,7 +42308,7 @@ }, "locationPolicy": { "$ref": "LocationPolicy", - "description": "Policy for chosing target zone. For more information, see Create VMs in bulk ." + "description": "Policy for choosing target zone. For more information, see Create VMs in bulk." }, "minCount": { "description": "The minimum number of instances to create. If no min_count is specified then count is used as the default value. If min_count instances cannot be created, then no instances will be created and instances already created will be deleted.", @@ -43183,12 +43200,14 @@ "enum": [ "CONFIDENTIAL_INSTANCE_TYPE_UNSPECIFIED", "SEV", - "SEV_SNP" + "SEV_SNP", + "TDX" ], "enumDescriptions": [ "No type specified. Do not use this value.", "AMD Secure Encrypted Virtualization.", - "AMD Secure Encrypted Virtualization - Secure Nested Paging." + "AMD Secure Encrypted Virtualization - Secure Nested Paging.", + "Intel Trust Domain eXtension." ], "type": "string" }, @@ -47969,6 +47988,7 @@ "SEV_LIVE_MIGRATABLE", "SEV_LIVE_MIGRATABLE_V2", "SEV_SNP_CAPABLE", + "TDX_CAPABLE", "UEFI_COMPATIBLE", "VIRTIO_SCSI_MULTIQUEUE", "WINDOWS" @@ -47985,6 +48005,7 @@ "", "", "", + "", "" ], "type": "string" @@ -55226,7 +55247,7 @@ "type": "boolean" }, "availableFeatures": { - "description": "[Output only] List of features available for this Interconnect connection, which can take one of the following values: - MACSEC If present then the Interconnect connection is provisioned on MACsec capable hardware ports. If not present then the Interconnect connection is provisioned on non-MACsec capable ports and MACsec isn't supported and enabling MACsec fails.", + "description": "[Output only] List of features available for this Interconnect connection, which can take one of the following values: - IF_MACSEC If present then the Interconnect connection is provisioned on MACsec capable hardware ports. If not present then the Interconnect connection is provisioned on non-MACsec capable ports and MACsec isn't supported and enabling MACsec fails.", "items": { "enum": [ "IF_MACSEC" @@ -55379,7 +55400,7 @@ "type": "string" }, "requestedFeatures": { - "description": "Optional. List of features requested for this Interconnect connection, which can take one of the following values: - MACSEC If specified then the connection is created on MACsec capable hardware ports. If not specified, the default value is false, which allocates non-MACsec capable ports first if available. This parameter can be provided only with Interconnect INSERT. It isn't valid for Interconnect PATCH.", + "description": "Optional. List of features requested for this Interconnect connection, which can take one of the following values: - IF_MACSEC If specified then the connection is created on MACsec capable hardware ports. If not specified, the default value is false, which allocates non-MACsec capable ports first if available. This parameter can be provided only with Interconnect INSERT. It isn't valid for Interconnect PATCH.", "items": { "enum": [ "IF_MACSEC" @@ -60158,6 +60179,11 @@ "description": "Metadata defined as annotations on the network endpoint.", "type": "object" }, + "clientDestinationPort": { + "description": "Represents the port number to which PSC consumer sends packets. Only valid for network endpoint groups created with GCE_VM_IP_PORTMAP endpoint type.", + "format": "int32", + "type": "integer" + }, "fqdn": { "description": "Optional fully qualified domain name of network endpoint. This can only be specified when NetworkEndpointGroup.network_endpoint_type is NON_GCP_FQDN_PORT.", "type": "string" @@ -60237,6 +60263,7 @@ "enum": [ "GCE_VM_IP", "GCE_VM_IP_PORT", + "GCE_VM_IP_PORTMAP", "INTERNET_FQDN_PORT", "INTERNET_IP_PORT", "NON_GCP_PRIVATE_IP_PORT", @@ -60246,6 +60273,7 @@ "enumDescriptions": [ "The network endpoint is represented by an IP address.", "The network endpoint is represented by IP address and port pair.", + "The network endpoint is represented by an IP, Port and Client Destination Port.", "The network endpoint is represented by fully qualified domain name and port.", "The network endpoint is represented by an internet IP address and port.", "The network endpoint is represented by an IP address and port. The endpoint belongs to a VM or pod running in a customer's on-premises.", @@ -60656,6 +60684,11 @@ "description": "[Output Only] Address allocated from given subnetwork for PSC. This IP address acts as a VIP for a PSC NEG, allowing it to act as an endpoint in L7 PSC-XLB.", "type": "string" }, + "producerPort": { + "description": "The psc producer port is used to connect PSC NEG with specific port on the PSC Producer side; should only be used for the PRIVATE_SERVICE_CONNECT NEG type", + "format": "int32", + "type": "integer" + }, "pscConnectionId": { "description": "[Output Only] The PSC connection id of the PSC Network Endpoint Group Consumer.", "format": "uint64", @@ -78068,7 +78101,7 @@ "type": "string" }, "internalIpv6Prefix": { - "description": "[Output Only] The internal IPv6 address range that is assigned to this subnetwork.", + "description": "The internal IPv6 address range that is owned by this subnetwork.", "type": "string" }, "ipCidrRange": { diff --git a/src/apis/compute/alpha.ts b/src/apis/compute/alpha.ts index c5233698a5..b157882a33 100644 --- a/src/apis/compute/alpha.ts +++ b/src/apis/compute/alpha.ts @@ -200,6 +200,7 @@ export namespace compute_alpha { regionTargetTcpProxies: Resource$Regiontargettcpproxies; regionUrlMaps: Resource$Regionurlmaps; regionZones: Resource$Regionzones; + reservationBlocks: Resource$Reservationblocks; reservations: Resource$Reservations; resourcePolicies: Resource$Resourcepolicies; routers: Resource$Routers; @@ -371,6 +372,7 @@ export namespace compute_alpha { ); this.regionUrlMaps = new Resource$Regionurlmaps(this.context); this.regionZones = new Resource$Regionzones(this.context); + this.reservationBlocks = new Resource$Reservationblocks(this.context); this.reservations = new Resource$Reservations(this.context); this.resourcePolicies = new Resource$Resourcepolicies(this.context); this.routers = new Resource$Routers(this.context); @@ -860,6 +862,10 @@ export namespace compute_alpha { * [Output Only] Contains output only fields. */ export interface Schema$AllocationResourceStatus { + /** + * Indicates number of blocks for accelerator optimized family (applicable beyond A3 only). + */ + reservationBlockCount?: number | null; /** * Allocation Properties of this reservation. */ @@ -1852,6 +1858,10 @@ export namespace compute_alpha { * [Output Only] Creation timestamp in RFC3339 text format. */ creationTimestamp?: string | null; + /** + * List of custom metrics that are used for the WEIGHTED_ROUND_ROBIN locality_lb_policy. + */ + customMetrics?: Schema$BackendServiceCustomMetric[]; /** * Headers that the load balancer adds to proxied requests. See [Creating custom headers](https://cloud.google.com/load-balancing/docs/custom-headers). */ @@ -2151,6 +2161,19 @@ export namespace compute_alpha { */ trackingMode?: string | null; } + /** + * Custom Metrics are used for WEIGHTED_ROUND_ROBIN locality_lb_policy. + */ + export interface Schema$BackendServiceCustomMetric { + /** + * If true, the metric data is not used for load balancing. + */ + dryRun?: boolean | null; + /** + * Name of a custom utilization signal. The name must be 1-64 characters long and match the regular expression [a-z]([-_.a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, period, underscore, lowercase letter, or digit, except the last character, which cannot be a dash, period, or underscore. For usage guidelines, see Custom Metrics balancing mode. This field can only be used for a global or regional backend service with the loadBalancingScheme set to EXTERNAL_MANAGED, INTERNAL_MANAGED INTERNAL_SELF_MANAGED. + */ + name?: string | null; + } /** * For load balancers that have configurable failover: [Internal passthrough Network Load Balancers](https://cloud.google.com/load-balancing/docs/internal/failover-overview) and [external passthrough Network Load Balancers](https://cloud.google.com/load-balancing/docs/network/networklb-failover-overview). On failover or failback, this field indicates whether connection draining will be honored. Google Cloud has a fixed connection draining timeout of 10 minutes. A setting of true terminates existing TCP connections to the active pool during failover and failback, immediately draining traffic. A setting of false allows existing TCP connections to persist, even on VMs no longer in the active pool, for up to the duration of the connection draining timeout (10 minutes). */ @@ -2683,7 +2706,7 @@ export namespace compute_alpha { */ instanceProperties?: Schema$InstanceProperties; /** - * Policy for chosing target zone. For more information, see Create VMs in bulk . + * Policy for choosing target zone. For more information, see Create VMs in bulk. */ locationPolicy?: Schema$LocationPolicy; /** @@ -7044,6 +7067,10 @@ export namespace compute_alpha { * Pagination behavior of the listManagedInstances API method for this managed instance group. */ listManagedInstancesResults?: string | null; + /** + * URL to the multi-MIG that this Managed Instance Group belongs to. + */ + multiMig?: string | null; /** * The name of the managed instance group. The name must be 1-63 characters long, and comply with RFC1035. */ @@ -8311,6 +8338,13 @@ export namespace compute_alpha { */ resourcePolicies?: string[] | null; } + export interface Schema$InstancesReportHostAsFaultyRequest { + faultReasons?: Schema$InstancesReportHostAsFaultyRequestFaultReason[]; + } + export interface Schema$InstancesReportHostAsFaultyRequestFaultReason { + behavior?: string | null; + description?: string | null; + } export interface Schema$InstancesResumeRequest { /** * Array of disks associated with this instance that are protected with a customer-supplied encryption key. In order to resume the instance, the disk url and its corresponding key must be provided. If the disk is not protected with a customer-supplied encryption key it should not be specified. @@ -8814,7 +8848,7 @@ export namespace compute_alpha { */ applicationAwareInterconnect?: Schema$InterconnectApplicationAwareInterconnect; /** - * [Output only] List of features available for this Interconnect connection, which can take one of the following values: - MACSEC If present then the Interconnect connection is provisioned on MACsec capable hardware ports. If not present then the Interconnect connection is provisioned on non-MACsec capable ports and MACsec isn't supported and enabling MACsec fails. + * [Output only] List of features available for this Interconnect connection, which can take one of the following values: - IF_MACSEC If present then the Interconnect connection is provisioned on MACsec capable hardware ports. If not present then the Interconnect connection is provisioned on non-MACsec capable ports and MACsec isn't supported and enabling MACsec fails. */ availableFeatures?: string[] | null; /** @@ -8910,7 +8944,7 @@ export namespace compute_alpha { */ remoteLocation?: string | null; /** - * Optional. List of features requested for this Interconnect connection, which can take one of the following values: - MACSEC If specified then the connection is created on MACsec capable hardware ports. If not specified, the default value is false, which allocates non-MACsec capable ports first if available. This parameter can be provided only with Interconnect INSERT. It isn't valid for Interconnect PATCH. + * Optional. List of features requested for this Interconnect connection, which can take one of the following values: - IF_MACSEC If specified then the connection is created on MACsec capable hardware ports. If not specified, the default value is false, which allocates non-MACsec capable ports first if available. This parameter can be provided only with Interconnect INSERT. It isn't valid for Interconnect PATCH. */ requestedFeatures?: string[] | null; /** @@ -10624,6 +10658,7 @@ export namespace compute_alpha { * [Output Only] The current action that the managed instance group has scheduled for the instance. Possible values: - NONE The instance is running, and the managed instance group does not have any scheduled actions for this instance. - CREATING The managed instance group is creating this instance. If the group fails to create this instance, it will try again until it is successful. - CREATING_WITHOUT_RETRIES The managed instance group is attempting to create this instance only once. If the group fails to create this instance, it does not try again and the group's targetSize value is decreased instead. - RECREATING The managed instance group is recreating this instance. - DELETING The managed instance group is permanently deleting this instance. - ABANDONING The managed instance group is abandoning this instance. The instance will be removed from the instance group and from any target pools that are associated with this group. - RESTARTING The managed instance group is restarting the instance. - REFRESHING The managed instance group is applying configuration changes to the instance without stopping it. For example, the group can update the target pool list for an instance without stopping that instance. - VERIFYING The managed instance group has created the instance and it is in the process of being verified. */ currentAction?: string | null; + currentActionDetails?: Schema$ManagedInstanceCurrentActionDetails; /** * [Output only] The unique identifier for this resource. This field is empty when instance does not exist. */ @@ -10691,6 +10726,13 @@ export namespace compute_alpha { */ revision?: string | null; } + export interface Schema$ManagedInstanceCurrentActionDetails { + methodName?: string | null; + /** + * [Output Only] Details of the current action that the managed instance group has scheduled for the instance. Contains trigger for the current action, and methodName in case it was triggered by API call. Possible values for trigger: - API Any API call. - PROACTIVE_UPDATE Proactive updater scheduled an update on this managed instance. - AUTOSCALING Instance being deleted/created after a decision from the Autoscaler. - REDISTRIBUTION The regional managed instance group is moving instances between zones to restore balance. - STANDBY_REFILL The managed instance group is refilling the Standby Pool (stopped/suspended virtual machines) after scale up. - MAINTENANCE Manual maintenance. - FAILED_CREATION The managed instance group is handling failed instance creation. - INSTANCE_FAILURE The managed instance group is handling instance failure, according to the Instance Lifecycle Policy. - FAILED_HEALTH_CHECK The managed instance group is handling failed health check, according to the Instance Lifecycle Policy. - TERMINATION_TIMESTAMP Instance reached termination time, thus managed instance group stops/deletes it. + */ + trigger?: string | null; + } export interface Schema$ManagedInstanceInstanceFlexibilityOverride { /** * The machine type to be used for this instance. @@ -14988,6 +15030,10 @@ export namespace compute_alpha { * Absolute time in future when the reservation will be auto-deleted by Compute Engine. Timestamp is represented in RFC3339 text format. */ deleteAtTime?: string | null; + /** + * Specifies the deployment strategy for this reservation. + */ + deploymentType?: string | null; /** * An optional description of this resource. Provide this property when you create the resource. */ @@ -14996,6 +15042,10 @@ export namespace compute_alpha { * [Output Only] The unique identifier for the resource. This identifier is defined by the server. */ id?: string | null; + /** + * Instance termination action that will be invoked when the reservation is deleted. + */ + instanceTerminationAction?: string | null; /** * [Output Only] Type of the resource. Always compute#reservations for reservations. */ @@ -15103,6 +15153,91 @@ export namespace compute_alpha { message?: string; } | null; } + /** + * Represents a reservation block resource. + */ + export interface Schema$ReservationBlock { + /** + * [Output Only] Specifies the number of resources that are allocated in this block. It indicates the maximum number of VMs that a user can run on this particular block. + */ + count?: number | null; + /** + * [Output Only] Creation timestamp in RFC3339 text format. + */ + creationTimestamp?: string | null; + /** + * [Output Only] The unique identifier for the resource. This identifier is defined by the server. + */ + id?: string | null; + /** + * [Output Only] Indicates how many instances are in use on this block. + */ + inUseCount?: number | null; + /** + * [Output Only] Type of the resource. Always compute#reservationBlock for reservation blocks. + */ + kind?: string | null; + /** + * [Output Only] Obfuscated location where this reservation block physically resides in format /CCCC/GGGG. This matches the tripod specified in the VM topology information. Example: /USEAB1/0101/ is the location prefix in /USEAB1/0101/031/003 + */ + locationPrefix?: string | null; + /** + * [Output Only] The name of this reservation block generated by Google Compute Engine. The name must be 1-63 characters long, and comply with RFC1035 @pattern [a-z](?:[-a-z0-9]{0,61\}[a-z0-9])? + */ + name?: string | null; + /** + * [Output Only] Server-defined fully-qualified URL for this resource. + */ + selfLink?: string | null; + /** + * [Output Only] Server-defined URL for this resource with the resource id. + */ + selfLinkWithId?: string | null; + /** + * [Output Only] Status of the reservation block. + */ + status?: string | null; + /** + * [Output Only] Zone in which the reservation block resides. + */ + zone?: string | null; + } + export interface Schema$ReservationBlocksGetResponse { + resource?: Schema$ReservationBlock; + } + /** + * A list of reservation blocks under a single reservation. + */ + export interface Schema$ReservationBlocksListResponse { + /** + * Unique identifier for the resource; defined by the server. + */ + id?: string | null; + /** + * A list of reservation block resources. + */ + items?: Schema$ReservationBlock[]; + /** + * Type of the resource. Always compute#reservationBlock for a list of reservation blocks. + */ + kind?: string | null; + /** + * This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + */ + nextPageToken?: string | null; + /** + * Server-defined URL for this resource. + */ + selfLink?: string | null; + /** + * Informational warning message. + */ + warning?: { + code?: string; + data?: Array<{key?: string; value?: string}>; + message?: string; + } | null; + } export interface Schema$ReservationList { /** * [Output Only] The unique identifier for the resource. This identifier is defined by the server. @@ -15814,6 +15949,10 @@ export namespace compute_alpha { } | null; } export interface Schema$RoutePolicy { + /** + * An optional description of route policy. + */ + description?: string | null; /** * A fingerprint for the Route Policy being applied to this Router, which is essentially a hash of the Route Policy used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update Route Policy. You must always provide an up-to-date fingerprint hash in order to update or change labels. To see the latest fingerprint, make a getRoutePolicy() request to retrieve a Route Policy. */ @@ -19509,7 +19648,7 @@ export namespace compute_alpha { */ id?: string | null; /** - * [Output Only] The internal IPv6 address range that is assigned to this subnetwork. + * The internal IPv6 address range that is owned by this subnetwork. */ internalIpv6Prefix?: string | null; /** @@ -26529,7 +26668,7 @@ export namespace compute_alpha { } /** - * Retrieves an aggregated list of all usable backend services in the specified project. + * Retrieves a list of all usable backend services in the specified project. * * @param params - Parameters for request * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. @@ -50474,6 +50613,94 @@ export namespace compute_alpha { } } + /** + * Mark the host as faulty and try to restart the instance on a new host. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + reportHostAsFaulty( + params: Params$Resource$Instances$Reporthostasfaulty, + options: StreamMethodOptions + ): GaxiosPromise; + reportHostAsFaulty( + params?: Params$Resource$Instances$Reporthostasfaulty, + options?: MethodOptions + ): GaxiosPromise; + reportHostAsFaulty( + params: Params$Resource$Instances$Reporthostasfaulty, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + reportHostAsFaulty( + params: Params$Resource$Instances$Reporthostasfaulty, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + reportHostAsFaulty( + params: Params$Resource$Instances$Reporthostasfaulty, + callback: BodyResponseCallback + ): void; + reportHostAsFaulty(callback: BodyResponseCallback): void; + reportHostAsFaulty( + paramsOrCallback?: + | Params$Resource$Instances$Reporthostasfaulty + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Instances$Reporthostasfaulty; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$Reporthostasfaulty; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/reportHostAsFaulty' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instance'], + pathParams: ['instance', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + /** * Performs a reset on the instance. This is a hard reset. The VM does not do a graceful shutdown. For more information, see Resetting an instance. * @@ -53721,6 +53948,30 @@ export namespace compute_alpha { */ requestBody?: Schema$InstancesRemoveResourcePoliciesRequest; } + export interface Params$Resource$Instances$Reporthostasfaulty + extends StandardParameters { + /** + * Name of the instance scoping this request. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstancesReportHostAsFaultyRequest; + } export interface Params$Resource$Instances$Reset extends StandardParameters { /** * Name of the instance scoping this request. @@ -55731,6 +55982,94 @@ export namespace compute_alpha { } } + /** + * Gets the access control policy for a resource. May be empty if no such policy or resource exists. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + getIamPolicy( + params: Params$Resource$Instantsnapshotgroups$Getiampolicy, + options: StreamMethodOptions + ): GaxiosPromise; + getIamPolicy( + params?: Params$Resource$Instantsnapshotgroups$Getiampolicy, + options?: MethodOptions + ): GaxiosPromise; + getIamPolicy( + params: Params$Resource$Instantsnapshotgroups$Getiampolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getIamPolicy( + params: Params$Resource$Instantsnapshotgroups$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getIamPolicy( + params: Params$Resource$Instantsnapshotgroups$Getiampolicy, + callback: BodyResponseCallback + ): void; + getIamPolicy(callback: BodyResponseCallback): void; + getIamPolicy( + paramsOrCallback?: + | Params$Resource$Instantsnapshotgroups$Getiampolicy + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Instantsnapshotgroups$Getiampolicy; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instantsnapshotgroups$Getiampolicy; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/alpha/projects/{project}/zones/{zone}/instantSnapshotGroups/{resource}/getIamPolicy' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'resource'], + pathParams: ['project', 'resource', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + /** * inserts a Zonal InstantSnapshotGroup resource * @@ -55913,6 +56252,189 @@ export namespace compute_alpha { return createAPIRequest(parameters); } } + + /** + * Sets the access control policy on the specified resource. Replaces any existing policy. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + setIamPolicy( + params: Params$Resource$Instantsnapshotgroups$Setiampolicy, + options: StreamMethodOptions + ): GaxiosPromise; + setIamPolicy( + params?: Params$Resource$Instantsnapshotgroups$Setiampolicy, + options?: MethodOptions + ): GaxiosPromise; + setIamPolicy( + params: Params$Resource$Instantsnapshotgroups$Setiampolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setIamPolicy( + params: Params$Resource$Instantsnapshotgroups$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setIamPolicy( + params: Params$Resource$Instantsnapshotgroups$Setiampolicy, + callback: BodyResponseCallback + ): void; + setIamPolicy(callback: BodyResponseCallback): void; + setIamPolicy( + paramsOrCallback?: + | Params$Resource$Instantsnapshotgroups$Setiampolicy + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Instantsnapshotgroups$Setiampolicy; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instantsnapshotgroups$Setiampolicy; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/alpha/projects/{project}/zones/{zone}/instantSnapshotGroups/{resource}/setIamPolicy' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'resource'], + pathParams: ['project', 'resource', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Returns permissions that a caller has on the specified resource. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + testIamPermissions( + params: Params$Resource$Instantsnapshotgroups$Testiampermissions, + options: StreamMethodOptions + ): GaxiosPromise; + testIamPermissions( + params?: Params$Resource$Instantsnapshotgroups$Testiampermissions, + options?: MethodOptions + ): GaxiosPromise; + testIamPermissions( + params: Params$Resource$Instantsnapshotgroups$Testiampermissions, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Instantsnapshotgroups$Testiampermissions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Instantsnapshotgroups$Testiampermissions, + callback: BodyResponseCallback + ): void; + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( + paramsOrCallback?: + | Params$Resource$Instantsnapshotgroups$Testiampermissions + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | GaxiosPromise + | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Instantsnapshotgroups$Testiampermissions; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instantsnapshotgroups$Testiampermissions; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/alpha/projects/{project}/zones/{zone}/instantSnapshotGroups/{resource}/testIamPermissions' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'resource'], + pathParams: ['project', 'resource', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } } export interface Params$Resource$Instantsnapshotgroups$Delete @@ -55949,6 +56471,25 @@ export namespace compute_alpha { */ zone?: string; } + export interface Params$Resource$Instantsnapshotgroups$Getiampolicy + extends StandardParameters { + /** + * Requested IAM Policy version. + */ + optionsRequestedPolicyVersion?: number; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } export interface Params$Resource$Instantsnapshotgroups$Insert extends StandardParameters { /** @@ -56004,6 +56545,46 @@ export namespace compute_alpha { */ zone?: string; } + export interface Params$Resource$Instantsnapshotgroups$Setiampolicy + extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$ZoneSetPolicyRequest; + } + export interface Params$Resource$Instantsnapshotgroups$Testiampermissions + extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$TestPermissionsRequest; + } export class Resource$Instantsnapshots { context: APIRequestContext; @@ -79127,7 +79708,7 @@ export namespace compute_alpha { } /** - * Retrieves an aggregated list of all usable backend services in the specified project in the given region. + * Retrieves a list of all usable backend services in the specified project in the given region. * * @param params - Parameters for request * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. @@ -84926,6 +85507,204 @@ export namespace compute_alpha { this.context = context; } + /** + * Cancels the specified resize request. Cancelled resize request no longer waits for the resources to be provisioned. Cancel is only possible for requests that are in accepted state. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + cancel( + params: Params$Resource$Regioninstancegroupmanagerresizerequests$Cancel, + options: StreamMethodOptions + ): GaxiosPromise; + cancel( + params?: Params$Resource$Regioninstancegroupmanagerresizerequests$Cancel, + options?: MethodOptions + ): GaxiosPromise; + cancel( + params: Params$Resource$Regioninstancegroupmanagerresizerequests$Cancel, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + cancel( + params: Params$Resource$Regioninstancegroupmanagerresizerequests$Cancel, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + cancel( + params: Params$Resource$Regioninstancegroupmanagerresizerequests$Cancel, + callback: BodyResponseCallback + ): void; + cancel(callback: BodyResponseCallback): void; + cancel( + paramsOrCallback?: + | Params$Resource$Regioninstancegroupmanagerresizerequests$Cancel + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Regioninstancegroupmanagerresizerequests$Cancel; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Regioninstancegroupmanagerresizerequests$Cancel; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/alpha/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resizeRequests/{resizeRequest}/cancel' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: [ + 'project', + 'region', + 'instanceGroupManager', + 'resizeRequest', + ], + pathParams: [ + 'instanceGroupManager', + 'project', + 'region', + 'resizeRequest', + ], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes the specified, inactive resize request. Requests that are still active cannot be deleted. Deleting request does not delete instances that were provisioned previously. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + delete( + params: Params$Resource$Regioninstancegroupmanagerresizerequests$Delete, + options: StreamMethodOptions + ): GaxiosPromise; + delete( + params?: Params$Resource$Regioninstancegroupmanagerresizerequests$Delete, + options?: MethodOptions + ): GaxiosPromise; + delete( + params: Params$Resource$Regioninstancegroupmanagerresizerequests$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Regioninstancegroupmanagerresizerequests$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Regioninstancegroupmanagerresizerequests$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Regioninstancegroupmanagerresizerequests$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Regioninstancegroupmanagerresizerequests$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Regioninstancegroupmanagerresizerequests$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/alpha/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resizeRequests/{resizeRequest}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: [ + 'project', + 'region', + 'instanceGroupManager', + 'resizeRequest', + ], + pathParams: [ + 'instanceGroupManager', + 'project', + 'region', + 'resizeRequest', + ], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + /** * Returns all of the details about the specified resize request. * @@ -85222,6 +86001,52 @@ export namespace compute_alpha { } } + export interface Params$Resource$Regioninstancegroupmanagerresizerequests$Cancel + extends StandardParameters { + /** + * The name of the managed instance group. Name should conform to RFC1035 or be a resource ID. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region scoping this request. Name should conform to RFC1035. + */ + region?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * The name of the resize request to cancel. Name should conform to RFC1035 or be a resource ID. + */ + resizeRequest?: string; + } + export interface Params$Resource$Regioninstancegroupmanagerresizerequests$Delete + extends StandardParameters { + /** + * The name of the managed instance group. Name should conform to RFC1035 or be a resource ID. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region scoping this request. Name should conform to RFC1035. + */ + region?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * The name of the resize request to delete. Name should conform to RFC1035 or be a resource ID. + */ + resizeRequest?: string; + } export interface Params$Resource$Regioninstancegroupmanagerresizerequests$Get extends StandardParameters { /** @@ -89779,6 +90604,94 @@ export namespace compute_alpha { } } + /** + * Gets the access control policy for a resource. May be empty if no such policy or resource exists. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + getIamPolicy( + params: Params$Resource$Regioninstantsnapshotgroups$Getiampolicy, + options: StreamMethodOptions + ): GaxiosPromise; + getIamPolicy( + params?: Params$Resource$Regioninstantsnapshotgroups$Getiampolicy, + options?: MethodOptions + ): GaxiosPromise; + getIamPolicy( + params: Params$Resource$Regioninstantsnapshotgroups$Getiampolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getIamPolicy( + params: Params$Resource$Regioninstantsnapshotgroups$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getIamPolicy( + params: Params$Resource$Regioninstantsnapshotgroups$Getiampolicy, + callback: BodyResponseCallback + ): void; + getIamPolicy(callback: BodyResponseCallback): void; + getIamPolicy( + paramsOrCallback?: + | Params$Resource$Regioninstantsnapshotgroups$Getiampolicy + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Regioninstantsnapshotgroups$Getiampolicy; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regioninstantsnapshotgroups$Getiampolicy; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/alpha/projects/{project}/regions/{region}/instantSnapshotGroups/{resource}/getIamPolicy' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + /** * creates a Regional InstantSnapshotGroup resource * @@ -89961,6 +90874,190 @@ export namespace compute_alpha { return createAPIRequest(parameters); } } + + /** + * Sets the access control policy on the specified resource. Replaces any existing policy. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + setIamPolicy( + params: Params$Resource$Regioninstantsnapshotgroups$Setiampolicy, + options: StreamMethodOptions + ): GaxiosPromise; + setIamPolicy( + params?: Params$Resource$Regioninstantsnapshotgroups$Setiampolicy, + options?: MethodOptions + ): GaxiosPromise; + setIamPolicy( + params: Params$Resource$Regioninstantsnapshotgroups$Setiampolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setIamPolicy( + params: Params$Resource$Regioninstantsnapshotgroups$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setIamPolicy( + params: Params$Resource$Regioninstantsnapshotgroups$Setiampolicy, + callback: BodyResponseCallback + ): void; + setIamPolicy(callback: BodyResponseCallback): void; + setIamPolicy( + paramsOrCallback?: + | Params$Resource$Regioninstantsnapshotgroups$Setiampolicy + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Regioninstantsnapshotgroups$Setiampolicy; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regioninstantsnapshotgroups$Setiampolicy; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/alpha/projects/{project}/regions/{region}/instantSnapshotGroups/{resource}/setIamPolicy' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Returns permissions that a caller has on the specified resource. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + testIamPermissions( + params: Params$Resource$Regioninstantsnapshotgroups$Testiampermissions, + options: StreamMethodOptions + ): GaxiosPromise; + testIamPermissions( + params?: Params$Resource$Regioninstantsnapshotgroups$Testiampermissions, + options?: MethodOptions + ): GaxiosPromise; + testIamPermissions( + params: Params$Resource$Regioninstantsnapshotgroups$Testiampermissions, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Regioninstantsnapshotgroups$Testiampermissions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Regioninstantsnapshotgroups$Testiampermissions, + callback: BodyResponseCallback + ): void; + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( + paramsOrCallback?: + | Params$Resource$Regioninstantsnapshotgroups$Testiampermissions + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | GaxiosPromise + | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Regioninstantsnapshotgroups$Testiampermissions; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Regioninstantsnapshotgroups$Testiampermissions; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/alpha/projects/{project}/regions/{region}/instantSnapshotGroups/{resource}/testIamPermissions' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } } export interface Params$Resource$Regioninstantsnapshotgroups$Delete @@ -89997,6 +91094,25 @@ export namespace compute_alpha { */ region?: string; } + export interface Params$Resource$Regioninstantsnapshotgroups$Getiampolicy + extends StandardParameters { + /** + * Requested IAM Policy version. + */ + optionsRequestedPolicyVersion?: number; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region for this request. + */ + region?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + } export interface Params$Resource$Regioninstantsnapshotgroups$Insert extends StandardParameters { /** @@ -90052,6 +91168,46 @@ export namespace compute_alpha { */ returnPartialSuccess?: boolean; } + export interface Params$Resource$Regioninstantsnapshotgroups$Setiampolicy + extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region for this request. + */ + region?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$RegionSetPolicyRequest; + } + export interface Params$Resource$Regioninstantsnapshotgroups$Testiampermissions + extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region for this request. + */ + region?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$TestPermissionsRequest; + } export class Resource$Regioninstantsnapshots { context: APIRequestContext; @@ -101920,6 +103076,262 @@ export namespace compute_alpha { returnPartialSuccess?: boolean; } + export class Resource$Reservationblocks { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Retrieves information about the specified reservation block. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + get( + params: Params$Resource$Reservationblocks$Get, + options: StreamMethodOptions + ): GaxiosPromise; + get( + params?: Params$Resource$Reservationblocks$Get, + options?: MethodOptions + ): GaxiosPromise; + get( + params: Params$Resource$Reservationblocks$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Reservationblocks$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Reservationblocks$Get, + callback: BodyResponseCallback + ): void; + get( + callback: BodyResponseCallback + ): void; + get( + paramsOrCallback?: + | Params$Resource$Reservationblocks$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | GaxiosPromise + | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Reservationblocks$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Reservationblocks$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/alpha/projects/{project}/zones/{zone}/reservations/{reservation}/reservationBlocks/{reservationBlock}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'reservation', 'reservationBlock'], + pathParams: ['project', 'reservation', 'reservationBlock', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Retrieves a list of reservation blocks under a single reservation. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + list( + params: Params$Resource$Reservationblocks$List, + options: StreamMethodOptions + ): GaxiosPromise; + list( + params?: Params$Resource$Reservationblocks$List, + options?: MethodOptions + ): GaxiosPromise; + list( + params: Params$Resource$Reservationblocks$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Reservationblocks$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Reservationblocks$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Reservationblocks$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | GaxiosPromise + | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Reservationblocks$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Reservationblocks$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/alpha/projects/{project}/zones/{zone}/reservations/{reservation}/reservationBlocks' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'reservation'], + pathParams: ['project', 'reservation', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + } + + export interface Params$Resource$Reservationblocks$Get + extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the reservation. Name should conform to RFC1035 or be a resource ID. + */ + reservation?: string; + /** + * The name of the reservation block. Name should conform to RFC1035 or be a resource ID. + */ + reservationBlock?: string; + /** + * Name of the zone for this request. Zone name should conform to RFC1035. + */ + zone?: string; + } + export interface Params$Resource$Reservationblocks$List + extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. These two types of filter expressions cannot be mixed in one request. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq "double quoted literal"` `(fieldname1 eq literal) (fieldname2 ne "literal")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name "instance", you would use `name ne .*instance`. You cannot combine constraints on multiple fields using regular expressions. + */ + filter?: string; + /** + * The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the reservation. Name should conform to RFC1035 or be a resource ID. + */ + reservation?: string; + /** + * Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. For example, when partial success behavior is enabled, aggregatedList for a single zone scope either returns all resources in the zone or no resources, with an error code. + */ + returnPartialSuccess?: boolean; + /** + * Name of the zone for this request. Zone name should conform to RFC1035. + */ + zone?: string; + } + export class Resource$Reservations { context: APIRequestContext; constructor(context: APIRequestContext) { diff --git a/src/apis/compute/beta.ts b/src/apis/compute/beta.ts index 8cd21634f5..ca6f9b3b15 100644 --- a/src/apis/compute/beta.ts +++ b/src/apis/compute/beta.ts @@ -174,6 +174,7 @@ export namespace compute_beta { regionDiskTypes: Resource$Regiondisktypes; regionHealthChecks: Resource$Regionhealthchecks; regionHealthCheckServices: Resource$Regionhealthcheckservices; + regionInstanceGroupManagerResizeRequests: Resource$Regioninstancegroupmanagerresizerequests; regionInstanceGroupManagers: Resource$Regioninstancegroupmanagers; regionInstanceGroups: Resource$Regioninstancegroups; regionInstances: Resource$Regioninstances; @@ -310,6 +311,8 @@ export namespace compute_beta { this.regionHealthCheckServices = new Resource$Regionhealthcheckservices( this.context ); + this.regionInstanceGroupManagerResizeRequests = + new Resource$Regioninstancegroupmanagerresizerequests(this.context); this.regionInstanceGroupManagers = new Resource$Regioninstancegroupmanagers(this.context); this.regionInstanceGroups = new Resource$Regioninstancegroups( @@ -1537,6 +1540,10 @@ export namespace compute_beta { * [Output Only] Server-defined URL for the resource. */ selfLink?: string | null; + /** + * [Output Only] List of resources referencing that backend bucket. + */ + usedBy?: Schema$BackendBucketUsedBy[]; } /** * Message containing Cloud CDN configuration for a backend bucket. @@ -1659,6 +1666,12 @@ export namespace compute_beta { message?: string; } | null; } + export interface Schema$BackendBucketUsedBy { + /** + * [Output Only] Server-defined URL for UrlMaps referencing that BackendBucket. + */ + reference?: string | null; + } /** * Represents a Backend Service resource. A backend service defines how Google Cloud load balancers distribute traffic. The backend service configuration contains a set of values, such as the protocol used to connect to backends, various distribution and session settings, health checks, and timeouts. These settings provide fine-grained control over how your load balancer behaves. Most of the settings have default values that allow for easy configuration if you need to get started quickly. Backend services in Google Compute Engine can be either regionally or globally scoped. * [Global](https://cloud.google.com/compute/docs/reference/rest/beta/backendServices) * [Regional](https://cloud.google.com/compute/docs/reference/rest/beta/regionBackendServices) For more information, see Backend Services. */ @@ -2397,7 +2410,7 @@ export namespace compute_beta { */ instanceProperties?: Schema$InstanceProperties; /** - * Policy for chosing target zone. For more information, see Create VMs in bulk . + * Policy for choosing target zone. For more information, see Create VMs in bulk. */ locationPolicy?: Schema$LocationPolicy; /** @@ -6401,6 +6414,10 @@ export namespace compute_beta { * Pagination behavior of the listManagedInstances API method for this managed instance group. */ listManagedInstancesResults?: string | null; + /** + * URL to the multi-MIG that this Managed Instance Group belongs to. + */ + multiMig?: string | null; /** * The name of the managed instance group. The name must be 1-63 characters long, and comply with RFC1035. */ @@ -7946,7 +7963,7 @@ export namespace compute_beta { */ adminEnabled?: boolean | null; /** - * [Output only] List of features available for this Interconnect connection, which can take one of the following values: - MACSEC If present then the Interconnect connection is provisioned on MACsec capable hardware ports. If not present then the Interconnect connection is provisioned on non-MACsec capable ports and MACsec isn't supported and enabling MACsec fails. + * [Output only] List of features available for this Interconnect connection, which can take one of the following values: - IF_MACSEC If present then the Interconnect connection is provisioned on MACsec capable hardware ports. If not present then the Interconnect connection is provisioned on non-MACsec capable ports and MACsec isn't supported and enabling MACsec fails. */ availableFeatures?: string[] | null; /** @@ -8042,7 +8059,7 @@ export namespace compute_beta { */ remoteLocation?: string | null; /** - * Optional. List of features requested for this Interconnect connection, which can take one of the following values: - MACSEC If specified then the connection is created on MACsec capable hardware ports. If not specified, the default value is false, which allocates non-MACsec capable ports first if available. This parameter can be provided only with Interconnect INSERT. It isn't valid for Interconnect PATCH. + * Optional. List of features requested for this Interconnect connection, which can take one of the following values: - IF_MACSEC If specified then the connection is created on MACsec capable hardware ports. If not specified, the default value is false, which allocates non-MACsec capable ports first if available. This parameter can be provided only with Interconnect INSERT. It isn't valid for Interconnect PATCH. */ requestedFeatures?: string[] | null; /** @@ -10216,6 +10233,10 @@ export namespace compute_beta { * [Output Only] Address allocated from given subnetwork for PSC. This IP address acts as a VIP for a PSC NEG, allowing it to act as an endpoint in L7 PSC-XLB. */ consumerPscAddress?: string | null; + /** + * The psc producer port is used to connect PSC NEG with specific port on the PSC Producer side; should only be used for the PRIVATE_SERVICE_CONNECT NEG type + */ + producerPort?: number | null; /** * [Output Only] The PSC connection id of the PSC Network Endpoint Group Consumer. */ @@ -12671,6 +12692,41 @@ export namespace compute_beta { */ perInstanceConfigs?: Schema$PerInstanceConfig[]; } + export interface Schema$RegionInstanceGroupManagerResizeRequestsListResponse { + etag?: string | null; + /** + * [Output Only] Unique identifier for the resource; defined by the server. + */ + id?: string | null; + /** + * A list of Resize Request resources. + */ + items?: Schema$InstanceGroupManagerResizeRequest[]; + /** + * [Output Only] Type of the resource. Always compute#regionInstanceGroupManagerResizeRequestList for a list of Resize Requests. + */ + kind?: string | null; + /** + * [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + */ + nextPageToken?: string | null; + /** + * [Output Only] Server-defined URL for this resource. + */ + selfLink?: string | null; + /** + * [Output Only] Unreachable resources. end_interface: MixerListResponseWithEtagBuilder + */ + unreachables?: string[] | null; + /** + * [Output Only] Informational warning message. + */ + warning?: { + code?: string; + data?: Array<{key?: string; value?: string}>; + message?: string; + } | null; + } export interface Schema$RegionInstanceGroupManagersAbandonInstancesRequest { /** * The URLs of one or more instances to abandon. This can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME]. @@ -13002,6 +13058,10 @@ export namespace compute_beta { * The full or partial URL to the BackendService resource being mirrored to. The backend service configured for a mirroring policy must reference backends that are of the same type as the original backend service matched in the URL map. Serverless NEG backends are not currently supported as a mirrored backend service. */ backendService?: string | null; + /** + * The percentage of requests to be mirrored to `backend_service`. + */ + mirrorPercent?: number | null; } /** * Represents a reservation resource. A reservation ensures that capacity is held in a specific zone even if the reserved VMs are not running. For more information, read Reserving zonal resources. @@ -17041,7 +17101,7 @@ export namespace compute_beta { */ id?: string | null; /** - * [Output Only] The internal IPv6 address range that is assigned to this subnetwork. + * The internal IPv6 address range that is owned by this subnetwork. */ internalIpv6Prefix?: string | null; /** @@ -23782,7 +23842,7 @@ export namespace compute_beta { } /** - * Retrieves an aggregated list of all usable backend services in the specified project. + * Retrieves a list of all usable backend services in the specified project. * * @param params - Parameters for request * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. @@ -73786,7 +73846,7 @@ export namespace compute_beta { } /** - * Retrieves an aggregated list of all usable backend services in the specified project in the given region. + * Retrieves a list of all usable backend services in the specified project in the given region. * * @param params - Parameters for request * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. @@ -79007,6 +79067,631 @@ export namespace compute_beta { requestBody?: Schema$TestPermissionsRequest; } + export class Resource$Regioninstancegroupmanagerresizerequests { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Cancels the specified resize request. Cancelled resize request no longer waits for the resources to be provisioned. Cancel is only possible for requests that are in accepted state. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + cancel( + params: Params$Resource$Regioninstancegroupmanagerresizerequests$Cancel, + options: StreamMethodOptions + ): GaxiosPromise; + cancel( + params?: Params$Resource$Regioninstancegroupmanagerresizerequests$Cancel, + options?: MethodOptions + ): GaxiosPromise; + cancel( + params: Params$Resource$Regioninstancegroupmanagerresizerequests$Cancel, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + cancel( + params: Params$Resource$Regioninstancegroupmanagerresizerequests$Cancel, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + cancel( + params: Params$Resource$Regioninstancegroupmanagerresizerequests$Cancel, + callback: BodyResponseCallback + ): void; + cancel(callback: BodyResponseCallback): void; + cancel( + paramsOrCallback?: + | Params$Resource$Regioninstancegroupmanagerresizerequests$Cancel + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Regioninstancegroupmanagerresizerequests$Cancel; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Regioninstancegroupmanagerresizerequests$Cancel; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/beta/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resizeRequests/{resizeRequest}/cancel' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: [ + 'project', + 'region', + 'instanceGroupManager', + 'resizeRequest', + ], + pathParams: [ + 'instanceGroupManager', + 'project', + 'region', + 'resizeRequest', + ], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes the specified, inactive resize request. Requests that are still active cannot be deleted. Deleting request does not delete instances that were provisioned previously. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + delete( + params: Params$Resource$Regioninstancegroupmanagerresizerequests$Delete, + options: StreamMethodOptions + ): GaxiosPromise; + delete( + params?: Params$Resource$Regioninstancegroupmanagerresizerequests$Delete, + options?: MethodOptions + ): GaxiosPromise; + delete( + params: Params$Resource$Regioninstancegroupmanagerresizerequests$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Regioninstancegroupmanagerresizerequests$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Regioninstancegroupmanagerresizerequests$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Regioninstancegroupmanagerresizerequests$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Regioninstancegroupmanagerresizerequests$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Regioninstancegroupmanagerresizerequests$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/beta/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resizeRequests/{resizeRequest}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: [ + 'project', + 'region', + 'instanceGroupManager', + 'resizeRequest', + ], + pathParams: [ + 'instanceGroupManager', + 'project', + 'region', + 'resizeRequest', + ], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Returns all of the details about the specified resize request. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + get( + params: Params$Resource$Regioninstancegroupmanagerresizerequests$Get, + options: StreamMethodOptions + ): GaxiosPromise; + get( + params?: Params$Resource$Regioninstancegroupmanagerresizerequests$Get, + options?: MethodOptions + ): GaxiosPromise; + get( + params: Params$Resource$Regioninstancegroupmanagerresizerequests$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Regioninstancegroupmanagerresizerequests$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Regioninstancegroupmanagerresizerequests$Get, + callback: BodyResponseCallback + ): void; + get( + callback: BodyResponseCallback + ): void; + get( + paramsOrCallback?: + | Params$Resource$Regioninstancegroupmanagerresizerequests$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | GaxiosPromise + | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Regioninstancegroupmanagerresizerequests$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Regioninstancegroupmanagerresizerequests$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/beta/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resizeRequests/{resizeRequest}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: [ + 'project', + 'region', + 'instanceGroupManager', + 'resizeRequest', + ], + pathParams: [ + 'instanceGroupManager', + 'project', + 'region', + 'resizeRequest', + ], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Creates a new Resize Request that starts provisioning VMs immediately or queues VM creation. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + insert( + params: Params$Resource$Regioninstancegroupmanagerresizerequests$Insert, + options: StreamMethodOptions + ): GaxiosPromise; + insert( + params?: Params$Resource$Regioninstancegroupmanagerresizerequests$Insert, + options?: MethodOptions + ): GaxiosPromise; + insert( + params: Params$Resource$Regioninstancegroupmanagerresizerequests$Insert, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + insert( + params: Params$Resource$Regioninstancegroupmanagerresizerequests$Insert, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + insert( + params: Params$Resource$Regioninstancegroupmanagerresizerequests$Insert, + callback: BodyResponseCallback + ): void; + insert(callback: BodyResponseCallback): void; + insert( + paramsOrCallback?: + | Params$Resource$Regioninstancegroupmanagerresizerequests$Insert + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Regioninstancegroupmanagerresizerequests$Insert; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Regioninstancegroupmanagerresizerequests$Insert; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/beta/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resizeRequests' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Retrieves a list of Resize Requests that are contained in the managed instance group. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + list( + params: Params$Resource$Regioninstancegroupmanagerresizerequests$List, + options: StreamMethodOptions + ): GaxiosPromise; + list( + params?: Params$Resource$Regioninstancegroupmanagerresizerequests$List, + options?: MethodOptions + ): GaxiosPromise; + list( + params: Params$Resource$Regioninstancegroupmanagerresizerequests$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Regioninstancegroupmanagerresizerequests$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Regioninstancegroupmanagerresizerequests$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Regioninstancegroupmanagerresizerequests$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | GaxiosPromise + | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Regioninstancegroupmanagerresizerequests$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Regioninstancegroupmanagerresizerequests$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/beta/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resizeRequests' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + } + + export interface Params$Resource$Regioninstancegroupmanagerresizerequests$Cancel + extends StandardParameters { + /** + * The name of the managed instance group. Name should conform to RFC1035 or be a resource ID. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region scoping this request. Name should conform to RFC1035. + */ + region?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * The name of the resize request to cancel. Name should conform to RFC1035 or be a resource ID. + */ + resizeRequest?: string; + } + export interface Params$Resource$Regioninstancegroupmanagerresizerequests$Delete + extends StandardParameters { + /** + * The name of the managed instance group. Name should conform to RFC1035 or be a resource ID. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region scoping this request. Name should conform to RFC1035. + */ + region?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * The name of the resize request to delete. Name should conform to RFC1035 or be a resource ID. + */ + resizeRequest?: string; + } + export interface Params$Resource$Regioninstancegroupmanagerresizerequests$Get + extends StandardParameters { + /** + * The name of the managed instance group. Name should conform to RFC1035 or be a resource ID. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region scoping this request. Name should conform to RFC1035. + */ + region?: string; + /** + * The name of the resize request. Name should conform to RFC1035 or be a resource ID. + */ + resizeRequest?: string; + } + export interface Params$Resource$Regioninstancegroupmanagerresizerequests$Insert + extends StandardParameters { + /** + * Name of the managed instance group to which the resize request is scoped. Name should conform to RFC1035 or be a resource ID. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. Name should conform to RFC1035. + */ + region?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManagerResizeRequest; + } + export interface Params$Resource$Regioninstancegroupmanagerresizerequests$List + extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. These two types of filter expressions cannot be mixed in one request. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq "double quoted literal"` `(fieldname1 eq literal) (fieldname2 ne "literal")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name "instance", you would use `name ne .*instance`. You cannot combine constraints on multiple fields using regular expressions. + */ + filter?: string; + /** + * The name of the managed instance group. The name should conform to RFC1035. + */ + instanceGroupManager?: string; + /** + * The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. Name should conform to RFC1035. + */ + region?: string; + /** + * Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. For example, when partial success behavior is enabled, aggregatedList for a single zone scope either returns all resources in the zone or no resources, with an error code. + */ + returnPartialSuccess?: boolean; + } + export class Resource$Regioninstancegroupmanagers { context: APIRequestContext; constructor(context: APIRequestContext) { diff --git a/src/apis/compute/v1.ts b/src/apis/compute/v1.ts index a118730cd5..4e83e54104 100644 --- a/src/apis/compute/v1.ts +++ b/src/apis/compute/v1.ts @@ -1482,6 +1482,10 @@ export namespace compute_v1 { * [Output Only] Server-defined URL for the resource. */ selfLink?: string | null; + /** + * [Output Only] List of resources referencing that backend bucket. + */ + usedBy?: Schema$BackendBucketUsedBy[]; } /** * Message containing Cloud CDN configuration for a backend bucket. @@ -1604,6 +1608,12 @@ export namespace compute_v1 { message?: string; } | null; } + export interface Schema$BackendBucketUsedBy { + /** + * [Output Only] Server-defined URL for UrlMaps referencing that BackendBucket. + */ + reference?: string | null; + } /** * Represents a Backend Service resource. A backend service defines how Google Cloud load balancers distribute traffic. The backend service configuration contains a set of values, such as the protocol used to connect to backends, various distribution and session settings, health checks, and timeouts. These settings provide fine-grained control over how your load balancer behaves. Most of the settings have default values that allow for easy configuration if you need to get started quickly. Backend services in Google Compute Engine can be either regionally or globally scoped. * [Global](https://cloud.google.com/compute/docs/reference/rest/v1/backendServices) * [Regional](https://cloud.google.com/compute/docs/reference/rest/v1/regionBackendServices) For more information, see Backend Services. */ @@ -2264,7 +2274,7 @@ export namespace compute_v1 { */ instanceProperties?: Schema$InstanceProperties; /** - * Policy for chosing target zone. For more information, see Create VMs in bulk . + * Policy for choosing target zone. For more information, see Create VMs in bulk. */ locationPolicy?: Schema$LocationPolicy; /** @@ -7478,7 +7488,7 @@ export namespace compute_v1 { */ adminEnabled?: boolean | null; /** - * [Output only] List of features available for this Interconnect connection, which can take one of the following values: - MACSEC If present then the Interconnect connection is provisioned on MACsec capable hardware ports. If not present then the Interconnect connection is provisioned on non-MACsec capable ports and MACsec isn't supported and enabling MACsec fails. + * [Output only] List of features available for this Interconnect connection, which can take one of the following values: - IF_MACSEC If present then the Interconnect connection is provisioned on MACsec capable hardware ports. If not present then the Interconnect connection is provisioned on non-MACsec capable ports and MACsec isn't supported and enabling MACsec fails. */ availableFeatures?: string[] | null; /** @@ -7574,7 +7584,7 @@ export namespace compute_v1 { */ remoteLocation?: string | null; /** - * Optional. List of features requested for this Interconnect connection, which can take one of the following values: - MACSEC If specified then the connection is created on MACsec capable hardware ports. If not specified, the default value is false, which allocates non-MACsec capable ports first if available. This parameter can be provided only with Interconnect INSERT. It isn't valid for Interconnect PATCH. + * Optional. List of features requested for this Interconnect connection, which can take one of the following values: - IF_MACSEC If specified then the connection is created on MACsec capable hardware ports. If not specified, the default value is false, which allocates non-MACsec capable ports first if available. This parameter can be provided only with Interconnect INSERT. It isn't valid for Interconnect PATCH. */ requestedFeatures?: string[] | null; /** @@ -9473,6 +9483,10 @@ export namespace compute_v1 { * Metadata defined as annotations on the network endpoint. */ annotations?: {[key: string]: string} | null; + /** + * Represents the port number to which PSC consumer sends packets. Only valid for network endpoint groups created with GCE_VM_IP_PORTMAP endpoint type. + */ + clientDestinationPort?: number | null; /** * Optional fully qualified domain name of network endpoint. This can only be specified when NetworkEndpointGroup.network_endpoint_type is NON_GCP_FQDN_PORT. */ @@ -9687,6 +9701,10 @@ export namespace compute_v1 { * [Output Only] Address allocated from given subnetwork for PSC. This IP address acts as a VIP for a PSC NEG, allowing it to act as an endpoint in L7 PSC-XLB. */ consumerPscAddress?: string | null; + /** + * The psc producer port is used to connect PSC NEG with specific port on the PSC Producer side; should only be used for the PRIVATE_SERVICE_CONNECT NEG type + */ + producerPort?: number | null; /** * [Output Only] The PSC connection id of the PSC Network Endpoint Group Consumer. */ @@ -15972,7 +15990,7 @@ export namespace compute_v1 { */ id?: string | null; /** - * [Output Only] The internal IPv6 address range that is assigned to this subnetwork. + * The internal IPv6 address range that is owned by this subnetwork. */ internalIpv6Prefix?: string | null; /** @@ -22452,7 +22470,7 @@ export namespace compute_v1 { } /** - * Retrieves an aggregated list of all usable backend services in the specified project. + * Retrieves a list of all usable backend services in the specified project. * * @param params - Parameters for request * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. @@ -67049,7 +67067,7 @@ export namespace compute_v1 { } /** - * Retrieves an aggregated list of all usable backend services in the specified project in the given region. + * Retrieves a list of all usable backend services in the specified project in the given region. * * @param params - Parameters for request * @param options - Optionally override request options, such as `url`, `method`, and `encoding`.