From 03de26a7fd456962f4275a1adcf78de9665158bd Mon Sep 17 00:00:00 2001 From: Yoshi Automation Bot Date: Wed, 3 Jan 2024 00:24:15 -0800 Subject: [PATCH] feat(all): auto-regenerate discovery clients (#2330) --- chromepolicy/v1/chromepolicy-api.json | 24 +- chromepolicy/v1/chromepolicy-gen.go | 11 + cloudidentity/v1/cloudidentity-api.json | 4 +- cloudidentity/v1/cloudidentity-gen.go | 2 +- compute/v0.alpha/compute-api.json | 272 ++++++- compute/v0.alpha/compute-gen.go | 740 +++++++++++++++--- compute/v0.beta/compute-api.json | 180 ++++- compute/v0.beta/compute-gen.go | 412 ++++++++-- .../v1alpha1/playdeveloperreporting-api.json | 4 +- .../v1alpha1/playdeveloperreporting-gen.go | 2 +- .../v1beta1/playdeveloperreporting-api.json | 4 +- .../v1beta1/playdeveloperreporting-gen.go | 2 +- playintegrity/v1/playintegrity-api.json | 47 +- playintegrity/v1/playintegrity-gen.go | 52 +- securitycenter/v1/securitycenter-api.json | 51 +- securitycenter/v1/securitycenter-gen.go | 64 ++ .../v1beta1/securitycenter-api.json | 51 +- securitycenter/v1beta1/securitycenter-gen.go | 64 ++ .../v1beta2/securitycenter-api.json | 51 +- securitycenter/v1beta2/securitycenter-gen.go | 64 ++ servicenetworking/v1/servicenetworking-gen.go | 2 +- .../v1beta/servicenetworking-gen.go | 2 +- 22 files changed, 1836 insertions(+), 269 deletions(-) diff --git a/chromepolicy/v1/chromepolicy-api.json b/chromepolicy/v1/chromepolicy-api.json index 0a6267d50cd..ac2786025ce 100644 --- a/chromepolicy/v1/chromepolicy-api.json +++ b/chromepolicy/v1/chromepolicy-api.json @@ -557,7 +557,7 @@ } } }, - "revision": "20231127", + "revision": "20240101", "rootUrl": "https://chromepolicy.googleapis.com/", "schemas": { "GoogleChromePolicyVersionsV1AdditionalTargetKeyName": { @@ -1104,6 +1104,28 @@ "readOnly": true, "type": "string" }, + "supportedPlatforms": { + "description": "Output only. List indicates that the policy will only apply to devices/users on these platforms.", + "items": { + "enum": [ + "PLATFORM_UNSPECIFIED", + "CHROME_OS", + "CHROME_BROWSER", + "CHROME_BROWSER_FOR_ANDROID", + "CHROME_BROWSER_FOR_IOS" + ], + "enumDescriptions": [ + "Unspecified platform.", + "ChromeOS.", + "Chrome Browser for OSX/Windows/Linux.", + "Chrome Browser for Android.", + "Chrome Browser for iOS." + ], + "type": "string" + }, + "readOnly": true, + "type": "array" + }, "validTargetResources": { "description": "Output only. Information about applicable target resources for the policy.", "items": { diff --git a/chromepolicy/v1/chromepolicy-gen.go b/chromepolicy/v1/chromepolicy-gen.go index fdd2b69ffbc..d81d8aaf9f3 100644 --- a/chromepolicy/v1/chromepolicy-gen.go +++ b/chromepolicy/v1/chromepolicy-gen.go @@ -1219,6 +1219,17 @@ type GoogleChromePolicyVersionsV1PolicySchema struct { // schema. SupportUri string `json:"supportUri,omitempty"` + // SupportedPlatforms: Output only. List indicates that the policy will + // only apply to devices/users on these platforms. + // + // Possible values: + // "PLATFORM_UNSPECIFIED" - Unspecified platform. + // "CHROME_OS" - ChromeOS. + // "CHROME_BROWSER" - Chrome Browser for OSX/Windows/Linux. + // "CHROME_BROWSER_FOR_ANDROID" - Chrome Browser for Android. + // "CHROME_BROWSER_FOR_IOS" - Chrome Browser for iOS. + SupportedPlatforms []string `json:"supportedPlatforms,omitempty"` + // ValidTargetResources: Output only. Information about applicable // target resources for the policy. // diff --git a/cloudidentity/v1/cloudidentity-api.json b/cloudidentity/v1/cloudidentity-api.json index 32049aa33f1..810c98a7165 100644 --- a/cloudidentity/v1/cloudidentity-api.json +++ b/cloudidentity/v1/cloudidentity-api.json @@ -1990,7 +1990,7 @@ } } }, - "revision": "20231211", + "revision": "20240101", "rootUrl": "https://cloudidentity.googleapis.com/", "schemas": { "AddIdpCredentialOperationMetadata": { @@ -2098,7 +2098,7 @@ "id": "DynamicGroupMetadata", "properties": { "queries": { - "description": "Memberships will be the union of all queries. Only one entry with USER resource is currently supported. Customers can create up to 100 dynamic groups.", + "description": "Memberships will be the union of all queries. Only one entry with USER resource is currently supported. Customers can create up to 500 dynamic groups.", "items": { "$ref": "DynamicGroupQuery" }, diff --git a/cloudidentity/v1/cloudidentity-gen.go b/cloudidentity/v1/cloudidentity-gen.go index 3de39c949ff..59827d33dc9 100644 --- a/cloudidentity/v1/cloudidentity-gen.go +++ b/cloudidentity/v1/cloudidentity-gen.go @@ -448,7 +448,7 @@ func (s *DsaPublicKeyInfo) MarshalJSON() ([]byte, error) { type DynamicGroupMetadata struct { // Queries: Memberships will be the union of all queries. Only one entry // with USER resource is currently supported. Customers can create up to - // 100 dynamic groups. + // 500 dynamic groups. Queries []*DynamicGroupQuery `json:"queries,omitempty"` // Status: Output only. Status of the dynamic group. diff --git a/compute/v0.alpha/compute-api.json b/compute/v0.alpha/compute-api.json index d5eff67a674..98be65145ae 100644 --- a/compute/v0.alpha/compute-api.json +++ b/compute/v0.alpha/compute-api.json @@ -1459,7 +1459,7 @@ ], "parameters": { "backendBucket": { - "description": "Name of the BackendService resource to which the security policy should be set. The name should conform to RFC1035.", + "description": "Name of the BackendBucket resource to which the security policy should be set. The name should conform to RFC1035.", "location": "path", "required": true, "type": "string" @@ -11137,7 +11137,7 @@ }, "path": "projects/{project}/zones/{zone}/instances/{instance}/addNetworkInterface", "request": { - "$ref": "InstancesAddNetworkInterfaceRequest" + "$ref": "NetworkInterface" }, "response": { "$ref": "Operation" @@ -30363,6 +30363,93 @@ } } }, + "regionSnapshotSettings": { + "methods": { + "get": { + "description": "Get region snapshot settings.", + "flatPath": "projects/{project}/regions/{region}/snapshotSettings", + "httpMethod": "GET", + "id": "compute.regionSnapshotSettings.get", + "parameterOrder": [ + "project", + "region" + ], + "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": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/snapshotSettings", + "response": { + "$ref": "SnapshotSettings" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Patch region snapshot settings.", + "flatPath": "projects/{project}/regions/{region}/snapshotSettings", + "httpMethod": "PATCH", + "id": "compute.regionSnapshotSettings.patch", + "parameterOrder": [ + "project", + "region" + ], + "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": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-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" + }, + "updateMask": { + "description": "update_mask indicates fields to be updated as part of this request.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/snapshotSettings", + "request": { + "$ref": "SnapshotSettings" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } + }, "regionSnapshots": { "methods": { "delete": { @@ -43601,7 +43688,7 @@ } } }, - "revision": "20231128", + "revision": "20231231", "rootUrl": "https://compute.googleapis.com/", "schemas": { "AWSV4Signature": { @@ -48482,13 +48569,18 @@ "id": "BgpRouteNetworkLayerReachabilityInformation", "properties": { "destination": { - "description": "Human readable CIDR notation for a prefix. E.g. 10.42.0.0/16.", + "deprecated": true, + "description": "Human readable CIDR notation for a prefix. E.g. 10.42.0.0/16. Deprecated in favor of prefix.", "type": "string" }, "pathId": { "description": "If the BGP session supports multiple paths (RFC 7911), the path identifier for this route.", "format": "uint32", "type": "integer" + }, + "prefix": { + "description": "Human readable CIDR notation for a prefix. E.g. 10.42.0.0/16.", + "type": "string" } }, "type": "object" @@ -48506,7 +48598,7 @@ "description": "The condition that is associated with this binding. If the condition evaluates to `true`, then this binding applies to the current request. If the condition evaluates to `false`, then this binding does not apply to the current request. However, a different role binding might grant the same role to one or more of the principals in this binding. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies)." }, "members": { - "description": "Specifies the principals requesting access for a Google Cloud resource. `members` can have the following values: * `allUsers`: A special identifier that represents anyone who is on the internet; with or without a Google account. * `allAuthenticatedUsers`: A special identifier that represents anyone who is authenticated with a Google account or a service account. Does not include identities that come from external identity providers (IdPs) through identity federation. * `user:{emailid}`: An email address that represents a specific Google account. For example, `alice@example.com` . * `serviceAccount:{emailid}`: An email address that represents a Google service account. For example, `my-other-app@appspot.gserviceaccount.com`. * `serviceAccount:{projectid}.svc.id.goog[{namespace}/{kubernetes-sa}]`: An identifier for a [Kubernetes service account](https://cloud.google.com/kubernetes-engine/docs/how-to/kubernetes-service-accounts). For example, `my-project.svc.id.goog[my-namespace/my-kubernetes-sa]`. * `group:{emailid}`: An email address that represents a Google group. For example, `admins@example.com`. * `domain:{domain}`: The G Suite domain (primary) that represents all the users of that domain. For example, `google.com` or `example.com`. * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a user that has been recently deleted. For example, `alice@example.com?uid=123456789012345678901`. If the user is recovered, this value reverts to `user:{emailid}` and the recovered user retains the role in the binding. * `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a service account that has been recently deleted. For example, `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`. If the service account is undeleted, this value reverts to `serviceAccount:{emailid}` and the undeleted service account retains the role in the binding. * `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a Google group that has been recently deleted. For example, `admins@example.com?uid=123456789012345678901`. If the group is recovered, this value reverts to `group:{emailid}` and the recovered group retains the role in the binding.", + "description": "Specifies the principals requesting access for a Google Cloud resource. `members` can have the following values: * `allUsers`: A special identifier that represents anyone who is on the internet; with or without a Google account. * `allAuthenticatedUsers`: A special identifier that represents anyone who is authenticated with a Google account or a service account. Does not include identities that come from external identity providers (IdPs) through identity federation. * `user:{emailid}`: An email address that represents a specific Google account. For example, `alice@example.com` . * `serviceAccount:{emailid}`: An email address that represents a Google service account. For example, `my-other-app@appspot.gserviceaccount.com`. * `serviceAccount:{projectid}.svc.id.goog[{namespace}/{kubernetes-sa}]`: An identifier for a [Kubernetes service account](https://cloud.google.com/kubernetes-engine/docs/how-to/kubernetes-service-accounts). For example, `my-project.svc.id.goog[my-namespace/my-kubernetes-sa]`. * `group:{emailid}`: An email address that represents a Google group. For example, `admins@example.com`. * `domain:{domain}`: The G Suite domain (primary) that represents all the users of that domain. For example, `google.com` or `example.com`. * `principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/subject/{subject_attribute_value}`: A single identity in a workforce identity pool. * `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/group/{group_id}`: All workforce identities in a group. * `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/attribute.{attribute_name}/{attribute_value}`: All workforce identities with a specific attribute value. * `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/*`: All identities in a workforce identity pool. * `principal://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/subject/{subject_attribute_value}`: A single identity in a workload identity pool. * `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/group/{group_id}`: A workload identity pool group. * `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/attribute.{attribute_name}/{attribute_value}`: All identities in a workload identity pool with a certain attribute. * `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/*`: All identities in a workload identity pool. * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a user that has been recently deleted. For example, `alice@example.com?uid=123456789012345678901`. If the user is recovered, this value reverts to `user:{emailid}` and the recovered user retains the role in the binding. * `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a service account that has been recently deleted. For example, `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`. If the service account is undeleted, this value reverts to `serviceAccount:{emailid}` and the undeleted service account retains the role in the binding. * `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a Google group that has been recently deleted. For example, `admins@example.com?uid=123456789012345678901`. If the group is recovered, this value reverts to `group:{emailid}` and the recovered group retains the role in the binding. * `deleted:principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/subject/{subject_attribute_value}`: Deleted single identity in a workforce identity pool. For example, `deleted:principal://iam.googleapis.com/locations/global/workforcePools/my-pool-id/subject/my-subject-attribute-value`.", "items": { "type": "string" }, @@ -48912,7 +49004,7 @@ "type": "string" }, "reservations": { - "description": "List of create-on-create reseravtions for this commitment.", + "description": "List of create-on-create reservations for this commitment.", "items": { "$ref": "Reservation" }, @@ -54498,7 +54590,7 @@ "id": "GuestOsFeature", "properties": { "type": { - "description": "The ID of a supported feature. To add multiple values, use commas to separate values. Set to one or more of the following values: - VIRTIO_SCSI_MULTIQUEUE - WINDOWS - MULTI_IP_SUBNET - UEFI_COMPATIBLE - GVNIC - SEV_CAPABLE - SUSPEND_RESUME_COMPATIBLE - SEV_LIVE_MIGRATABLE - SEV_SNP_CAPABLE For more information, see Enabling guest operating system features.", + "description": "The ID of a supported feature. To add multiple values, use commas to separate values. Set to one or more of the following values: - VIRTIO_SCSI_MULTIQUEUE - WINDOWS - MULTI_IP_SUBNET - UEFI_COMPATIBLE - GVNIC - SEV_CAPABLE - SUSPEND_RESUME_COMPATIBLE - SEV_LIVE_MIGRATABLE - SEV_SNP_CAPABLE - IDPF For more information, see Enabling guest operating system features.", "enum": [ "BARE_METAL_LINUX_COMPATIBLE", "FEATURE_TYPE_UNSPECIFIED", @@ -55907,6 +55999,21 @@ "description": "For target pool based Network Load Balancing, it indicates the forwarding rule's IP address assigned to this instance. For other types of load balancing, the field indicates VM internal ip.", "type": "string" }, + "ipv6Address": { + "type": "string" + }, + "ipv6HealthState": { + "description": "Health state of the IPv6 address of the instance.", + "enum": [ + "HEALTHY", + "UNHEALTHY" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, "port": { "description": "The named port of the instance group, not necessarily the port that is health-checked.", "format": "int32", @@ -59059,7 +59166,7 @@ "id": "InstanceGroupManagerResizeRequestStatus", "properties": { "error": { - "description": "Errors encountered during the queueing or provisioning phases of the ResizeRequest.", + "description": "[Output only] Fatal errors encountered during the queueing or provisioning phases of the ResizeRequest that caused the transition to the FAILED state. As a contrary to the last_attempt errors, this field is final and errors are never removed from here, as the RR is not going to retry.", "properties": { "errors": { "description": "[Output Only] The array of errors encountered while processing this operation.", @@ -59269,6 +59376,7 @@ "id": "InstanceGroupManagerStandbyPolicy", "properties": { "initialDelaySec": { + "description": "Specifies the number of seconds that the MIG should wait to suspend or stop a VM after that VM was created. The initial delay gives the initialization script the time to prepare your VM for a quick scale out. The value of initial delay must be between 0 and 3600 seconds. The default value is 0.", "format": "int32", "type": "integer" }, @@ -61631,16 +61739,6 @@ }, "type": "object" }, - "InstancesAddNetworkInterfaceRequest": { - "id": "InstancesAddNetworkInterfaceRequest", - "properties": { - "network_interface": { - "$ref": "NetworkInterface", - "description": "The new network interface to add." - } - }, - "type": "object" - }, "InstancesAddResourcePoliciesRequest": { "id": "InstancesAddResourcePoliciesRequest", "properties": { @@ -63041,6 +63139,10 @@ "format": "int32", "type": "integer" }, + "multicastEnabled": { + "description": "Whether or not to permit multicast traffic for this attachment. Multicast packets will be dropped if this is not enabled.", + "type": "boolean" + }, "name": { "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. 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])?", @@ -72317,7 +72419,7 @@ "type": "object" }, "Operation": { - "description": "Represents an Operation resource. Google Compute Engine has three Operation resources: * [Global](/compute/docs/reference/rest/alpha/globalOperations) * [Regional](/compute/docs/reference/rest/alpha/regionOperations) * [Zonal](/compute/docs/reference/rest/alpha/zoneOperations) You can use an operation resource to manage asynchronous API requests. For more information, read Handling API responses. Operations can be global, regional or zonal. - For global operations, use the `globalOperations` resource. - For regional operations, use the `regionOperations` resource. - For zonal operations, use the `zoneOperations` resource. For more information, read Global, Regional, and Zonal Resources.", + "description": "Represents an Operation resource. Google Compute Engine has three Operation resources: * [Global](/compute/docs/reference/rest/alpha/globalOperations) * [Regional](/compute/docs/reference/rest/alpha/regionOperations) * [Zonal](/compute/docs/reference/rest/alpha/zoneOperations) You can use an operation resource to manage asynchronous API requests. For more information, read Handling API responses. Operations can be global, regional or zonal. - For global operations, use the `globalOperations` resource. - For regional operations, use the `regionOperations` resource. - For zonal operations, use the `zoneOperations` resource. For more information, read Global, Regional, and Zonal Resources. Note that completed Operation resources have a limited retention period.", "id": "Operation", "properties": { "clientOperationId": { @@ -73450,14 +73552,14 @@ "id": "PacketMirroringFilter", "properties": { "IPProtocols": { - "description": "Protocols that apply as filter on mirrored traffic. If no protocols are specified, all traffic that matches the specified CIDR ranges is mirrored. If neither cidrRanges nor IPProtocols is specified, all traffic is mirrored.", + "description": "Protocols that apply as filter on mirrored traffic. If no protocols are specified, all traffic that matches the specified CIDR ranges is mirrored. If neither cidrRanges nor IPProtocols is specified, all IPv4 traffic is mirrored.", "items": { "type": "string" }, "type": "array" }, "cidrRanges": { - "description": "IP CIDR ranges that apply as filter on the source (ingress) or destination (egress) IP in the IP header. Only IPv4 is supported. If no ranges are specified, all traffic that matches the specified IPProtocols is mirrored. If neither cidrRanges nor IPProtocols is specified, all traffic is mirrored.", + "description": "One or more IPv4 or IPv6 CIDR ranges that apply as filter on the source (ingress) or destination (egress) IP in the IP header. If no ranges are specified, all IPv4 traffic that matches the specified IPProtocols is mirrored. If neither cidrRanges nor IPProtocols is specified, all IPv4 traffic is mirrored. To mirror all IPv4 and IPv6 traffic, use \"0.0.0.0/0,::/0\". Note: Support for IPv6 traffic is in preview.", "items": { "type": "string" }, @@ -76123,6 +76225,7 @@ "COMMITTED_N2_CPUS", "COMMITTED_NVIDIA_A100_80GB_GPUS", "COMMITTED_NVIDIA_A100_GPUS", + "COMMITTED_NVIDIA_H100_GPUS", "COMMITTED_NVIDIA_K80_GPUS", "COMMITTED_NVIDIA_L4_GPUS", "COMMITTED_NVIDIA_P100_GPUS", @@ -76199,6 +76302,7 @@ "PREEMPTIBLE_LOCAL_SSD_GB", "PREEMPTIBLE_NVIDIA_A100_80GB_GPUS", "PREEMPTIBLE_NVIDIA_A100_GPUS", + "PREEMPTIBLE_NVIDIA_H100_GPUS", "PREEMPTIBLE_NVIDIA_K80_GPUS", "PREEMPTIBLE_NVIDIA_L4_GPUS", "PREEMPTIBLE_NVIDIA_P100_GPUS", @@ -76294,6 +76398,7 @@ "", "", "", + "", "Guest CPUs", "", "", @@ -76398,6 +76503,7 @@ "", "", "", + "", "The total number of snapshots allowed for a single project.", "", "", @@ -81768,14 +81874,12 @@ "IPV4_PEER_ON_IPV6_ONLY_CONNECTION", "IPV6_PEER_ON_IPV4_ONLY_CONNECTION", "MD5_AUTH_INTERNAL_PROBLEM", - "MISSING_NETWORK_CONNECTIVITY_CENTER_SPOKE", "STATUS_REASON_UNSPECIFIED" ], "enumDescriptions": [ "BGP peer disabled because it requires IPv4 but the underlying connection is IPv6-only.", "BGP peer disabled because it requires IPv6 but the underlying connection is IPv4-only.", "Indicates internal problems with configuration of MD5 authentication. This particular reason can only be returned when md5AuthEnabled is true and status is DOWN.", - "BGP peer disabled because it is not labeled as an NCC spoke. Currently, BGP peers using SD-WAN connectivity will be disabled for this reason.", "" ], "type": "string" @@ -83237,7 +83341,7 @@ "type": "string" }, "displayName": { - "description": "User-provided name of the Organization security plicy. 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.", + "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" }, @@ -83999,7 +84103,7 @@ "properties": { "recaptchaOptions": { "$ref": "SecurityPolicyRuleMatcherExprOptionsRecaptchaOptions", - "description": "reCAPTCHA configuration options to be applied for the rule. If the rule does not evaluate reCAPTCHA tokens, this field will have no effect." + "description": "reCAPTCHA configuration options to be applied for the rule. If the rule does not evaluate reCAPTCHA tokens, this field has no effect." } }, "type": "object" @@ -86082,6 +86186,10 @@ "SnapshotSettings": { "id": "SnapshotSettings", "properties": { + "accessLocation": { + "$ref": "SnapshotSettingsAccessLocation", + "description": "(Regional snapshots use only)Policy of which location is allowed to access snapshot." + }, "storageLocation": { "$ref": "SnapshotSettingsStorageLocationSettings", "description": "Policy of which storage location is going to be resolved, and additional data that particularizes how the policy is going to be carried out." @@ -86089,6 +86197,30 @@ }, "type": "object" }, + "SnapshotSettingsAccessLocation": { + "id": "SnapshotSettingsAccessLocation", + "properties": { + "locations": { + "additionalProperties": { + "$ref": "SnapshotSettingsAccessLocationAccessLocationPreference" + }, + "description": "List of regions that can restore a regional snapshot from the current region", + "type": "object" + } + }, + "type": "object" + }, + "SnapshotSettingsAccessLocationAccessLocationPreference": { + "description": "A structure for specifying an allowed target region.", + "id": "SnapshotSettingsAccessLocationAccessLocationPreference", + "properties": { + "region": { + "description": "Accessible region name", + "type": "string" + } + }, + "type": "object" + }, "SnapshotSettingsStorageLocationSettings": { "id": "SnapshotSettingsStorageLocationSettings", "properties": { @@ -87855,13 +87987,28 @@ ], "type": "string" }, + "poolProvisionedCapacityGb": { + "description": "Size, in GiB, of the storage pool.", + "format": "int64", + "type": "string" + }, + "poolProvisionedIops": { + "description": "Provsioned IOPS of the storage pool. Only relevant if the storage pool type is hyperdisk-balanced.", + "format": "int64", + "type": "string" + }, + "poolProvisionedThroughput": { + "description": "Provisioned throughput of the storage pool. Only relevant if the storage pool type is hyperdisk-balanced or hyperdisk-throughput.", + "format": "int64", + "type": "string" + }, "provisionedIops": { - "description": "Provsioned IOPS of the storage pool.", + "description": "DEPRECATED -- use \"pool provisioned IOPS\".", "format": "int64", "type": "string" }, "provisionedThroughput": { - "description": "Provisioned throughput of the storage pool. Only relevant if the storage pool type is hyperdisk-balanced or hyperdisk-throughput.", + "description": "DEPRECATED -- use \"pool provisioned throughput\".", "format": "int64", "type": "string" }, @@ -87878,7 +88025,7 @@ "type": "string" }, "sizeGb": { - "description": "Size, in GiB, of the storage pool.", + "description": "DEPRECATED -- use \"pool provisioned capacity gb\".", "format": "int64", "type": "string" }, @@ -88477,12 +88624,17 @@ "id": "StoragePoolResourceStatus", "properties": { "aggregateDiskProvisionedIops": { - "description": "[Output Only] Sum of all the disks' provisioned IOPS.", + "description": "DEPRECATED -- use \"total_provisioned_disk_iops\".", "format": "int64", "type": "string" }, "aggregateDiskSizeGb": { - "description": "[Output Only] Sum of all the capacity provisioned in disks in this storage pool. A disk's provisioned capacity is the same as its total capacity.", + "description": "DEPRECATED -- use \"total provisioned disk size gb\".", + "format": "int64", + "type": "string" + }, + "diskCount": { + "description": "[Output Only] Number of disks used.", "format": "int64", "type": "string" }, @@ -88491,27 +88643,67 @@ "type": "string" }, "maxAggregateDiskSizeGb": { + "description": "DEPRECATED -- use \"max provisioned disk size gb\"", + "format": "int64", + "type": "string" + }, + "maxTotalProvisionedDiskCapacityGb": { "description": "[Output Only] Maximum allowed aggregate disk size in gigabytes.", "format": "int64", "type": "string" }, "numberOfDisks": { - "description": "[Output Only] Number of disks used.", + "description": "DEPRECATED -- use \"disk count\".", + "format": "int64", + "type": "string" + }, + "poolUsedCapacityBytes": { + "description": "[Output Only] Space used by data stored in disks within the storage pool (in bytes). This will reflect the total number of bytes written to the disks in the pool, in contrast to the capacity of those disks.", + "format": "int64", + "type": "string" + }, + "poolUsedIops": { + "description": "Sum of all the disks' provisioned IOPS, minus some amount that is allowed per disk that is not counted towards pool's IOPS capacity.", + "format": "int64", + "type": "string" + }, + "poolUsedThroughput": { + "description": "[Output Only] Sum of all the disks' provisioned throughput in MB/s.", + "format": "int64", + "type": "string" + }, + "poolUserWrittenBytes": { + "description": "[Output Only] Amount of data written into the pool, before it is compacted.", + "format": "int64", + "type": "string" + }, + "totalProvisionedDiskCapacityGb": { + "description": "[Output Only] Sum of all the capacity provisioned in disks in this storage pool. A disk's provisioned capacity is the same as its total capacity.", + "format": "int64", + "type": "string" + }, + "totalProvisionedDiskIops": { + "description": "[Output Only] Sum of all the disks' provisioned IOPS.", + "format": "int64", + "type": "string" + }, + "totalProvisionedDiskThroughput": { + "description": "[Output Only] Sum of all the disks' provisioned throughput in MB/s, minus some amount that is allowed per disk that is not counted towards pool's throughput capacity.", "format": "int64", "type": "string" }, "usedBytes": { - "description": "[Output Only] Space used by data stored in disks within the storage pool (in bytes).", + "description": "DEPRECATED -- use \"pool used capacity\".", "format": "int64", "type": "string" }, "usedReducedBytes": { - "description": "[Output Only] Space used by compressed and deduped data stored in disks within the storage pool (in bytes).", + "description": "DEPRECATED -- do not use, will be removed.", "format": "int64", "type": "string" }, "usedThroughput": { - "description": "[Output Only] Sum of all the disks' provisioned throughput in MB/s.", + "description": "DEPRECATED -- use \"pool used throughput\".", "format": "int64", "type": "string" } @@ -89330,7 +89522,7 @@ "type": "string" }, "purpose": { - "description": "The purpose of the resource. This field can be either PRIVATE, REGIONAL_MANAGED_PROXY, PRIVATE_SERVICE_CONNECT, or INTERNAL_HTTPS_LOAD_BALANCER. PRIVATE is the default purpose for user-created subnets or subnets that are automatically created in auto mode networks. A subnet with purpose set to REGIONAL_MANAGED_PROXY is a user-created subnetwork that is reserved for regional Envoy-based load balancers. A subnet with purpose set to PRIVATE_SERVICE_CONNECT is used to publish services using Private Service Connect. A subnet with purpose set to INTERNAL_HTTPS_LOAD_BALANCER is a proxy-only subnet that can be used only by regional internal HTTP(S) load balancers. Note that REGIONAL_MANAGED_PROXY is the preferred setting for all regional Envoy load balancers. If unspecified, the subnet purpose defaults to PRIVATE. The enableFlowLogs field isn't supported if the subnet purpose field is set to REGIONAL_MANAGED_PROXY.", + "description": "The purpose of the resource. This field can be either PRIVATE, GLOBAL_MANAGED_PROXY, REGIONAL_MANAGED_PROXY, PRIVATE_SERVICE_CONNECT, or PRIVATE is the default purpose for user-created subnets or subnets that are automatically created in auto mode networks. Subnets with purpose set to GLOBAL_MANAGED_PROXY or REGIONAL_MANAGED_PROXY are user-created subnetworks that are reserved for Envoy-based load balancers. A subnet with purpose set to PRIVATE_SERVICE_CONNECT is used to publish services using Private Service Connect. If unspecified, the subnet purpose defaults to PRIVATE. The enableFlowLogs field isn't supported if the subnet purpose field is set to GLOBAL_MANAGED_PROXY or REGIONAL_MANAGED_PROXY.", "enum": [ "AGGREGATE", "CLOUD_EXTENSION", @@ -89346,7 +89538,7 @@ "Subnetwork used to aggregate multiple private subnetworks.", "Subnetworks created for Cloud Extension Machines.", "Subnet reserved for Global Envoy-based Load Balancing.", - "Subnet reserved for Internal HTTP(S) Load Balancing.", + "Subnet reserved for Internal HTTP(S) Load Balancing. This is a legacy purpose, please use REGIONAL_MANAGED_PROXY instead.", "Regular user created or automatically created subnet.", "Subnetwork used as source range for Private NAT Gateways.", "Regular user created or automatically created subnet.", @@ -89364,7 +89556,7 @@ "type": "string" }, "role": { - "description": "The role of subnetwork. Currently, this field is only used when purpose = REGIONAL_MANAGED_PROXY. The value can be set to ACTIVE or BACKUP. An ACTIVE subnetwork is one that is currently being used for Envoy-based load balancers in a region. A BACKUP subnetwork is one that is ready to be promoted to ACTIVE or is currently draining. This field can be updated with a patch request.", + "description": "The role of subnetwork. Currently, this field is only used when purpose is set to GLOBAL_MANAGED_PROXY or REGIONAL_MANAGED_PROXY. The value can be set to ACTIVE or BACKUP. An ACTIVE subnetwork is one that is currently being used for Envoy-based load balancers in a region. A BACKUP subnetwork is one that is ready to be promoted to ACTIVE or is currently draining. This field can be updated with a patch request.", "enum": [ "ACTIVE", "BACKUP" @@ -94836,7 +95028,7 @@ "type": "string" }, "purpose": { - "description": "The purpose of the resource. This field can be either PRIVATE, REGIONAL_MANAGED_PROXY, PRIVATE_SERVICE_CONNECT, or INTERNAL_HTTPS_LOAD_BALANCER. PRIVATE is the default purpose for user-created subnets or subnets that are automatically created in auto mode networks. A subnet with purpose set to REGIONAL_MANAGED_PROXY is a user-created subnetwork that is reserved for regional Envoy-based load balancers. A subnet with purpose set to PRIVATE_SERVICE_CONNECT is used to publish services using Private Service Connect. A subnet with purpose set to INTERNAL_HTTPS_LOAD_BALANCER is a proxy-only subnet that can be used only by regional internal HTTP(S) load balancers. Note that REGIONAL_MANAGED_PROXY is the preferred setting for all regional Envoy load balancers. If unspecified, the subnet purpose defaults to PRIVATE. The enableFlowLogs field isn't supported if the subnet purpose field is set to REGIONAL_MANAGED_PROXY.", + "description": "The purpose of the resource. This field can be either PRIVATE, GLOBAL_MANAGED_PROXY, REGIONAL_MANAGED_PROXY, PRIVATE_SERVICE_CONNECT, or PRIVATE is the default purpose for user-created subnets or subnets that are automatically created in auto mode networks. Subnets with purpose set to GLOBAL_MANAGED_PROXY or REGIONAL_MANAGED_PROXY are user-created subnetworks that are reserved for Envoy-based load balancers. A subnet with purpose set to PRIVATE_SERVICE_CONNECT is used to publish services using Private Service Connect. If unspecified, the subnet purpose defaults to PRIVATE. The enableFlowLogs field isn't supported if the subnet purpose field is set to GLOBAL_MANAGED_PROXY or REGIONAL_MANAGED_PROXY.", "enum": [ "AGGREGATE", "CLOUD_EXTENSION", @@ -94852,7 +95044,7 @@ "Subnetwork used to aggregate multiple private subnetworks.", "Subnetworks created for Cloud Extension Machines.", "Subnet reserved for Global Envoy-based Load Balancing.", - "Subnet reserved for Internal HTTP(S) Load Balancing.", + "Subnet reserved for Internal HTTP(S) Load Balancing. This is a legacy purpose, please use REGIONAL_MANAGED_PROXY instead.", "Regular user created or automatically created subnet.", "Subnetwork used as source range for Private NAT Gateways.", "Regular user created or automatically created subnet.", @@ -94862,7 +95054,7 @@ "type": "string" }, "role": { - "description": "The role of subnetwork. Currently, this field is only used when purpose = REGIONAL_MANAGED_PROXY. The value can be set to ACTIVE or BACKUP. An ACTIVE subnetwork is one that is currently being used for Envoy-based load balancers in a region. A BACKUP subnetwork is one that is ready to be promoted to ACTIVE or is currently draining. This field can be updated with a patch request.", + "description": "The role of subnetwork. Currently, this field is only used when purpose is set to GLOBAL_MANAGED_PROXY or REGIONAL_MANAGED_PROXY. The value can be set to ACTIVE or BACKUP. An ACTIVE subnetwork is one that is currently being used for Envoy-based load balancers in a region. A BACKUP subnetwork is one that is ready to be promoted to ACTIVE or is currently draining. This field can be updated with a patch request.", "enum": [ "ACTIVE", "BACKUP" diff --git a/compute/v0.alpha/compute-gen.go b/compute/v0.alpha/compute-gen.go index ad3e7cffb99..a8e80f33f41 100644 --- a/compute/v0.alpha/compute-gen.go +++ b/compute/v0.alpha/compute-gen.go @@ -229,6 +229,7 @@ func New(client *http.Client) (*Service, error) { s.RegionNotificationEndpoints = NewRegionNotificationEndpointsService(s) s.RegionOperations = NewRegionOperationsService(s) s.RegionSecurityPolicies = NewRegionSecurityPoliciesService(s) + s.RegionSnapshotSettings = NewRegionSnapshotSettingsService(s) s.RegionSnapshots = NewRegionSnapshotsService(s) s.RegionSslCertificates = NewRegionSslCertificatesService(s) s.RegionSslPolicies = NewRegionSslPoliciesService(s) @@ -413,6 +414,8 @@ type Service struct { RegionSecurityPolicies *RegionSecurityPoliciesService + RegionSnapshotSettings *RegionSnapshotSettingsService + RegionSnapshots *RegionSnapshotsService RegionSslCertificates *RegionSslCertificatesService @@ -1123,6 +1126,15 @@ type RegionSecurityPoliciesService struct { s *Service } +func NewRegionSnapshotSettingsService(s *Service) *RegionSnapshotSettingsService { + rs := &RegionSnapshotSettingsService{s: s} + return rs +} + +type RegionSnapshotSettingsService struct { + s *Service +} + func NewRegionSnapshotsService(s *Service) *RegionSnapshotsService { rs := &RegionSnapshotsService{s: s} return rs @@ -8566,13 +8578,16 @@ func (s *BgpRouteAsPath) MarshalJSON() ([]byte, error) { // Reachability Information (NLRI) for a route. type BgpRouteNetworkLayerReachabilityInformation struct { // Destination: Human readable CIDR notation for a prefix. E.g. - // 10.42.0.0/16. + // 10.42.0.0/16. Deprecated in favor of prefix. Destination string `json:"destination,omitempty"` // PathId: If the BGP session supports multiple paths (RFC 7911), the // path identifier for this route. PathId int64 `json:"pathId,omitempty"` + // Prefix: Human readable CIDR notation for a prefix. E.g. 10.42.0.0/16. + Prefix string `json:"prefix,omitempty"` + // ForceSendFields is a list of field names (e.g. "Destination") to // unconditionally include in API requests. By default, fields with // empty or default values are omitted from API requests. However, any @@ -8631,11 +8646,34 @@ type Binding struct { // For example, `admins@example.com`. * `domain:{domain}`: The G Suite // domain (primary) that represents all the users of that domain. For // example, `google.com` or `example.com`. * - // `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus - // unique identifier) representing a user that has been recently - // deleted. For example, `alice@example.com?uid=123456789012345678901`. - // If the user is recovered, this value reverts to `user:{emailid}` and - // the recovered user retains the role in the binding. * + // `principal://iam.googleapis.com/locations/global/workforcePools/{pool_ + // id}/subject/{subject_attribute_value}`: A single identity in a + // workforce identity pool. * + // `principalSet://iam.googleapis.com/locations/global/workforcePools/{po + // ol_id}/group/{group_id}`: All workforce identities in a group. * + // `principalSet://iam.googleapis.com/locations/global/workforcePools/{po + // ol_id}/attribute.{attribute_name}/{attribute_value}`: All workforce + // identities with a specific attribute value. * + // `principalSet://iam.googleapis.com/locations/global/workforcePools/{po + // ol_id}/*`: All identities in a workforce identity pool. * + // `principal://iam.googleapis.com/projects/{project_number}/locations/gl + // obal/workloadIdentityPools/{pool_id}/subject/{subject_attribute_value} + // `: A single identity in a workload identity pool. * + // `principalSet://iam.googleapis.com/projects/{project_number}/locations + // /global/workloadIdentityPools/{pool_id}/group/{group_id}`: A workload + // identity pool group. * + // `principalSet://iam.googleapis.com/projects/{project_number}/locations + // /global/workloadIdentityPools/{pool_id}/attribute.{attribute_name}/{at + // tribute_value}`: All identities in a workload identity pool with a + // certain attribute. * + // `principalSet://iam.googleapis.com/projects/{project_number}/locations + // /global/workloadIdentityPools/{pool_id}/*`: All identities in a + // workload identity pool. * `deleted:user:{emailid}?uid={uniqueid}`: An + // email address (plus unique identifier) representing a user that has + // been recently deleted. For example, + // `alice@example.com?uid=123456789012345678901`. If the user is + // recovered, this value reverts to `user:{emailid}` and the recovered + // user retains the role in the binding. * // `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address // (plus unique identifier) representing a service account that has been // recently deleted. For example, @@ -8647,7 +8685,12 @@ type Binding struct { // that has been recently deleted. For example, // `admins@example.com?uid=123456789012345678901`. If the group is // recovered, this value reverts to `group:{emailid}` and the recovered - // group retains the role in the binding. + // group retains the role in the binding. * + // `deleted:principal://iam.googleapis.com/locations/global/workforcePool + // s/{pool_id}/subject/{subject_attribute_value}`: Deleted single + // identity in a workforce identity pool. For example, + // `deleted:principal://iam.googleapis.com/locations/global/workforcePool + // s/my-pool-id/subject/my-subject-attribute-value`. Members []string `json:"members,omitempty"` // Role: Role that is assigned to the list of `members`, or principals. @@ -9293,7 +9336,7 @@ type Commitment struct { // used. Region string `json:"region,omitempty"` - // Reservations: List of create-on-create reseravtions for this + // Reservations: List of create-on-create reservations for this // commitment. Reservations []*Reservation `json:"reservations,omitempty"` @@ -17362,8 +17405,8 @@ type GuestOsFeature struct { // commas to separate values. Set to one or more of the following // values: - VIRTIO_SCSI_MULTIQUEUE - WINDOWS - MULTI_IP_SUBNET - // UEFI_COMPATIBLE - GVNIC - SEV_CAPABLE - SUSPEND_RESUME_COMPATIBLE - - // SEV_LIVE_MIGRATABLE - SEV_SNP_CAPABLE For more information, see - // Enabling guest operating system features. + // SEV_LIVE_MIGRATABLE - SEV_SNP_CAPABLE - IDPF For more information, + // see Enabling guest operating system features. // // Possible values: // "BARE_METAL_LINUX_COMPATIBLE" @@ -19257,6 +19300,15 @@ type HealthStatus struct { // types of load balancing, the field indicates VM internal ip. IpAddress string `json:"ipAddress,omitempty"` + Ipv6Address string `json:"ipv6Address,omitempty"` + + // Ipv6HealthState: Health state of the IPv6 address of the instance. + // + // Possible values: + // "HEALTHY" + // "UNHEALTHY" + Ipv6HealthState string `json:"ipv6HealthState,omitempty"` + // Port: The named port of the instance group, not necessarily the port // that is health-checked. Port int64 `json:"port,omitempty"` @@ -23754,8 +23806,11 @@ func (s *InstanceGroupManagerResizeRequest) MarshalJSON() ([]byte, error) { } type InstanceGroupManagerResizeRequestStatus struct { - // Error: Errors encountered during the queueing or provisioning phases - // of the ResizeRequest. + // Error: [Output only] Fatal errors encountered during the queueing or + // provisioning phases of the ResizeRequest that caused the transition + // to the FAILED state. As a contrary to the last_attempt errors, this + // field is final and errors are never removed from here, as the RR is + // not going to retry. Error *InstanceGroupManagerResizeRequestStatusError `json:"error,omitempty"` // QueuingPolicy: Constraints for the time when the instances start @@ -23785,8 +23840,11 @@ func (s *InstanceGroupManagerResizeRequestStatus) MarshalJSON() ([]byte, error) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// InstanceGroupManagerResizeRequestStatusError: Errors encountered -// during the queueing or provisioning phases of the ResizeRequest. +// InstanceGroupManagerResizeRequestStatusError: [Output only] Fatal +// errors encountered during the queueing or provisioning phases of the +// ResizeRequest that caused the transition to the FAILED state. As a +// contrary to the last_attempt errors, this field is final and errors +// are never removed from here, as the RR is not going to retry. type InstanceGroupManagerResizeRequestStatusError struct { // Errors: [Output Only] The array of errors encountered while // processing this operation. @@ -24084,6 +24142,11 @@ func (s *InstanceGroupManagerResizeRequestsListResponseWarningData) MarshalJSON( } type InstanceGroupManagerStandbyPolicy struct { + // InitialDelaySec: Specifies the number of seconds that the MIG should + // wait to suspend or stop a VM after that VM was created. The initial + // delay gives the initialization script the time to prepare your VM for + // a quick scale out. The value of initial delay must be between 0 and + // 3600 seconds. The default value is 0. InitialDelaySec int64 `json:"initialDelaySec,omitempty"` // Mode: Defines how a MIG resumes or starts VMs from a standby pool @@ -27642,34 +27705,6 @@ func (s *InstanceWithNamedPorts) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -type InstancesAddNetworkInterfaceRequest struct { - // NetworkInterface: The new network interface to add. - NetworkInterface *NetworkInterface `json:"network_interface,omitempty"` - - // ForceSendFields is a list of field names (e.g. "NetworkInterface") to - // unconditionally include in API requests. By default, fields with - // empty or default values are omitted from API requests. However, any - // non-pointer, non-interface field appearing in ForceSendFields will be - // sent to the server regardless of whether the field is empty or not. - // This may be used to include empty fields in Patch requests. - ForceSendFields []string `json:"-"` - - // NullFields is a list of field names (e.g. "NetworkInterface") to - // include in API requests with the JSON null value. By default, fields - // with empty values are omitted from API requests. However, any field - // with an empty value appearing in NullFields will be sent to the - // server as null. It is an error if a field in this list has a - // non-empty value. This may be used to include null fields in Patch - // requests. - NullFields []string `json:"-"` -} - -func (s *InstancesAddNetworkInterfaceRequest) MarshalJSON() ([]byte, error) { - type NoMethod InstancesAddNetworkInterfaceRequest - raw := NoMethod(*s) - return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) -} - type InstancesAddResourcePoliciesRequest struct { // ResourcePolicies: Resource policies to be added to this instance. ResourcePolicies []string `json:"resourcePolicies,omitempty"` @@ -29609,6 +29644,10 @@ type InterconnectAttachment struct { // If not specified, the value will default to 1440. Mtu int64 `json:"mtu,omitempty"` + // MulticastEnabled: Whether or not to permit multicast traffic for this + // attachment. Multicast packets will be dropped if this is not enabled. + MulticastEnabled bool `json:"multicastEnabled,omitempty"` + // Name: Name of the resource. Provided by the client when the resource // is created. The name must be 1-63 characters long, and comply with // RFC1035. Specifically, the name must be 1-63 characters long and @@ -42358,7 +42397,8 @@ func (s *NotificationEndpointsScopedListWarningData) MarshalJSON() ([]byte, erro // `globalOperations` resource. - For regional operations, use the // `regionOperations` resource. - For zonal operations, use the // `zoneOperations` resource. For more information, read Global, -// Regional, and Zonal Resources. +// Regional, and Zonal Resources. Note that completed Operation +// resources have a limited retention period. type Operation struct { // ClientOperationId: [Output Only] The value of `requestId` if you // provided it in the request. Not present otherwise. @@ -43840,14 +43880,16 @@ type PacketMirroringFilter struct { // IPProtocols: Protocols that apply as filter on mirrored traffic. If // no protocols are specified, all traffic that matches the specified // CIDR ranges is mirrored. If neither cidrRanges nor IPProtocols is - // specified, all traffic is mirrored. + // specified, all IPv4 traffic is mirrored. IPProtocols []string `json:"IPProtocols,omitempty"` - // CidrRanges: IP CIDR ranges that apply as filter on the source - // (ingress) or destination (egress) IP in the IP header. Only IPv4 is - // supported. If no ranges are specified, all traffic that matches the + // CidrRanges: One or more IPv4 or IPv6 CIDR ranges that apply as filter + // on the source (ingress) or destination (egress) IP in the IP header. + // If no ranges are specified, all IPv4 traffic that matches the // specified IPProtocols is mirrored. If neither cidrRanges nor - // IPProtocols is specified, all traffic is mirrored. + // IPProtocols is specified, all IPv4 traffic is mirrored. To mirror all + // IPv4 and IPv6 traffic, use "0.0.0.0/0,::/0". Note: Support for IPv6 + // traffic is in preview. CidrRanges []string `json:"cidrRanges,omitempty"` // Direction: Direction of traffic to mirror, either INGRESS, EGRESS, or @@ -47632,6 +47674,7 @@ type Quota struct { // "COMMITTED_N2_CPUS" // "COMMITTED_NVIDIA_A100_80GB_GPUS" // "COMMITTED_NVIDIA_A100_GPUS" + // "COMMITTED_NVIDIA_H100_GPUS" // "COMMITTED_NVIDIA_K80_GPUS" // "COMMITTED_NVIDIA_L4_GPUS" // "COMMITTED_NVIDIA_P100_GPUS" @@ -47708,6 +47751,7 @@ type Quota struct { // "PREEMPTIBLE_LOCAL_SSD_GB" // "PREEMPTIBLE_NVIDIA_A100_80GB_GPUS" // "PREEMPTIBLE_NVIDIA_A100_GPUS" + // "PREEMPTIBLE_NVIDIA_H100_GPUS" // "PREEMPTIBLE_NVIDIA_K80_GPUS" // "PREEMPTIBLE_NVIDIA_L4_GPUS" // "PREEMPTIBLE_NVIDIA_P100_GPUS" @@ -55242,9 +55286,6 @@ type RouterStatusBgpPeerStatus struct { // "MD5_AUTH_INTERNAL_PROBLEM" - Indicates internal problems with // configuration of MD5 authentication. This particular reason can only // be returned when md5AuthEnabled is true and status is DOWN. - // "MISSING_NETWORK_CONNECTIVITY_CENTER_SPOKE" - BGP peer disabled - // because it is not labeled as an NCC spoke. Currently, BGP peers using - // SD-WAN connectivity will be disabled for this reason. // "STATUS_REASON_UNSPECIFIED" StatusReason string `json:"statusReason,omitempty"` @@ -57157,7 +57198,7 @@ type SecurityPolicy struct { // property when you create the resource. Description string `json:"description,omitempty"` - // DisplayName: User-provided name of the Organization security plicy. + // DisplayName: 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 @@ -58388,7 +58429,7 @@ func (s *SecurityPolicyRuleMatcherConfigLayer4Config) MarshalJSON() ([]byte, err type SecurityPolicyRuleMatcherExprOptions struct { // RecaptchaOptions: reCAPTCHA configuration options to be applied for // the rule. If the rule does not evaluate reCAPTCHA tokens, this field - // will have no effect. + // has no effect. RecaptchaOptions *SecurityPolicyRuleMatcherExprOptionsRecaptchaOptions `json:"recaptchaOptions,omitempty"` // ForceSendFields is a list of field names (e.g. "RecaptchaOptions") to @@ -61335,6 +61376,10 @@ func (s *SnapshotListWarningData) MarshalJSON() ([]byte, error) { } type SnapshotSettings struct { + // AccessLocation: (Regional snapshots use only)Policy of which location + // is allowed to access snapshot. + AccessLocation *SnapshotSettingsAccessLocation `json:"accessLocation,omitempty"` + // StorageLocation: Policy of which storage location is going to be // resolved, and additional data that particularizes how the policy is // going to be carried out. @@ -61344,7 +61389,7 @@ type SnapshotSettings struct { // server. googleapi.ServerResponse `json:"-"` - // ForceSendFields is a list of field names (e.g. "StorageLocation") to + // ForceSendFields is a list of field names (e.g. "AccessLocation") to // unconditionally include in API requests. By default, fields with // empty or default values are omitted from API requests. However, any // non-pointer, non-interface field appearing in ForceSendFields will be @@ -61352,7 +61397,7 @@ type SnapshotSettings struct { // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "StorageLocation") to + // NullFields is a list of field names (e.g. "AccessLocation") to // include in API requests with the JSON null value. By default, fields // with empty values are omitted from API requests. However, any field // with an empty value appearing in NullFields will be sent to the @@ -61368,6 +61413,63 @@ func (s *SnapshotSettings) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +type SnapshotSettingsAccessLocation struct { + // Locations: List of regions that can restore a regional snapshot from + // the current region + Locations map[string]SnapshotSettingsAccessLocationAccessLocationPreference `json:"locations,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Locations") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Locations") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *SnapshotSettingsAccessLocation) MarshalJSON() ([]byte, error) { + type NoMethod SnapshotSettingsAccessLocation + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// SnapshotSettingsAccessLocationAccessLocationPreference: A structure +// for specifying an allowed target region. +type SnapshotSettingsAccessLocationAccessLocationPreference struct { + // Region: Accessible region name + Region string `json:"region,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Region") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Region") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *SnapshotSettingsAccessLocationAccessLocationPreference) MarshalJSON() ([]byte, error) { + type NoMethod SnapshotSettingsAccessLocationAccessLocationPreference + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + type SnapshotSettingsStorageLocationSettings struct { // Locations: When the policy is SPECIFIC_LOCATIONS, snapshots will be // stored in the locations listed in this field. Keys are GCS bucket @@ -63693,12 +63795,23 @@ type StoragePool struct { // "UNSPECIFIED" PerformanceProvisioningType string `json:"performanceProvisioningType,omitempty"` - // ProvisionedIops: Provsioned IOPS of the storage pool. - ProvisionedIops int64 `json:"provisionedIops,omitempty,string"` + // PoolProvisionedCapacityGb: Size, in GiB, of the storage pool. + PoolProvisionedCapacityGb int64 `json:"poolProvisionedCapacityGb,omitempty,string"` + + // PoolProvisionedIops: Provsioned IOPS of the storage pool. Only + // relevant if the storage pool type is hyperdisk-balanced. + PoolProvisionedIops int64 `json:"poolProvisionedIops,omitempty,string"` - // ProvisionedThroughput: Provisioned throughput of the storage pool. - // Only relevant if the storage pool type is hyperdisk-balanced or + // PoolProvisionedThroughput: Provisioned throughput of the storage + // pool. Only relevant if the storage pool type is hyperdisk-balanced or // hyperdisk-throughput. + PoolProvisionedThroughput int64 `json:"poolProvisionedThroughput,omitempty,string"` + + // ProvisionedIops: DEPRECATED -- use "pool provisioned IOPS". + ProvisionedIops int64 `json:"provisionedIops,omitempty,string"` + + // ProvisionedThroughput: DEPRECATED -- use "pool provisioned + // throughput". ProvisionedThroughput int64 `json:"provisionedThroughput,omitempty,string"` // ResourceStatus: [Output Only] Status information for the storage pool @@ -63713,7 +63826,7 @@ type StoragePool struct { // resource id. SelfLinkWithId string `json:"selfLinkWithId,omitempty"` - // SizeGb: Size, in GiB, of the storage pool. + // SizeGb: DEPRECATED -- use "pool provisioned capacity gb". SizeGb int64 `json:"sizeGb,omitempty,string"` // State: [Output Only] The status of storage pool creation. - CREATING: @@ -64434,36 +64547,72 @@ func (s *StoragePoolListDisksWarningData) MarshalJSON() ([]byte, error) { // StoragePoolResourceStatus: [Output Only] Contains output only fields. type StoragePoolResourceStatus struct { - // AggregateDiskProvisionedIops: [Output Only] Sum of all the disks' - // provisioned IOPS. + // AggregateDiskProvisionedIops: DEPRECATED -- use + // "total_provisioned_disk_iops". AggregateDiskProvisionedIops int64 `json:"aggregateDiskProvisionedIops,omitempty,string"` - // AggregateDiskSizeGb: [Output Only] Sum of all the capacity - // provisioned in disks in this storage pool. A disk's provisioned - // capacity is the same as its total capacity. + // AggregateDiskSizeGb: DEPRECATED -- use "total provisioned disk size + // gb". AggregateDiskSizeGb int64 `json:"aggregateDiskSizeGb,omitempty,string"` + // DiskCount: [Output Only] Number of disks used. + DiskCount int64 `json:"diskCount,omitempty,string"` + // LastResizeTimestamp: [Output Only] Timestamp of the last successful // resize in RFC3339 text format. LastResizeTimestamp string `json:"lastResizeTimestamp,omitempty"` - // MaxAggregateDiskSizeGb: [Output Only] Maximum allowed aggregate disk - // size in gigabytes. + // MaxAggregateDiskSizeGb: DEPRECATED -- use "max provisioned disk size + // gb" MaxAggregateDiskSizeGb int64 `json:"maxAggregateDiskSizeGb,omitempty,string"` - // NumberOfDisks: [Output Only] Number of disks used. + // MaxTotalProvisionedDiskCapacityGb: [Output Only] Maximum allowed + // aggregate disk size in gigabytes. + MaxTotalProvisionedDiskCapacityGb int64 `json:"maxTotalProvisionedDiskCapacityGb,omitempty,string"` + + // NumberOfDisks: DEPRECATED -- use "disk count". NumberOfDisks int64 `json:"numberOfDisks,omitempty,string"` - // UsedBytes: [Output Only] Space used by data stored in disks within - // the storage pool (in bytes). + // PoolUsedCapacityBytes: [Output Only] Space used by data stored in + // disks within the storage pool (in bytes). This will reflect the total + // number of bytes written to the disks in the pool, in contrast to the + // capacity of those disks. + PoolUsedCapacityBytes int64 `json:"poolUsedCapacityBytes,omitempty,string"` + + // PoolUsedIops: Sum of all the disks' provisioned IOPS, minus some + // amount that is allowed per disk that is not counted towards pool's + // IOPS capacity. + PoolUsedIops int64 `json:"poolUsedIops,omitempty,string"` + + // PoolUsedThroughput: [Output Only] Sum of all the disks' provisioned + // throughput in MB/s. + PoolUsedThroughput int64 `json:"poolUsedThroughput,omitempty,string"` + + // PoolUserWrittenBytes: [Output Only] Amount of data written into the + // pool, before it is compacted. + PoolUserWrittenBytes int64 `json:"poolUserWrittenBytes,omitempty,string"` + + // TotalProvisionedDiskCapacityGb: [Output Only] Sum of all the capacity + // provisioned in disks in this storage pool. A disk's provisioned + // capacity is the same as its total capacity. + TotalProvisionedDiskCapacityGb int64 `json:"totalProvisionedDiskCapacityGb,omitempty,string"` + + // TotalProvisionedDiskIops: [Output Only] Sum of all the disks' + // provisioned IOPS. + TotalProvisionedDiskIops int64 `json:"totalProvisionedDiskIops,omitempty,string"` + + // TotalProvisionedDiskThroughput: [Output Only] Sum of all the disks' + // provisioned throughput in MB/s, minus some amount that is allowed per + // disk that is not counted towards pool's throughput capacity. + TotalProvisionedDiskThroughput int64 `json:"totalProvisionedDiskThroughput,omitempty,string"` + + // UsedBytes: DEPRECATED -- use "pool used capacity". UsedBytes int64 `json:"usedBytes,omitempty,string"` - // UsedReducedBytes: [Output Only] Space used by compressed and deduped - // data stored in disks within the storage pool (in bytes). + // UsedReducedBytes: DEPRECATED -- do not use, will be removed. UsedReducedBytes int64 `json:"usedReducedBytes,omitempty,string"` - // UsedThroughput: [Output Only] Sum of all the disks' provisioned - // throughput in MB/s. + // UsedThroughput: DEPRECATED -- use "pool used throughput". UsedThroughput int64 `json:"usedThroughput,omitempty,string"` // ForceSendFields is a list of field names (e.g. @@ -65511,20 +65660,17 @@ type Subnetwork struct { PrivateIpv6GoogleAccess string `json:"privateIpv6GoogleAccess,omitempty"` // Purpose: The purpose of the resource. This field can be either - // PRIVATE, REGIONAL_MANAGED_PROXY, PRIVATE_SERVICE_CONNECT, or - // INTERNAL_HTTPS_LOAD_BALANCER. PRIVATE is the default purpose for + // PRIVATE, GLOBAL_MANAGED_PROXY, REGIONAL_MANAGED_PROXY, + // PRIVATE_SERVICE_CONNECT, or PRIVATE is the default purpose for // user-created subnets or subnets that are automatically created in - // auto mode networks. A subnet with purpose set to - // REGIONAL_MANAGED_PROXY is a user-created subnetwork that is reserved - // for regional Envoy-based load balancers. A subnet with purpose set to + // auto mode networks. Subnets with purpose set to GLOBAL_MANAGED_PROXY + // or REGIONAL_MANAGED_PROXY are user-created subnetworks that are + // reserved for Envoy-based load balancers. A subnet with purpose set to // PRIVATE_SERVICE_CONNECT is used to publish services using Private - // Service Connect. A subnet with purpose set to - // INTERNAL_HTTPS_LOAD_BALANCER is a proxy-only subnet that can be used - // only by regional internal HTTP(S) load balancers. Note that - // REGIONAL_MANAGED_PROXY is the preferred setting for all regional - // Envoy load balancers. If unspecified, the subnet purpose defaults to + // Service Connect. If unspecified, the subnet purpose defaults to // PRIVATE. The enableFlowLogs field isn't supported if the subnet - // purpose field is set to REGIONAL_MANAGED_PROXY. + // purpose field is set to GLOBAL_MANAGED_PROXY or + // REGIONAL_MANAGED_PROXY. // // Possible values: // "AGGREGATE" - Subnetwork used to aggregate multiple private @@ -65534,7 +65680,8 @@ type Subnetwork struct { // "GLOBAL_MANAGED_PROXY" - Subnet reserved for Global Envoy-based // Load Balancing. // "INTERNAL_HTTPS_LOAD_BALANCER" - Subnet reserved for Internal - // HTTP(S) Load Balancing. + // HTTP(S) Load Balancing. This is a legacy purpose, please use + // REGIONAL_MANAGED_PROXY instead. // "PRIVATE" - Regular user created or automatically created subnet. // "PRIVATE_NAT" - Subnetwork used as source range for Private NAT // Gateways. @@ -65554,11 +65701,12 @@ type Subnetwork struct { ReservedInternalRange string `json:"reservedInternalRange,omitempty"` // Role: The role of subnetwork. Currently, this field is only used when - // purpose = REGIONAL_MANAGED_PROXY. The value can be set to ACTIVE or - // BACKUP. An ACTIVE subnetwork is one that is currently being used for - // Envoy-based load balancers in a region. A BACKUP subnetwork is one - // that is ready to be promoted to ACTIVE or is currently draining. This - // field can be updated with a patch request. + // purpose is set to GLOBAL_MANAGED_PROXY or REGIONAL_MANAGED_PROXY. The + // value can be set to ACTIVE or BACKUP. An ACTIVE subnetwork is one + // that is currently being used for Envoy-based load balancers in a + // region. A BACKUP subnetwork is one that is ready to be promoted to + // ACTIVE or is currently draining. This field can be updated with a + // patch request. // // Possible values: // "ACTIVE" - The ACTIVE subnet that is currently used. @@ -73273,20 +73421,17 @@ type UsableSubnetwork struct { Network string `json:"network,omitempty"` // Purpose: The purpose of the resource. This field can be either - // PRIVATE, REGIONAL_MANAGED_PROXY, PRIVATE_SERVICE_CONNECT, or - // INTERNAL_HTTPS_LOAD_BALANCER. PRIVATE is the default purpose for + // PRIVATE, GLOBAL_MANAGED_PROXY, REGIONAL_MANAGED_PROXY, + // PRIVATE_SERVICE_CONNECT, or PRIVATE is the default purpose for // user-created subnets or subnets that are automatically created in - // auto mode networks. A subnet with purpose set to - // REGIONAL_MANAGED_PROXY is a user-created subnetwork that is reserved - // for regional Envoy-based load balancers. A subnet with purpose set to + // auto mode networks. Subnets with purpose set to GLOBAL_MANAGED_PROXY + // or REGIONAL_MANAGED_PROXY are user-created subnetworks that are + // reserved for Envoy-based load balancers. A subnet with purpose set to // PRIVATE_SERVICE_CONNECT is used to publish services using Private - // Service Connect. A subnet with purpose set to - // INTERNAL_HTTPS_LOAD_BALANCER is a proxy-only subnet that can be used - // only by regional internal HTTP(S) load balancers. Note that - // REGIONAL_MANAGED_PROXY is the preferred setting for all regional - // Envoy load balancers. If unspecified, the subnet purpose defaults to + // Service Connect. If unspecified, the subnet purpose defaults to // PRIVATE. The enableFlowLogs field isn't supported if the subnet - // purpose field is set to REGIONAL_MANAGED_PROXY. + // purpose field is set to GLOBAL_MANAGED_PROXY or + // REGIONAL_MANAGED_PROXY. // // Possible values: // "AGGREGATE" - Subnetwork used to aggregate multiple private @@ -73296,7 +73441,8 @@ type UsableSubnetwork struct { // "GLOBAL_MANAGED_PROXY" - Subnet reserved for Global Envoy-based // Load Balancing. // "INTERNAL_HTTPS_LOAD_BALANCER" - Subnet reserved for Internal - // HTTP(S) Load Balancing. + // HTTP(S) Load Balancing. This is a legacy purpose, please use + // REGIONAL_MANAGED_PROXY instead. // "PRIVATE" - Regular user created or automatically created subnet. // "PRIVATE_NAT" - Subnetwork used as source range for Private NAT // Gateways. @@ -73309,11 +73455,12 @@ type UsableSubnetwork struct { Purpose string `json:"purpose,omitempty"` // Role: The role of subnetwork. Currently, this field is only used when - // purpose = REGIONAL_MANAGED_PROXY. The value can be set to ACTIVE or - // BACKUP. An ACTIVE subnetwork is one that is currently being used for - // Envoy-based load balancers in a region. A BACKUP subnetwork is one - // that is ready to be promoted to ACTIVE or is currently draining. This - // field can be updated with a patch request. + // purpose is set to GLOBAL_MANAGED_PROXY or REGIONAL_MANAGED_PROXY. The + // value can be set to ACTIVE or BACKUP. An ACTIVE subnetwork is one + // that is currently being used for Envoy-based load balancers in a + // region. A BACKUP subnetwork is one that is ready to be promoted to + // ACTIVE or is currently draining. This field can be updated with a + // patch request. // // Possible values: // "ACTIVE" - The ACTIVE subnet that is currently used. @@ -81965,7 +82112,7 @@ type BackendBucketsSetEdgeSecurityPolicyCall struct { // SetEdgeSecurityPolicy: Sets the edge security policy for the // specified backend bucket. // -// - backendBucket: Name of the BackendService resource to which the +// - backendBucket: Name of the BackendBucket resource to which the // security policy should be set. The name should conform to RFC1035. // - project: Project ID for this request. func (r *BackendBucketsService) SetEdgeSecurityPolicy(project string, backendBucket string, securitypolicyreference *SecurityPolicyReference) *BackendBucketsSetEdgeSecurityPolicyCall { @@ -82094,7 +82241,7 @@ func (c *BackendBucketsSetEdgeSecurityPolicyCall) Do(opts ...googleapi.CallOptio // ], // "parameters": { // "backendBucket": { - // "description": "Name of the BackendService resource to which the security policy should be set. The name should conform to RFC1035.", + // "description": "Name of the BackendBucket resource to which the security policy should be set. The name should conform to RFC1035.", // "location": "path", // "required": true, // "type": "string" @@ -123560,14 +123707,14 @@ func (c *InstancesAddAccessConfigCall) Do(opts ...googleapi.CallOption) (*Operat // method id "compute.instances.addNetworkInterface": type InstancesAddNetworkInterfaceCall struct { - s *Service - project string - zone string - instance string - instancesaddnetworkinterfacerequest *InstancesAddNetworkInterfaceRequest - urlParams_ gensupport.URLParams - ctx_ context.Context - header_ http.Header + s *Service + project string + zone string + instance string + networkinterface *NetworkInterface + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header } // AddNetworkInterface: Adds a network interface to an instance. @@ -123576,12 +123723,12 @@ type InstancesAddNetworkInterfaceCall struct { // Name should conform to RFC1035 or be an unsigned long integer. // - project: Project ID for this request. // - zone: The name of the zone for this request. -func (r *InstancesService) AddNetworkInterface(project string, zone string, instance string, instancesaddnetworkinterfacerequest *InstancesAddNetworkInterfaceRequest) *InstancesAddNetworkInterfaceCall { +func (r *InstancesService) AddNetworkInterface(project string, zone string, instance string, networkinterface *NetworkInterface) *InstancesAddNetworkInterfaceCall { c := &InstancesAddNetworkInterfaceCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.project = project c.zone = zone c.instance = instance - c.instancesaddnetworkinterfacerequest = instancesaddnetworkinterfacerequest + c.networkinterface = networkinterface return c } @@ -123634,7 +123781,7 @@ func (c *InstancesAddNetworkInterfaceCall) doRequest(alt string) (*http.Response } reqHeaders.Set("User-Agent", c.s.userAgent()) var body io.Reader = nil - body, err := googleapi.WithoutDataWrapper.JSONReader(c.instancesaddnetworkinterfacerequest) + body, err := googleapi.WithoutDataWrapper.JSONReader(c.networkinterface) if err != nil { return nil, err } @@ -123732,7 +123879,7 @@ func (c *InstancesAddNetworkInterfaceCall) Do(opts ...googleapi.CallOption) (*Op // }, // "path": "projects/{project}/zones/{zone}/instances/{instance}/addNetworkInterface", // "request": { - // "$ref": "InstancesAddNetworkInterfaceRequest" + // "$ref": "NetworkInterface" // }, // "response": { // "$ref": "Operation" @@ -202368,6 +202515,355 @@ func (c *RegionSecurityPoliciesRemoveRuleCall) Do(opts ...googleapi.CallOption) } +// method id "compute.regionSnapshotSettings.get": + +type RegionSnapshotSettingsGetCall struct { + s *Service + project string + region string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Get region snapshot settings. +// +// - project: Project ID for this request. +// - region: Name of the region for this request. +func (r *RegionSnapshotSettingsService) Get(project string, region string) *RegionSnapshotSettingsGetCall { + c := &RegionSnapshotSettingsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.region = region + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *RegionSnapshotSettingsGetCall) Fields(s ...googleapi.Field) *RegionSnapshotSettingsGetCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *RegionSnapshotSettingsGetCall) IfNoneMatch(entityTag string) *RegionSnapshotSettingsGetCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *RegionSnapshotSettingsGetCall) Context(ctx context.Context) *RegionSnapshotSettingsGetCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *RegionSnapshotSettingsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *RegionSnapshotSettingsGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{project}/regions/{region}/snapshotSettings") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("GET", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "region": c.region, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.regionSnapshotSettings.get" call. +// Exactly one of *SnapshotSettings or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *SnapshotSettings.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *RegionSnapshotSettingsGetCall) Do(opts ...googleapi.CallOption) (*SnapshotSettings, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &SnapshotSettings{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Get region snapshot settings.", + // "flatPath": "projects/{project}/regions/{region}/snapshotSettings", + // "httpMethod": "GET", + // "id": "compute.regionSnapshotSettings.get", + // "parameterOrder": [ + // "project", + // "region" + // ], + // "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": "Name of the region for this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // } + // }, + // "path": "projects/{project}/regions/{region}/snapshotSettings", + // "response": { + // "$ref": "SnapshotSettings" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute", + // "https://www.googleapis.com/auth/compute.readonly" + // ] + // } + +} + +// method id "compute.regionSnapshotSettings.patch": + +type RegionSnapshotSettingsPatchCall struct { + s *Service + project string + region string + snapshotsettings *SnapshotSettings + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Patch: Patch region snapshot settings. +// +// - project: Project ID for this request. +// - region: Name of the region for this request. +func (r *RegionSnapshotSettingsService) Patch(project string, region string, snapshotsettings *SnapshotSettings) *RegionSnapshotSettingsPatchCall { + c := &RegionSnapshotSettingsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.region = region + c.snapshotsettings = snapshotsettings + return c +} + +// RequestId sets the optional parameter "requestId": 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). +func (c *RegionSnapshotSettingsPatchCall) RequestId(requestId string) *RegionSnapshotSettingsPatchCall { + c.urlParams_.Set("requestId", requestId) + return c +} + +// UpdateMask sets the optional parameter "updateMask": update_mask +// indicates fields to be updated as part of this request. +func (c *RegionSnapshotSettingsPatchCall) UpdateMask(updateMask string) *RegionSnapshotSettingsPatchCall { + c.urlParams_.Set("updateMask", updateMask) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *RegionSnapshotSettingsPatchCall) Fields(s ...googleapi.Field) *RegionSnapshotSettingsPatchCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *RegionSnapshotSettingsPatchCall) Context(ctx context.Context) *RegionSnapshotSettingsPatchCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *RegionSnapshotSettingsPatchCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *RegionSnapshotSettingsPatchCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.snapshotsettings) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{project}/regions/{region}/snapshotSettings") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("PATCH", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "region": c.region, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.regionSnapshotSettings.patch" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *RegionSnapshotSettingsPatchCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Patch region snapshot settings.", + // "flatPath": "projects/{project}/regions/{region}/snapshotSettings", + // "httpMethod": "PATCH", + // "id": "compute.regionSnapshotSettings.patch", + // "parameterOrder": [ + // "project", + // "region" + // ], + // "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": "Name of the region for this request.", + // "location": "path", + // "pattern": "[a-z](?:[-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" + // }, + // "updateMask": { + // "description": "update_mask indicates fields to be updated as part of this request.", + // "format": "google-fieldmask", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "projects/{project}/regions/{region}/snapshotSettings", + // "request": { + // "$ref": "SnapshotSettings" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute" + // ] + // } + +} + // method id "compute.regionSnapshots.delete": type RegionSnapshotsDeleteCall struct { diff --git a/compute/v0.beta/compute-api.json b/compute/v0.beta/compute-api.json index 25c230b573d..e826c7ecbda 100644 --- a/compute/v0.beta/compute-api.json +++ b/compute/v0.beta/compute-api.json @@ -1459,7 +1459,7 @@ ], "parameters": { "backendBucket": { - "description": "Name of the BackendService resource to which the security policy should be set. The name should conform to RFC1035.", + "description": "Name of the BackendBucket resource to which the security policy should be set. The name should conform to RFC1035.", "location": "path", "required": true, "type": "string" @@ -11885,6 +11885,53 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, + "performMaintenance": { + "description": "Perform a manual maintenance on the instance.", + "flatPath": "projects/{project}/zones/{zone}/instances/{instance}/performMaintenance", + "httpMethod": "POST", + "id": "compute.instances.performMaintenance", + "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}/performMaintenance", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, "removeResourcePolicies": { "description": "Removes resource policies from an instance.", "flatPath": "projects/{project}/zones/{zone}/instances/{instance}/removeResourcePolicies", @@ -12860,6 +12907,11 @@ "location": "query", "type": "string" }, + "withExtendedNotifications": { + "description": "Determines whether the customers receive notifications before migration. Only applicable to SF vms.", + "location": "query", + "type": "boolean" + }, "zone": { "description": "The name of the zone for this request.", "location": "path", @@ -40215,7 +40267,7 @@ } } }, - "revision": "20231128", + "revision": "20231231", "rootUrl": "https://compute.googleapis.com/", "schemas": { "AWSV4Signature": { @@ -44765,7 +44817,7 @@ "description": "The condition that is associated with this binding. If the condition evaluates to `true`, then this binding applies to the current request. If the condition evaluates to `false`, then this binding does not apply to the current request. However, a different role binding might grant the same role to one or more of the principals in this binding. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies)." }, "members": { - "description": "Specifies the principals requesting access for a Google Cloud resource. `members` can have the following values: * `allUsers`: A special identifier that represents anyone who is on the internet; with or without a Google account. * `allAuthenticatedUsers`: A special identifier that represents anyone who is authenticated with a Google account or a service account. Does not include identities that come from external identity providers (IdPs) through identity federation. * `user:{emailid}`: An email address that represents a specific Google account. For example, `alice@example.com` . * `serviceAccount:{emailid}`: An email address that represents a Google service account. For example, `my-other-app@appspot.gserviceaccount.com`. * `serviceAccount:{projectid}.svc.id.goog[{namespace}/{kubernetes-sa}]`: An identifier for a [Kubernetes service account](https://cloud.google.com/kubernetes-engine/docs/how-to/kubernetes-service-accounts). For example, `my-project.svc.id.goog[my-namespace/my-kubernetes-sa]`. * `group:{emailid}`: An email address that represents a Google group. For example, `admins@example.com`. * `domain:{domain}`: The G Suite domain (primary) that represents all the users of that domain. For example, `google.com` or `example.com`. * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a user that has been recently deleted. For example, `alice@example.com?uid=123456789012345678901`. If the user is recovered, this value reverts to `user:{emailid}` and the recovered user retains the role in the binding. * `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a service account that has been recently deleted. For example, `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`. If the service account is undeleted, this value reverts to `serviceAccount:{emailid}` and the undeleted service account retains the role in the binding. * `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a Google group that has been recently deleted. For example, `admins@example.com?uid=123456789012345678901`. If the group is recovered, this value reverts to `group:{emailid}` and the recovered group retains the role in the binding.", + "description": "Specifies the principals requesting access for a Google Cloud resource. `members` can have the following values: * `allUsers`: A special identifier that represents anyone who is on the internet; with or without a Google account. * `allAuthenticatedUsers`: A special identifier that represents anyone who is authenticated with a Google account or a service account. Does not include identities that come from external identity providers (IdPs) through identity federation. * `user:{emailid}`: An email address that represents a specific Google account. For example, `alice@example.com` . * `serviceAccount:{emailid}`: An email address that represents a Google service account. For example, `my-other-app@appspot.gserviceaccount.com`. * `serviceAccount:{projectid}.svc.id.goog[{namespace}/{kubernetes-sa}]`: An identifier for a [Kubernetes service account](https://cloud.google.com/kubernetes-engine/docs/how-to/kubernetes-service-accounts). For example, `my-project.svc.id.goog[my-namespace/my-kubernetes-sa]`. * `group:{emailid}`: An email address that represents a Google group. For example, `admins@example.com`. * `domain:{domain}`: The G Suite domain (primary) that represents all the users of that domain. For example, `google.com` or `example.com`. * `principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/subject/{subject_attribute_value}`: A single identity in a workforce identity pool. * `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/group/{group_id}`: All workforce identities in a group. * `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/attribute.{attribute_name}/{attribute_value}`: All workforce identities with a specific attribute value. * `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/*`: All identities in a workforce identity pool. * `principal://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/subject/{subject_attribute_value}`: A single identity in a workload identity pool. * `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/group/{group_id}`: A workload identity pool group. * `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/attribute.{attribute_name}/{attribute_value}`: All identities in a workload identity pool with a certain attribute. * `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/*`: All identities in a workload identity pool. * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a user that has been recently deleted. For example, `alice@example.com?uid=123456789012345678901`. If the user is recovered, this value reverts to `user:{emailid}` and the recovered user retains the role in the binding. * `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a service account that has been recently deleted. For example, `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`. If the service account is undeleted, this value reverts to `serviceAccount:{emailid}` and the undeleted service account retains the role in the binding. * `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a Google group that has been recently deleted. For example, `admins@example.com?uid=123456789012345678901`. If the group is recovered, this value reverts to `group:{emailid}` and the recovered group retains the role in the binding. * `deleted:principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/subject/{subject_attribute_value}`: Deleted single identity in a workforce identity pool. For example, `deleted:principal://iam.googleapis.com/locations/global/workforcePools/my-pool-id/subject/my-subject-attribute-value`.", "items": { "type": "string" }, @@ -45031,6 +45083,13 @@ "description": "[Output Only] Commitment end time in RFC3339 text format.", "type": "string" }, + "existingReservations": { + "description": "Specifies the already existing reservations to attach to the Commitment. This field is optional, and it can be a full or partial URL. For example, the following are valid URLs to an reservation: - https://www.googleapis.com/compute/v1/projects/project/zones/zone /reservations/reservation - projects/project/zones/zone/reservations/reservation ", + "items": { + "type": "string" + }, + "type": "array" + }, "id": { "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", "format": "uint64", @@ -45076,7 +45135,7 @@ "type": "string" }, "reservations": { - "description": "List of create-on-create reseravtions for this commitment.", + "description": "List of create-on-create reservations for this commitment.", "items": { "$ref": "Reservation" }, @@ -46129,6 +46188,11 @@ "$ref": "DiskResourceStatus", "description": "[Output Only] Status information for the disk resource." }, + "satisfiesPzi": { + "description": "Output only. Reserved for future use.", + "readOnly": true, + "type": "boolean" + }, "satisfiesPzs": { "description": "[Output Only] Reserved for future use.", "type": "boolean" @@ -50482,10 +50546,11 @@ "id": "GuestOsFeature", "properties": { "type": { - "description": "The ID of a supported feature. To add multiple values, use commas to separate values. Set to one or more of the following values: - VIRTIO_SCSI_MULTIQUEUE - WINDOWS - MULTI_IP_SUBNET - UEFI_COMPATIBLE - GVNIC - SEV_CAPABLE - SUSPEND_RESUME_COMPATIBLE - SEV_LIVE_MIGRATABLE - SEV_SNP_CAPABLE For more information, see Enabling guest operating system features.", + "description": "The ID of a supported feature. To add multiple values, use commas to separate values. Set to one or more of the following values: - VIRTIO_SCSI_MULTIQUEUE - WINDOWS - MULTI_IP_SUBNET - UEFI_COMPATIBLE - GVNIC - SEV_CAPABLE - SUSPEND_RESUME_COMPATIBLE - SEV_LIVE_MIGRATABLE - SEV_SNP_CAPABLE - IDPF For more information, see Enabling guest operating system features.", "enum": [ "FEATURE_TYPE_UNSPECIFIED", "GVNIC", + "IDPF", "MULTI_IP_SUBNET", "SECURE_BOOT", "SEV_CAPABLE", @@ -50507,6 +50572,7 @@ "", "", "", + "", "" ], "type": "string" @@ -51529,6 +51595,21 @@ "description": "For target pool based Network Load Balancing, it indicates the forwarding rule's IP address assigned to this instance. For other types of load balancing, the field indicates VM internal ip.", "type": "string" }, + "ipv6Address": { + "type": "string" + }, + "ipv6HealthState": { + "description": "Health state of the IPv6 address of the instance.", + "enum": [ + "HEALTHY", + "UNHEALTHY" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, "port": { "description": "The named port of the instance group, not necessarily the port that is health-checked.", "format": "int32", @@ -52635,6 +52716,11 @@ "$ref": "RolloutPolicy", "description": "A rollout policy to apply to this image. When specified, the rollout policy overrides per-zone references to the image via the associated image family. The rollout policy restricts the zones where this image is accessible when using a zonal image family reference. When the rollout policy does not include the user specified zone, or if the zone is rolled out, this image is accessible. The rollout policy for this image is read-only, except for allowlisted users. This field might not be configured. To view the latest non-deprecated image in a specific zone, use the imageFamilyViews.get method." }, + "satisfiesPzi": { + "description": "Output only. Reserved for future use.", + "readOnly": true, + "type": "boolean" + }, "satisfiesPzs": { "description": "[Output Only] Reserved for future use.", "type": "boolean" @@ -54533,7 +54619,7 @@ "id": "InstanceGroupManagerResizeRequestStatus", "properties": { "error": { - "description": "Errors encountered during the queueing or provisioning phases of the ResizeRequest.", + "description": "[Output only] Fatal errors encountered during the queueing or provisioning phases of the ResizeRequest that caused the transition to the FAILED state. As a contrary to the last_attempt errors, this field is final and errors are never removed from here, as the RR is not going to retry.", "properties": { "errors": { "description": "[Output Only] The array of errors encountered while processing this operation.", @@ -54739,6 +54825,7 @@ "id": "InstanceGroupManagerStandbyPolicy", "properties": { "initialDelaySec": { + "description": "Specifies the number of seconds that the MIG should wait to suspend or stop a VM after that VM was created. The initial delay gives the initialization script the time to prepare your VM for a quick scale out. The value of initial delay must be between 0 and 3600 seconds. The default value is 0.", "format": "int32", "type": "integer" }, @@ -57496,6 +57583,11 @@ "$ref": "InstantSnapshotResourceStatus", "description": "[Output Only] Status information for the instant snapshot resource." }, + "satisfiesPzi": { + "description": "Output only. Reserved for future use.", + "readOnly": true, + "type": "boolean" + }, "satisfiesPzs": { "description": "[Output Only] Reserved for future use.", "type": "boolean" @@ -60751,6 +60843,11 @@ "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "type": "string" }, + "satisfiesPzi": { + "description": "Output only. Reserved for future use.", + "readOnly": true, + "type": "boolean" + }, "satisfiesPzs": { "description": "[Output Only] Reserved for future use.", "type": "boolean" @@ -61610,6 +61707,24 @@ "$ref": "ManagedInstancePropertiesFromFlexibilityPolicy", "description": "[Output Only] Instance properties selected for this instance resulting from InstanceFlexibilityPolicy." }, + "targetStatus": { + "description": "[Output Only] The eventual status of the instance. The instance group manager will not be identified as stable till each managed instance reaches its targetStatus.", + "enum": [ + "ABANDONED", + "DELETED", + "RUNNING", + "STOPPED", + "SUSPENDED" + ], + "enumDescriptions": [ + "The managed instance will eventually be ABANDONED, i.e. dissociated from the managed instance group.", + "The managed instance will eventually be DELETED.", + "The managed instance will eventually reach status RUNNING.", + "The managed instance will eventually reach status TERMINATED.", + "The managed instance will eventually reach status SUSPENDED." + ], + "type": "string" + }, "version": { "$ref": "ManagedInstanceVersion", "description": "[Output Only] Intended version of this instance." @@ -66620,7 +66735,7 @@ "type": "object" }, "Operation": { - "description": "Represents an Operation resource. Google Compute Engine has three Operation resources: * [Global](/compute/docs/reference/rest/beta/globalOperations) * [Regional](/compute/docs/reference/rest/beta/regionOperations) * [Zonal](/compute/docs/reference/rest/beta/zoneOperations) You can use an operation resource to manage asynchronous API requests. For more information, read Handling API responses. Operations can be global, regional or zonal. - For global operations, use the `globalOperations` resource. - For regional operations, use the `regionOperations` resource. - For zonal operations, use the `zoneOperations` resource. For more information, read Global, Regional, and Zonal Resources.", + "description": "Represents an Operation resource. Google Compute Engine has three Operation resources: * [Global](/compute/docs/reference/rest/beta/globalOperations) * [Regional](/compute/docs/reference/rest/beta/regionOperations) * [Zonal](/compute/docs/reference/rest/beta/zoneOperations) You can use an operation resource to manage asynchronous API requests. For more information, read Handling API responses. Operations can be global, regional or zonal. - For global operations, use the `globalOperations` resource. - For regional operations, use the `regionOperations` resource. - For zonal operations, use the `zoneOperations` resource. For more information, read Global, Regional, and Zonal Resources. Note that completed Operation resources have a limited retention period.", "id": "Operation", "properties": { "clientOperationId": { @@ -67735,14 +67850,14 @@ "id": "PacketMirroringFilter", "properties": { "IPProtocols": { - "description": "Protocols that apply as filter on mirrored traffic. If no protocols are specified, all traffic that matches the specified CIDR ranges is mirrored. If neither cidrRanges nor IPProtocols is specified, all traffic is mirrored.", + "description": "Protocols that apply as filter on mirrored traffic. If no protocols are specified, all traffic that matches the specified CIDR ranges is mirrored. If neither cidrRanges nor IPProtocols is specified, all IPv4 traffic is mirrored.", "items": { "type": "string" }, "type": "array" }, "cidrRanges": { - "description": "IP CIDR ranges that apply as filter on the source (ingress) or destination (egress) IP in the IP header. Only IPv4 is supported. If no ranges are specified, all traffic that matches the specified IPProtocols is mirrored. If neither cidrRanges nor IPProtocols is specified, all traffic is mirrored.", + "description": "One or more IPv4 or IPv6 CIDR ranges that apply as filter on the source (ingress) or destination (egress) IP in the IP header. If no ranges are specified, all IPv4 traffic that matches the specified IPProtocols is mirrored. If neither cidrRanges nor IPProtocols is specified, all IPv4 traffic is mirrored. To mirror all IPv4 and IPv6 traffic, use \"0.0.0.0/0,::/0\". Note: Support for IPv6 traffic is in preview.", "items": { "type": "string" }, @@ -69534,6 +69649,7 @@ "COMMITTED_N2_CPUS", "COMMITTED_NVIDIA_A100_80GB_GPUS", "COMMITTED_NVIDIA_A100_GPUS", + "COMMITTED_NVIDIA_H100_GPUS", "COMMITTED_NVIDIA_K80_GPUS", "COMMITTED_NVIDIA_L4_GPUS", "COMMITTED_NVIDIA_P100_GPUS", @@ -69609,6 +69725,7 @@ "PREEMPTIBLE_LOCAL_SSD_GB", "PREEMPTIBLE_NVIDIA_A100_80GB_GPUS", "PREEMPTIBLE_NVIDIA_A100_GPUS", + "PREEMPTIBLE_NVIDIA_H100_GPUS", "PREEMPTIBLE_NVIDIA_K80_GPUS", "PREEMPTIBLE_NVIDIA_L4_GPUS", "PREEMPTIBLE_NVIDIA_P100_GPUS", @@ -69700,6 +69817,7 @@ "", "", "", + "", "Guest CPUs", "", "", @@ -69801,6 +69919,7 @@ "", "", "", + "", "The total number of snapshots allowed for a single project.", "", "", @@ -74636,6 +74755,10 @@ "bfdStatus": { "$ref": "BfdStatus" }, + "enableIpv4": { + "description": "Enable IPv4 traffic over BGP Peer. It is enabled by default if the peerIpAddress is version 4.", + "type": "boolean" + }, "enableIpv6": { "description": "Enable IPv6 traffic over BGP Peer. If not specified, it is disabled by default.", "type": "boolean" @@ -74644,6 +74767,10 @@ "description": "IP address of the local BGP interface.", "type": "string" }, + "ipv4NexthopAddress": { + "description": "IPv4 address of the local BGP interface.", + "type": "string" + }, "ipv6NexthopAddress": { "description": "IPv6 address of the local BGP interface.", "type": "string" @@ -74669,6 +74796,10 @@ "description": "IP address of the remote BGP interface.", "type": "string" }, + "peerIpv4NexthopAddress": { + "description": "IPv4 address of the remote BGP interface.", + "type": "string" + }, "peerIpv6NexthopAddress": { "description": "IPv6 address of the remote BGP interface.", "type": "string" @@ -74698,10 +74829,14 @@ "statusReason": { "description": "Indicates why particular status was returned.", "enum": [ + "IPV4_PEER_ON_IPV6_ONLY_CONNECTION", + "IPV6_PEER_ON_IPV4_ONLY_CONNECTION", "MD5_AUTH_INTERNAL_PROBLEM", "STATUS_REASON_UNSPECIFIED" ], "enumDescriptions": [ + "BGP peer disabled because it requires IPv4 but the underlying connection is IPv6-only.", + "BGP peer disabled because it requires IPv6 but the underlying connection is IPv4-only.", "Indicates internal problems with configuration of MD5 authentication. This particular reason can only be returned when md5AuthEnabled is true and status is DOWN.", "" ], @@ -75776,7 +75911,7 @@ "type": "string" }, "displayName": { - "description": "User-provided name of the Organization security plicy. 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.", + "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" }, @@ -76472,7 +76607,7 @@ "properties": { "recaptchaOptions": { "$ref": "SecurityPolicyRuleMatcherExprOptionsRecaptchaOptions", - "description": "reCAPTCHA configuration options to be applied for the rule. If the rule does not evaluate reCAPTCHA tokens, this field will have no effect." + "description": "reCAPTCHA configuration options to be applied for the rule. If the rule does not evaluate reCAPTCHA tokens, this field has no effect." } }, "type": "object" @@ -77990,6 +78125,11 @@ "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "type": "string" }, + "satisfiesPzi": { + "description": "Output only. Reserved for future use.", + "readOnly": true, + "type": "boolean" + }, "satisfiesPzs": { "description": "[Output Only] Reserved for future use.", "type": "boolean" @@ -79911,7 +80051,7 @@ "type": "string" }, "purpose": { - "description": "The purpose of the resource. This field can be either PRIVATE, REGIONAL_MANAGED_PROXY, PRIVATE_SERVICE_CONNECT, or INTERNAL_HTTPS_LOAD_BALANCER. PRIVATE is the default purpose for user-created subnets or subnets that are automatically created in auto mode networks. A subnet with purpose set to REGIONAL_MANAGED_PROXY is a user-created subnetwork that is reserved for regional Envoy-based load balancers. A subnet with purpose set to PRIVATE_SERVICE_CONNECT is used to publish services using Private Service Connect. A subnet with purpose set to INTERNAL_HTTPS_LOAD_BALANCER is a proxy-only subnet that can be used only by regional internal HTTP(S) load balancers. Note that REGIONAL_MANAGED_PROXY is the preferred setting for all regional Envoy load balancers. If unspecified, the subnet purpose defaults to PRIVATE. The enableFlowLogs field isn't supported if the subnet purpose field is set to REGIONAL_MANAGED_PROXY.", + "description": "The purpose of the resource. This field can be either PRIVATE, GLOBAL_MANAGED_PROXY, REGIONAL_MANAGED_PROXY, PRIVATE_SERVICE_CONNECT, or PRIVATE is the default purpose for user-created subnets or subnets that are automatically created in auto mode networks. Subnets with purpose set to GLOBAL_MANAGED_PROXY or REGIONAL_MANAGED_PROXY are user-created subnetworks that are reserved for Envoy-based load balancers. A subnet with purpose set to PRIVATE_SERVICE_CONNECT is used to publish services using Private Service Connect. If unspecified, the subnet purpose defaults to PRIVATE. The enableFlowLogs field isn't supported if the subnet purpose field is set to GLOBAL_MANAGED_PROXY or REGIONAL_MANAGED_PROXY.", "enum": [ "GLOBAL_MANAGED_PROXY", "INTERNAL_HTTPS_LOAD_BALANCER", @@ -79923,7 +80063,7 @@ ], "enumDescriptions": [ "Subnet reserved for Global Envoy-based Load Balancing.", - "Subnet reserved for Internal HTTP(S) Load Balancing.", + "Subnet reserved for Internal HTTP(S) Load Balancing. This is a legacy purpose, please use REGIONAL_MANAGED_PROXY instead.", "Regular user created or automatically created subnet.", "Subnetwork used as source range for Private NAT Gateways.", "Regular user created or automatically created subnet.", @@ -79941,7 +80081,7 @@ "type": "string" }, "role": { - "description": "The role of subnetwork. Currently, this field is only used when purpose = REGIONAL_MANAGED_PROXY. The value can be set to ACTIVE or BACKUP. An ACTIVE subnetwork is one that is currently being used for Envoy-based load balancers in a region. A BACKUP subnetwork is one that is ready to be promoted to ACTIVE or is currently draining. This field can be updated with a patch request.", + "description": "The role of subnetwork. Currently, this field is only used when purpose is set to GLOBAL_MANAGED_PROXY or REGIONAL_MANAGED_PROXY. The value can be set to ACTIVE or BACKUP. An ACTIVE subnetwork is one that is currently being used for Envoy-based load balancers in a region. A BACKUP subnetwork is one that is ready to be promoted to ACTIVE or is currently draining. This field can be updated with a patch request.", "enum": [ "ACTIVE", "BACKUP" @@ -85238,7 +85378,7 @@ "type": "string" }, "purpose": { - "description": "The purpose of the resource. This field can be either PRIVATE, REGIONAL_MANAGED_PROXY, PRIVATE_SERVICE_CONNECT, or INTERNAL_HTTPS_LOAD_BALANCER. PRIVATE is the default purpose for user-created subnets or subnets that are automatically created in auto mode networks. A subnet with purpose set to REGIONAL_MANAGED_PROXY is a user-created subnetwork that is reserved for regional Envoy-based load balancers. A subnet with purpose set to PRIVATE_SERVICE_CONNECT is used to publish services using Private Service Connect. A subnet with purpose set to INTERNAL_HTTPS_LOAD_BALANCER is a proxy-only subnet that can be used only by regional internal HTTP(S) load balancers. Note that REGIONAL_MANAGED_PROXY is the preferred setting for all regional Envoy load balancers. If unspecified, the subnet purpose defaults to PRIVATE. The enableFlowLogs field isn't supported if the subnet purpose field is set to REGIONAL_MANAGED_PROXY.", + "description": "The purpose of the resource. This field can be either PRIVATE, GLOBAL_MANAGED_PROXY, REGIONAL_MANAGED_PROXY, PRIVATE_SERVICE_CONNECT, or PRIVATE is the default purpose for user-created subnets or subnets that are automatically created in auto mode networks. Subnets with purpose set to GLOBAL_MANAGED_PROXY or REGIONAL_MANAGED_PROXY are user-created subnetworks that are reserved for Envoy-based load balancers. A subnet with purpose set to PRIVATE_SERVICE_CONNECT is used to publish services using Private Service Connect. If unspecified, the subnet purpose defaults to PRIVATE. The enableFlowLogs field isn't supported if the subnet purpose field is set to GLOBAL_MANAGED_PROXY or REGIONAL_MANAGED_PROXY.", "enum": [ "GLOBAL_MANAGED_PROXY", "INTERNAL_HTTPS_LOAD_BALANCER", @@ -85250,7 +85390,7 @@ ], "enumDescriptions": [ "Subnet reserved for Global Envoy-based Load Balancing.", - "Subnet reserved for Internal HTTP(S) Load Balancing.", + "Subnet reserved for Internal HTTP(S) Load Balancing. This is a legacy purpose, please use REGIONAL_MANAGED_PROXY instead.", "Regular user created or automatically created subnet.", "Subnetwork used as source range for Private NAT Gateways.", "Regular user created or automatically created subnet.", @@ -85260,7 +85400,7 @@ "type": "string" }, "role": { - "description": "The role of subnetwork. Currently, this field is only used when purpose = REGIONAL_MANAGED_PROXY. The value can be set to ACTIVE or BACKUP. An ACTIVE subnetwork is one that is currently being used for Envoy-based load balancers in a region. A BACKUP subnetwork is one that is ready to be promoted to ACTIVE or is currently draining. This field can be updated with a patch request.", + "description": "The role of subnetwork. Currently, this field is only used when purpose is set to GLOBAL_MANAGED_PROXY or REGIONAL_MANAGED_PROXY. The value can be set to ACTIVE or BACKUP. An ACTIVE subnetwork is one that is currently being used for Envoy-based load balancers in a region. A BACKUP subnetwork is one that is ready to be promoted to ACTIVE or is currently draining. This field can be updated with a patch request.", "enum": [ "ACTIVE", "BACKUP" @@ -85806,11 +85946,13 @@ "description": "The stack type for this VPN gateway to identify the IP protocols that are enabled. Possible values are: IPV4_ONLY, IPV4_IPV6. If not specified, IPV4_ONLY will be used.", "enum": [ "IPV4_IPV6", - "IPV4_ONLY" + "IPV4_ONLY", + "IPV6_ONLY" ], "enumDescriptions": [ "Enable VPN gateway with both IPv4 and IPv6 protocols.", - "Enable VPN gateway with only IPv4 protocol." + "Enable VPN gateway with only IPv4 protocol.", + "Enable VPN gateway with only IPv6 protocol." ], "type": "string" }, diff --git a/compute/v0.beta/compute-gen.go b/compute/v0.beta/compute-gen.go index e08f2ef886d..1d3abac21c4 100644 --- a/compute/v0.beta/compute-gen.go +++ b/compute/v0.beta/compute-gen.go @@ -8091,11 +8091,34 @@ type Binding struct { // For example, `admins@example.com`. * `domain:{domain}`: The G Suite // domain (primary) that represents all the users of that domain. For // example, `google.com` or `example.com`. * - // `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus - // unique identifier) representing a user that has been recently - // deleted. For example, `alice@example.com?uid=123456789012345678901`. - // If the user is recovered, this value reverts to `user:{emailid}` and - // the recovered user retains the role in the binding. * + // `principal://iam.googleapis.com/locations/global/workforcePools/{pool_ + // id}/subject/{subject_attribute_value}`: A single identity in a + // workforce identity pool. * + // `principalSet://iam.googleapis.com/locations/global/workforcePools/{po + // ol_id}/group/{group_id}`: All workforce identities in a group. * + // `principalSet://iam.googleapis.com/locations/global/workforcePools/{po + // ol_id}/attribute.{attribute_name}/{attribute_value}`: All workforce + // identities with a specific attribute value. * + // `principalSet://iam.googleapis.com/locations/global/workforcePools/{po + // ol_id}/*`: All identities in a workforce identity pool. * + // `principal://iam.googleapis.com/projects/{project_number}/locations/gl + // obal/workloadIdentityPools/{pool_id}/subject/{subject_attribute_value} + // `: A single identity in a workload identity pool. * + // `principalSet://iam.googleapis.com/projects/{project_number}/locations + // /global/workloadIdentityPools/{pool_id}/group/{group_id}`: A workload + // identity pool group. * + // `principalSet://iam.googleapis.com/projects/{project_number}/locations + // /global/workloadIdentityPools/{pool_id}/attribute.{attribute_name}/{at + // tribute_value}`: All identities in a workload identity pool with a + // certain attribute. * + // `principalSet://iam.googleapis.com/projects/{project_number}/locations + // /global/workloadIdentityPools/{pool_id}/*`: All identities in a + // workload identity pool. * `deleted:user:{emailid}?uid={uniqueid}`: An + // email address (plus unique identifier) representing a user that has + // been recently deleted. For example, + // `alice@example.com?uid=123456789012345678901`. If the user is + // recovered, this value reverts to `user:{emailid}` and the recovered + // user retains the role in the binding. * // `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address // (plus unique identifier) representing a service account that has been // recently deleted. For example, @@ -8107,7 +8130,12 @@ type Binding struct { // that has been recently deleted. For example, // `admins@example.com?uid=123456789012345678901`. If the group is // recovered, this value reverts to `group:{emailid}` and the recovered - // group retains the role in the binding. + // group retains the role in the binding. * + // `deleted:principal://iam.googleapis.com/locations/global/workforcePool + // s/{pool_id}/subject/{subject_attribute_value}`: Deleted single + // identity in a workforce identity pool. For example, + // `deleted:principal://iam.googleapis.com/locations/global/workforcePool + // s/my-pool-id/subject/my-subject-attribute-value`. Members []string `json:"members,omitempty"` // Role: Role that is assigned to the list of `members`, or principals. @@ -8561,6 +8589,15 @@ type Commitment struct { // format. EndTimestamp string `json:"endTimestamp,omitempty"` + // ExistingReservations: Specifies the already existing reservations to + // attach to the Commitment. This field is optional, and it can be a + // full or partial URL. For example, the following are valid URLs to an + // reservation: - + // https://www.googleapis.com/compute/v1/projects/project/zones/zone + // /reservations/reservation - + // projects/project/zones/zone/reservations/reservation + ExistingReservations []string `json:"existingReservations,omitempty"` + // Id: [Output Only] The unique identifier for the resource. This // identifier is defined by the server. Id uint64 `json:"id,omitempty,string"` @@ -8600,7 +8637,7 @@ type Commitment struct { // used. Region string `json:"region,omitempty"` - // Reservations: List of create-on-create reseravtions for this + // Reservations: List of create-on-create reservations for this // commitment. Reservations []*Reservation `json:"reservations,omitempty"` @@ -10014,6 +10051,9 @@ type Disk struct { // resource. ResourceStatus *DiskResourceStatus `json:"resourceStatus,omitempty"` + // SatisfiesPzi: Output only. Reserved for future use. + SatisfiesPzi bool `json:"satisfiesPzi,omitempty"` + // SatisfiesPzs: [Output Only] Reserved for future use. SatisfiesPzs bool `json:"satisfiesPzs,omitempty"` @@ -16347,12 +16387,13 @@ type GuestOsFeature struct { // commas to separate values. Set to one or more of the following // values: - VIRTIO_SCSI_MULTIQUEUE - WINDOWS - MULTI_IP_SUBNET - // UEFI_COMPATIBLE - GVNIC - SEV_CAPABLE - SUSPEND_RESUME_COMPATIBLE - - // SEV_LIVE_MIGRATABLE - SEV_SNP_CAPABLE For more information, see - // Enabling guest operating system features. + // SEV_LIVE_MIGRATABLE - SEV_SNP_CAPABLE - IDPF For more information, + // see Enabling guest operating system features. // // Possible values: // "FEATURE_TYPE_UNSPECIFIED" // "GVNIC" + // "IDPF" // "MULTI_IP_SUBNET" // "SECURE_BOOT" // "SEV_CAPABLE" @@ -17801,6 +17842,15 @@ type HealthStatus struct { // types of load balancing, the field indicates VM internal ip. IpAddress string `json:"ipAddress,omitempty"` + Ipv6Address string `json:"ipv6Address,omitempty"` + + // Ipv6HealthState: Health state of the IPv6 address of the instance. + // + // Possible values: + // "HEALTHY" + // "UNHEALTHY" + Ipv6HealthState string `json:"ipv6HealthState,omitempty"` + // Port: The named port of the instance group, not necessarily the port // that is health-checked. Port int64 `json:"port,omitempty"` @@ -19603,6 +19653,9 @@ type Image struct { // imageFamilyViews.get method. RolloutOverride *RolloutPolicy `json:"rolloutOverride,omitempty"` + // SatisfiesPzi: Output only. Reserved for future use. + SatisfiesPzi bool `json:"satisfiesPzi,omitempty"` + // SatisfiesPzs: [Output Only] Reserved for future use. SatisfiesPzs bool `json:"satisfiesPzs,omitempty"` @@ -22084,8 +22137,11 @@ func (s *InstanceGroupManagerResizeRequest) MarshalJSON() ([]byte, error) { } type InstanceGroupManagerResizeRequestStatus struct { - // Error: Errors encountered during the queueing or provisioning phases - // of the ResizeRequest. + // Error: [Output only] Fatal errors encountered during the queueing or + // provisioning phases of the ResizeRequest that caused the transition + // to the FAILED state. As a contrary to the last_attempt errors, this + // field is final and errors are never removed from here, as the RR is + // not going to retry. Error *InstanceGroupManagerResizeRequestStatusError `json:"error,omitempty"` // ForceSendFields is a list of field names (e.g. "Error") to @@ -22111,8 +22167,11 @@ func (s *InstanceGroupManagerResizeRequestStatus) MarshalJSON() ([]byte, error) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// InstanceGroupManagerResizeRequestStatusError: Errors encountered -// during the queueing or provisioning phases of the ResizeRequest. +// InstanceGroupManagerResizeRequestStatusError: [Output only] Fatal +// errors encountered during the queueing or provisioning phases of the +// ResizeRequest that caused the transition to the FAILED state. As a +// contrary to the last_attempt errors, this field is final and errors +// are never removed from here, as the RR is not going to retry. type InstanceGroupManagerResizeRequestStatusError struct { // Errors: [Output Only] The array of errors encountered while // processing this operation. @@ -22410,6 +22469,11 @@ func (s *InstanceGroupManagerResizeRequestsListResponseWarningData) MarshalJSON( } type InstanceGroupManagerStandbyPolicy struct { + // InitialDelaySec: Specifies the number of seconds that the MIG should + // wait to suspend or stop a VM after that VM was created. The initial + // delay gives the initialization script the time to prepare your VM for + // a quick scale out. The value of initial delay must be between 0 and + // 3600 seconds. The default value is 0. InitialDelaySec int64 `json:"initialDelaySec,omitempty"` // Mode: Defines how a MIG resumes or starts VMs from a standby pool @@ -26650,6 +26714,9 @@ type InstantSnapshot struct { // snapshot resource. ResourceStatus *InstantSnapshotResourceStatus `json:"resourceStatus,omitempty"` + // SatisfiesPzi: Output only. Reserved for future use. + SatisfiesPzi bool `json:"satisfiesPzi,omitempty"` + // SatisfiesPzs: [Output Only] Reserved for future use. SatisfiesPzs bool `json:"satisfiesPzs,omitempty"` @@ -31217,6 +31284,9 @@ type MachineImage struct { // last character, which cannot be a dash. Name string `json:"name,omitempty"` + // SatisfiesPzi: Output only. Reserved for future use. + SatisfiesPzi bool `json:"satisfiesPzi,omitempty"` + // SatisfiesPzs: [Output Only] Reserved for future use. SatisfiesPzs bool `json:"satisfiesPzs,omitempty"` @@ -32290,6 +32360,22 @@ type ManagedInstance struct { // selected for this instance resulting from InstanceFlexibilityPolicy. PropertiesFromFlexibilityPolicy *ManagedInstancePropertiesFromFlexibilityPolicy `json:"propertiesFromFlexibilityPolicy,omitempty"` + // TargetStatus: [Output Only] The eventual status of the instance. The + // instance group manager will not be identified as stable till each + // managed instance reaches its targetStatus. + // + // Possible values: + // "ABANDONED" - The managed instance will eventually be ABANDONED, + // i.e. dissociated from the managed instance group. + // "DELETED" - The managed instance will eventually be DELETED. + // "RUNNING" - The managed instance will eventually reach status + // RUNNING. + // "STOPPED" - The managed instance will eventually reach status + // TERMINATED. + // "SUSPENDED" - The managed instance will eventually reach status + // SUSPENDED. + TargetStatus string `json:"targetStatus,omitempty"` + // Version: [Output Only] Intended version of this instance. Version *ManagedInstanceVersion `json:"version,omitempty"` @@ -39214,7 +39300,8 @@ func (s *NotificationEndpointListWarningData) MarshalJSON() ([]byte, error) { // `globalOperations` resource. - For regional operations, use the // `regionOperations` resource. - For zonal operations, use the // `zoneOperations` resource. For more information, read Global, -// Regional, and Zonal Resources. +// Regional, and Zonal Resources. Note that completed Operation +// resources have a limited retention period. type Operation struct { // ClientOperationId: [Output Only] The value of `requestId` if you // provided it in the request. Not present otherwise. @@ -40659,14 +40746,16 @@ type PacketMirroringFilter struct { // IPProtocols: Protocols that apply as filter on mirrored traffic. If // no protocols are specified, all traffic that matches the specified // CIDR ranges is mirrored. If neither cidrRanges nor IPProtocols is - // specified, all traffic is mirrored. + // specified, all IPv4 traffic is mirrored. IPProtocols []string `json:"IPProtocols,omitempty"` - // CidrRanges: IP CIDR ranges that apply as filter on the source - // (ingress) or destination (egress) IP in the IP header. Only IPv4 is - // supported. If no ranges are specified, all traffic that matches the + // CidrRanges: One or more IPv4 or IPv6 CIDR ranges that apply as filter + // on the source (ingress) or destination (egress) IP in the IP header. + // If no ranges are specified, all IPv4 traffic that matches the // specified IPProtocols is mirrored. If neither cidrRanges nor - // IPProtocols is specified, all traffic is mirrored. + // IPProtocols is specified, all IPv4 traffic is mirrored. To mirror all + // IPv4 and IPv6 traffic, use "0.0.0.0/0,::/0". Note: Support for IPv6 + // traffic is in preview. CidrRanges []string `json:"cidrRanges,omitempty"` // Direction: Direction of traffic to mirror, either INGRESS, EGRESS, or @@ -43290,6 +43379,7 @@ type Quota struct { // "COMMITTED_N2_CPUS" // "COMMITTED_NVIDIA_A100_80GB_GPUS" // "COMMITTED_NVIDIA_A100_GPUS" + // "COMMITTED_NVIDIA_H100_GPUS" // "COMMITTED_NVIDIA_K80_GPUS" // "COMMITTED_NVIDIA_L4_GPUS" // "COMMITTED_NVIDIA_P100_GPUS" @@ -43365,6 +43455,7 @@ type Quota struct { // "PREEMPTIBLE_LOCAL_SSD_GB" // "PREEMPTIBLE_NVIDIA_A100_80GB_GPUS" // "PREEMPTIBLE_NVIDIA_A100_GPUS" + // "PREEMPTIBLE_NVIDIA_H100_GPUS" // "PREEMPTIBLE_NVIDIA_K80_GPUS" // "PREEMPTIBLE_NVIDIA_L4_GPUS" // "PREEMPTIBLE_NVIDIA_P100_GPUS" @@ -50216,6 +50307,10 @@ type RouterStatusBgpPeerStatus struct { BfdStatus *BfdStatus `json:"bfdStatus,omitempty"` + // EnableIpv4: Enable IPv4 traffic over BGP Peer. It is enabled by + // default if the peerIpAddress is version 4. + EnableIpv4 bool `json:"enableIpv4,omitempty"` + // EnableIpv6: Enable IPv6 traffic over BGP Peer. If not specified, it // is disabled by default. EnableIpv6 bool `json:"enableIpv6,omitempty"` @@ -50223,6 +50318,9 @@ type RouterStatusBgpPeerStatus struct { // IpAddress: IP address of the local BGP interface. IpAddress string `json:"ipAddress,omitempty"` + // Ipv4NexthopAddress: IPv4 address of the local BGP interface. + Ipv4NexthopAddress string `json:"ipv4NexthopAddress,omitempty"` + // Ipv6NexthopAddress: IPv6 address of the local BGP interface. Ipv6NexthopAddress string `json:"ipv6NexthopAddress,omitempty"` @@ -50242,6 +50340,9 @@ type RouterStatusBgpPeerStatus struct { // PeerIpAddress: IP address of the remote BGP interface. PeerIpAddress string `json:"peerIpAddress,omitempty"` + // PeerIpv4NexthopAddress: IPv4 address of the remote BGP interface. + PeerIpv4NexthopAddress string `json:"peerIpv4NexthopAddress,omitempty"` + // PeerIpv6NexthopAddress: IPv6 address of the remote BGP interface. PeerIpv6NexthopAddress string `json:"peerIpv6NexthopAddress,omitempty"` @@ -50266,6 +50367,10 @@ type RouterStatusBgpPeerStatus struct { // StatusReason: Indicates why particular status was returned. // // Possible values: + // "IPV4_PEER_ON_IPV6_ONLY_CONNECTION" - BGP peer disabled because it + // requires IPv4 but the underlying connection is IPv6-only. + // "IPV6_PEER_ON_IPV4_ONLY_CONNECTION" - BGP peer disabled because it + // requires IPv6 but the underlying connection is IPv4-only. // "MD5_AUTH_INTERNAL_PROBLEM" - Indicates internal problems with // configuration of MD5 authentication. This particular reason can only // be returned when md5AuthEnabled is true and status is DOWN. @@ -51662,7 +51767,7 @@ type SecurityPolicy struct { // property when you create the resource. Description string `json:"description,omitempty"` - // DisplayName: User-provided name of the Organization security plicy. + // DisplayName: 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 @@ -52801,7 +52906,7 @@ func (s *SecurityPolicyRuleMatcherConfigLayer4Config) MarshalJSON() ([]byte, err type SecurityPolicyRuleMatcherExprOptions struct { // RecaptchaOptions: reCAPTCHA configuration options to be applied for // the rule. If the rule does not evaluate reCAPTCHA tokens, this field - // will have no effect. + // has no effect. RecaptchaOptions *SecurityPolicyRuleMatcherExprOptionsRecaptchaOptions `json:"recaptchaOptions,omitempty"` // ForceSendFields is a list of field names (e.g. "RecaptchaOptions") to @@ -54994,6 +55099,9 @@ type Snapshot struct { // last character, which cannot be a dash. Name string `json:"name,omitempty"` + // SatisfiesPzi: Output only. Reserved for future use. + SatisfiesPzi bool `json:"satisfiesPzi,omitempty"` + // SatisfiesPzs: [Output Only] Reserved for future use. SatisfiesPzs bool `json:"satisfiesPzs,omitempty"` @@ -57563,26 +57671,24 @@ type Subnetwork struct { PrivateIpv6GoogleAccess string `json:"privateIpv6GoogleAccess,omitempty"` // Purpose: The purpose of the resource. This field can be either - // PRIVATE, REGIONAL_MANAGED_PROXY, PRIVATE_SERVICE_CONNECT, or - // INTERNAL_HTTPS_LOAD_BALANCER. PRIVATE is the default purpose for + // PRIVATE, GLOBAL_MANAGED_PROXY, REGIONAL_MANAGED_PROXY, + // PRIVATE_SERVICE_CONNECT, or PRIVATE is the default purpose for // user-created subnets or subnets that are automatically created in - // auto mode networks. A subnet with purpose set to - // REGIONAL_MANAGED_PROXY is a user-created subnetwork that is reserved - // for regional Envoy-based load balancers. A subnet with purpose set to + // auto mode networks. Subnets with purpose set to GLOBAL_MANAGED_PROXY + // or REGIONAL_MANAGED_PROXY are user-created subnetworks that are + // reserved for Envoy-based load balancers. A subnet with purpose set to // PRIVATE_SERVICE_CONNECT is used to publish services using Private - // Service Connect. A subnet with purpose set to - // INTERNAL_HTTPS_LOAD_BALANCER is a proxy-only subnet that can be used - // only by regional internal HTTP(S) load balancers. Note that - // REGIONAL_MANAGED_PROXY is the preferred setting for all regional - // Envoy load balancers. If unspecified, the subnet purpose defaults to + // Service Connect. If unspecified, the subnet purpose defaults to // PRIVATE. The enableFlowLogs field isn't supported if the subnet - // purpose field is set to REGIONAL_MANAGED_PROXY. + // purpose field is set to GLOBAL_MANAGED_PROXY or + // REGIONAL_MANAGED_PROXY. // // Possible values: // "GLOBAL_MANAGED_PROXY" - Subnet reserved for Global Envoy-based // Load Balancing. // "INTERNAL_HTTPS_LOAD_BALANCER" - Subnet reserved for Internal - // HTTP(S) Load Balancing. + // HTTP(S) Load Balancing. This is a legacy purpose, please use + // REGIONAL_MANAGED_PROXY instead. // "PRIVATE" - Regular user created or automatically created subnet. // "PRIVATE_NAT" - Subnetwork used as source range for Private NAT // Gateways. @@ -57602,11 +57708,12 @@ type Subnetwork struct { ReservedInternalRange string `json:"reservedInternalRange,omitempty"` // Role: The role of subnetwork. Currently, this field is only used when - // purpose = REGIONAL_MANAGED_PROXY. The value can be set to ACTIVE or - // BACKUP. An ACTIVE subnetwork is one that is currently being used for - // Envoy-based load balancers in a region. A BACKUP subnetwork is one - // that is ready to be promoted to ACTIVE or is currently draining. This - // field can be updated with a patch request. + // purpose is set to GLOBAL_MANAGED_PROXY or REGIONAL_MANAGED_PROXY. The + // value can be set to ACTIVE or BACKUP. An ACTIVE subnetwork is one + // that is currently being used for Envoy-based load balancers in a + // region. A BACKUP subnetwork is one that is ready to be promoted to + // ACTIVE or is currently draining. This field can be updated with a + // patch request. // // Possible values: // "ACTIVE" - The ACTIVE subnet that is currently used. @@ -65014,26 +65121,24 @@ type UsableSubnetwork struct { Network string `json:"network,omitempty"` // Purpose: The purpose of the resource. This field can be either - // PRIVATE, REGIONAL_MANAGED_PROXY, PRIVATE_SERVICE_CONNECT, or - // INTERNAL_HTTPS_LOAD_BALANCER. PRIVATE is the default purpose for + // PRIVATE, GLOBAL_MANAGED_PROXY, REGIONAL_MANAGED_PROXY, + // PRIVATE_SERVICE_CONNECT, or PRIVATE is the default purpose for // user-created subnets or subnets that are automatically created in - // auto mode networks. A subnet with purpose set to - // REGIONAL_MANAGED_PROXY is a user-created subnetwork that is reserved - // for regional Envoy-based load balancers. A subnet with purpose set to + // auto mode networks. Subnets with purpose set to GLOBAL_MANAGED_PROXY + // or REGIONAL_MANAGED_PROXY are user-created subnetworks that are + // reserved for Envoy-based load balancers. A subnet with purpose set to // PRIVATE_SERVICE_CONNECT is used to publish services using Private - // Service Connect. A subnet with purpose set to - // INTERNAL_HTTPS_LOAD_BALANCER is a proxy-only subnet that can be used - // only by regional internal HTTP(S) load balancers. Note that - // REGIONAL_MANAGED_PROXY is the preferred setting for all regional - // Envoy load balancers. If unspecified, the subnet purpose defaults to + // Service Connect. If unspecified, the subnet purpose defaults to // PRIVATE. The enableFlowLogs field isn't supported if the subnet - // purpose field is set to REGIONAL_MANAGED_PROXY. + // purpose field is set to GLOBAL_MANAGED_PROXY or + // REGIONAL_MANAGED_PROXY. // // Possible values: // "GLOBAL_MANAGED_PROXY" - Subnet reserved for Global Envoy-based // Load Balancing. // "INTERNAL_HTTPS_LOAD_BALANCER" - Subnet reserved for Internal - // HTTP(S) Load Balancing. + // HTTP(S) Load Balancing. This is a legacy purpose, please use + // REGIONAL_MANAGED_PROXY instead. // "PRIVATE" - Regular user created or automatically created subnet. // "PRIVATE_NAT" - Subnetwork used as source range for Private NAT // Gateways. @@ -65046,11 +65151,12 @@ type UsableSubnetwork struct { Purpose string `json:"purpose,omitempty"` // Role: The role of subnetwork. Currently, this field is only used when - // purpose = REGIONAL_MANAGED_PROXY. The value can be set to ACTIVE or - // BACKUP. An ACTIVE subnetwork is one that is currently being used for - // Envoy-based load balancers in a region. A BACKUP subnetwork is one - // that is ready to be promoted to ACTIVE or is currently draining. This - // field can be updated with a patch request. + // purpose is set to GLOBAL_MANAGED_PROXY or REGIONAL_MANAGED_PROXY. The + // value can be set to ACTIVE or BACKUP. An ACTIVE subnetwork is one + // that is currently being used for Envoy-based load balancers in a + // region. A BACKUP subnetwork is one that is ready to be promoted to + // ACTIVE or is currently draining. This field can be updated with a + // patch request. // // Possible values: // "ACTIVE" - The ACTIVE subnet that is currently used. @@ -65790,6 +65896,7 @@ type VpnGateway struct { // Possible values: // "IPV4_IPV6" - Enable VPN gateway with both IPv4 and IPv6 protocols. // "IPV4_ONLY" - Enable VPN gateway with only IPv4 protocol. + // "IPV6_ONLY" - Enable VPN gateway with only IPv6 protocol. StackType string `json:"stackType,omitempty"` // VpnInterfaces: The list of VPN interfaces associated with this VPN @@ -73699,7 +73806,7 @@ type BackendBucketsSetEdgeSecurityPolicyCall struct { // SetEdgeSecurityPolicy: Sets the edge security policy for the // specified backend bucket. // -// - backendBucket: Name of the BackendService resource to which the +// - backendBucket: Name of the BackendBucket resource to which the // security policy should be set. The name should conform to RFC1035. // - project: Project ID for this request. func (r *BackendBucketsService) SetEdgeSecurityPolicy(project string, backendBucket string, securitypolicyreference *SecurityPolicyReference) *BackendBucketsSetEdgeSecurityPolicyCall { @@ -73828,7 +73935,7 @@ func (c *BackendBucketsSetEdgeSecurityPolicyCall) Do(opts ...googleapi.CallOptio // ], // "parameters": { // "backendBucket": { - // "description": "Name of the BackendService resource to which the security policy should be set. The name should conform to RFC1035.", + // "description": "Name of the BackendBucket resource to which the security policy should be set. The name should conform to RFC1035.", // "location": "path", // "required": true, // "type": "string" @@ -118443,6 +118550,184 @@ func (c *InstancesListReferrersCall) Pages(ctx context.Context, f func(*Instance } } +// method id "compute.instances.performMaintenance": + +type InstancesPerformMaintenanceCall struct { + s *Service + project string + zone string + instance string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// PerformMaintenance: Perform a manual maintenance on the instance. +// +// - instance: Name of the instance scoping this request. +// - project: Project ID for this request. +// - zone: The name of the zone for this request. +func (r *InstancesService) PerformMaintenance(project string, zone string, instance string) *InstancesPerformMaintenanceCall { + c := &InstancesPerformMaintenanceCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.zone = zone + c.instance = instance + return c +} + +// RequestId sets the optional parameter "requestId": 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). +func (c *InstancesPerformMaintenanceCall) RequestId(requestId string) *InstancesPerformMaintenanceCall { + c.urlParams_.Set("requestId", requestId) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *InstancesPerformMaintenanceCall) Fields(s ...googleapi.Field) *InstancesPerformMaintenanceCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *InstancesPerformMaintenanceCall) Context(ctx context.Context) *InstancesPerformMaintenanceCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *InstancesPerformMaintenanceCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *InstancesPerformMaintenanceCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{project}/zones/{zone}/instances/{instance}/performMaintenance") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("POST", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "zone": c.zone, + "instance": c.instance, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.instances.performMaintenance" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *InstancesPerformMaintenanceCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Perform a manual maintenance on the instance.", + // "flatPath": "projects/{project}/zones/{zone}/instances/{instance}/performMaintenance", + // "httpMethod": "POST", + // "id": "compute.instances.performMaintenance", + // "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}/performMaintenance", + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute" + // ] + // } + +} + // method id "compute.instances.removeResourcePolicies": type InstancesRemoveResourcePoliciesCall struct { @@ -122010,6 +122295,14 @@ func (c *InstancesSimulateMaintenanceEventCall) RequestId(requestId string) *Ins return c } +// WithExtendedNotifications sets the optional parameter +// "withExtendedNotifications": Determines whether the customers receive +// notifications before migration. Only applicable to SF vms. +func (c *InstancesSimulateMaintenanceEventCall) WithExtendedNotifications(withExtendedNotifications bool) *InstancesSimulateMaintenanceEventCall { + c.urlParams_.Set("withExtendedNotifications", fmt.Sprint(withExtendedNotifications)) + return c +} + // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse // for more information. @@ -122127,6 +122420,11 @@ func (c *InstancesSimulateMaintenanceEventCall) Do(opts ...googleapi.CallOption) // "location": "query", // "type": "string" // }, + // "withExtendedNotifications": { + // "description": "Determines whether the customers receive notifications before migration. Only applicable to SF vms.", + // "location": "query", + // "type": "boolean" + // }, // "zone": { // "description": "The name of the zone for this request.", // "location": "path", diff --git a/playdeveloperreporting/v1alpha1/playdeveloperreporting-api.json b/playdeveloperreporting/v1alpha1/playdeveloperreporting-api.json index fbb61483b78..99c6d5fd6c8 100644 --- a/playdeveloperreporting/v1alpha1/playdeveloperreporting-api.json +++ b/playdeveloperreporting/v1alpha1/playdeveloperreporting-api.json @@ -941,7 +941,7 @@ } } }, - "revision": "20231217", + "revision": "20240101", "rootUrl": "https://playdeveloperreporting.googleapis.com/", "schemas": { "GooglePlayDeveloperReportingV1alpha1Anomaly": { @@ -1175,7 +1175,7 @@ "type": "string" }, "name": { - "description": "The resource name of the issue. Format: apps/{app}/errorIssues/{issue}", + "description": "Identifier. The resource name of the issue. Format: apps/{app}/errorIssues/{issue}", "type": "string" }, "type": { diff --git a/playdeveloperreporting/v1alpha1/playdeveloperreporting-gen.go b/playdeveloperreporting/v1alpha1/playdeveloperreporting-gen.go index e99b41649fe..768e2d95755 100644 --- a/playdeveloperreporting/v1alpha1/playdeveloperreporting-gen.go +++ b/playdeveloperreporting/v1alpha1/playdeveloperreporting-gen.go @@ -934,7 +934,7 @@ type GooglePlayDeveloperReportingV1alpha1ErrorIssue struct { // method name that caused the error. Location string `json:"location,omitempty"` - // Name: The resource name of the issue. Format: + // Name: Identifier. The resource name of the issue. Format: // apps/{app}/errorIssues/{issue} Name string `json:"name,omitempty"` diff --git a/playdeveloperreporting/v1beta1/playdeveloperreporting-api.json b/playdeveloperreporting/v1beta1/playdeveloperreporting-api.json index 4eb12a3ae1d..a7fa1b728ac 100644 --- a/playdeveloperreporting/v1beta1/playdeveloperreporting-api.json +++ b/playdeveloperreporting/v1beta1/playdeveloperreporting-api.json @@ -941,7 +941,7 @@ } } }, - "revision": "20231217", + "revision": "20240101", "rootUrl": "https://playdeveloperreporting.googleapis.com/", "schemas": { "GooglePlayDeveloperReportingV1beta1Anomaly": { @@ -1175,7 +1175,7 @@ "type": "string" }, "name": { - "description": "The resource name of the issue. Format: apps/{app}/errorIssues/{issue}", + "description": "Identifier. The resource name of the issue. Format: apps/{app}/errorIssues/{issue}", "type": "string" }, "type": { diff --git a/playdeveloperreporting/v1beta1/playdeveloperreporting-gen.go b/playdeveloperreporting/v1beta1/playdeveloperreporting-gen.go index 4ba90c88305..342553b022a 100644 --- a/playdeveloperreporting/v1beta1/playdeveloperreporting-gen.go +++ b/playdeveloperreporting/v1beta1/playdeveloperreporting-gen.go @@ -934,7 +934,7 @@ type GooglePlayDeveloperReportingV1beta1ErrorIssue struct { // method name that caused the error. Location string `json:"location,omitempty"` - // Name: The resource name of the issue. Format: + // Name: Identifier. The resource name of the issue. Format: // apps/{app}/errorIssues/{issue} Name string `json:"name,omitempty"` diff --git a/playintegrity/v1/playintegrity-api.json b/playintegrity/v1/playintegrity-api.json index a8e93d8b3bd..9ee22c292ae 100644 --- a/playintegrity/v1/playintegrity-api.json +++ b/playintegrity/v1/playintegrity-api.json @@ -138,7 +138,7 @@ } } }, - "revision": "20231119", + "revision": "20240101", "rootUrl": "https://playintegrity.googleapis.com/", "schemas": { "AccountActivity": { @@ -315,28 +315,22 @@ "MEETS_BASIC_INTEGRITY", "MEETS_DEVICE_INTEGRITY", "MEETS_STRONG_INTEGRITY", - "MEETS_VIRTUAL_INTEGRITY", - "MEETS_WEAK_INTEGRITY" - ], - "enumDeprecated": [ - false, - false, - false, - false, - false, - true + "MEETS_VIRTUAL_INTEGRITY" ], "enumDescriptions": [ "Play does not have sufficient information to evaluate device integrity", "App is running on a device that passes basic system integrity checks, but may not meet Android platform compatibility requirements and may not be approved to run Google Play services.", "App is running on GMS Android device with Google Play services.", "App is running on GMS Android device with Google Play services and has a strong guarantee of system integrity such as a hardware-backed keystore.", - "App is running on an Android emulator with Google Play services which meets core Android compatibility requirements.", - "Deprecated: this enum value will be removed. App is running on a device that passes only weak integrity checks (is a physical device)." + "App is running on an Android emulator with Google Play services which meets core Android compatibility requirements." ], "type": "string" }, "type": "array" + }, + "recentDeviceActivity": { + "$ref": "RecentDeviceActivity", + "description": "Details about the device activity of the device the app is running on." } }, "type": "object" @@ -374,6 +368,33 @@ }, "type": "object" }, + "RecentDeviceActivity": { + "description": "Recent device activity can help developers identify devices that have exhibited hyperactive attestation activity, which could be a sign of an attack or token farming.", + "id": "RecentDeviceActivity", + "properties": { + "deviceActivityLevel": { + "description": "Required. Indicates the activity level of the device.", + "enum": [ + "DEVICE_ACTIVITY_LEVEL_UNSPECIFIED", + "UNEVALUATED", + "LEVEL_1", + "LEVEL_2", + "LEVEL_3", + "LEVEL_4" + ], + "enumDescriptions": [ + "Device activity level has not been set.", + "Device activity level has not been evaluated.", + "Indicates the amount of used tokens. See the documentation for details.", + "Indicates the amount of used tokens. See the documentation for details.", + "Indicates the amount of used tokens. See the documentation for details.", + "Indicates the amount of used tokens. See the documentation for details." + ], + "type": "string" + } + }, + "type": "object" + }, "RequestDetails": { "description": "Contains the integrity request information.", "id": "RequestDetails", diff --git a/playintegrity/v1/playintegrity-gen.go b/playintegrity/v1/playintegrity-gen.go index f2196751b11..ff0022a8e90 100644 --- a/playintegrity/v1/playintegrity-gen.go +++ b/playintegrity/v1/playintegrity-gen.go @@ -453,11 +453,12 @@ type DeviceIntegrity struct { // "MEETS_VIRTUAL_INTEGRITY" - App is running on an Android emulator // with Google Play services which meets core Android compatibility // requirements. - // "MEETS_WEAK_INTEGRITY" - Deprecated: this enum value will be - // removed. App is running on a device that passes only weak integrity - // checks (is a physical device). DeviceRecognitionVerdict []string `json:"deviceRecognitionVerdict,omitempty"` + // RecentDeviceActivity: Details about the device activity of the device + // the app is running on. + RecentDeviceActivity *RecentDeviceActivity `json:"recentDeviceActivity,omitempty"` + // ForceSendFields is a list of field names (e.g. // "DeviceRecognitionVerdict") to unconditionally include in API // requests. By default, fields with empty or default values are omitted @@ -529,6 +530,51 @@ func (s *EnvironmentDetails) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// RecentDeviceActivity: Recent device activity can help developers +// identify devices that have exhibited hyperactive attestation +// activity, which could be a sign of an attack or token farming. +type RecentDeviceActivity struct { + // DeviceActivityLevel: Required. Indicates the activity level of the + // device. + // + // Possible values: + // "DEVICE_ACTIVITY_LEVEL_UNSPECIFIED" - Device activity level has not + // been set. + // "UNEVALUATED" - Device activity level has not been evaluated. + // "LEVEL_1" - Indicates the amount of used tokens. See the + // documentation for details. + // "LEVEL_2" - Indicates the amount of used tokens. See the + // documentation for details. + // "LEVEL_3" - Indicates the amount of used tokens. See the + // documentation for details. + // "LEVEL_4" - Indicates the amount of used tokens. See the + // documentation for details. + DeviceActivityLevel string `json:"deviceActivityLevel,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DeviceActivityLevel") + // to unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "DeviceActivityLevel") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *RecentDeviceActivity) MarshalJSON() ([]byte, error) { + type NoMethod RecentDeviceActivity + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // RequestDetails: Contains the integrity request information. type RequestDetails struct { // Nonce: Nonce that was provided in the request (which is base64 diff --git a/securitycenter/v1/securitycenter-api.json b/securitycenter/v1/securitycenter-api.json index 05b98e46898..902b2dc20c7 100644 --- a/securitycenter/v1/securitycenter-api.json +++ b/securitycenter/v1/securitycenter-api.json @@ -5810,7 +5810,7 @@ } } }, - "revision": "20231218", + "revision": "20240101", "rootUrl": "https://securitycenter.googleapis.com/", "schemas": { "Access": { @@ -7569,6 +7569,19 @@ }, "type": "array" }, + "casePriority": { + "description": "The priority of the finding's corresponding case in the external system.", + "type": "string" + }, + "caseSla": { + "description": "The SLA of the finding's corresponding case in the external system.", + "format": "google-datetime", + "type": "string" + }, + "caseUri": { + "description": "The link to the finding's corresponding case in the external system.", + "type": "string" + }, "externalSystemUpdateTime": { "description": "The time when the case was last updated, as reported by the external system.", "format": "google-datetime", @@ -7585,6 +7598,10 @@ "status": { "description": "The most recent status of the finding's corresponding case, as reported by the external system.", "type": "string" + }, + "ticketInfo": { + "$ref": "TicketInfo", + "description": "Information about the ticket, if any, that is being used to track the resolution of the issue that is identified by this finding." } }, "type": "object" @@ -9974,6 +9991,38 @@ }, "type": "object" }, + "TicketInfo": { + "description": "Information about the ticket, if any, that is being used to track the resolution of the issue that is identified by this finding.", + "id": "TicketInfo", + "properties": { + "assignee": { + "description": "The assignee of the ticket in the ticket system.", + "type": "string" + }, + "description": { + "description": "The description of the ticket in the ticket system.", + "type": "string" + }, + "id": { + "description": "The identifier of the ticket in the ticket system.", + "type": "string" + }, + "status": { + "description": "The latest status of the ticket, as reported by the ticket system.", + "type": "string" + }, + "updateTime": { + "description": "The time when the ticket was last updated, as reported by the ticket system.", + "format": "google-datetime", + "type": "string" + }, + "uri": { + "description": "The link to the ticket in the ticket system.", + "type": "string" + } + }, + "type": "object" + }, "ValidateEventThreatDetectionCustomModuleRequest": { "description": "Request to validate an Event Threat Detection custom module.", "id": "ValidateEventThreatDetectionCustomModuleRequest", diff --git a/securitycenter/v1/securitycenter-gen.go b/securitycenter/v1/securitycenter-gen.go index aa4d44f8c3d..d0ecdb3453b 100644 --- a/securitycenter/v1/securitycenter-gen.go +++ b/securitycenter/v1/securitycenter-gen.go @@ -3695,6 +3695,18 @@ type GoogleCloudSecuritycenterV1ExternalSystem struct { // system. Assignees []string `json:"assignees,omitempty"` + // CasePriority: The priority of the finding's corresponding case in the + // external system. + CasePriority string `json:"casePriority,omitempty"` + + // CaseSla: The SLA of the finding's corresponding case in the external + // system. + CaseSla string `json:"caseSla,omitempty"` + + // CaseUri: The link to the finding's corresponding case in the external + // system. + CaseUri string `json:"caseUri,omitempty"` + // ExternalSystemUpdateTime: The time when the case was last updated, as // reported by the external system. ExternalSystemUpdateTime string `json:"externalSystemUpdateTime,omitempty"` @@ -3713,6 +3725,11 @@ type GoogleCloudSecuritycenterV1ExternalSystem struct { // as reported by the external system. Status string `json:"status,omitempty"` + // TicketInfo: Information about the ticket, if any, that is being used + // to track the resolution of the issue that is identified by this + // finding. + TicketInfo *TicketInfo `json:"ticketInfo,omitempty"` + // ServerResponse contains the HTTP response code and headers from the // server. googleapi.ServerResponse `json:"-"` @@ -7751,6 +7768,53 @@ func (s *TestIamPermissionsResponse) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// TicketInfo: Information about the ticket, if any, that is being used +// to track the resolution of the issue that is identified by this +// finding. +type TicketInfo struct { + // Assignee: The assignee of the ticket in the ticket system. + Assignee string `json:"assignee,omitempty"` + + // Description: The description of the ticket in the ticket system. + Description string `json:"description,omitempty"` + + // Id: The identifier of the ticket in the ticket system. + Id string `json:"id,omitempty"` + + // Status: The latest status of the ticket, as reported by the ticket + // system. + Status string `json:"status,omitempty"` + + // UpdateTime: The time when the ticket was last updated, as reported by + // the ticket system. + UpdateTime string `json:"updateTime,omitempty"` + + // Uri: The link to the ticket in the ticket system. + Uri string `json:"uri,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Assignee") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Assignee") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *TicketInfo) MarshalJSON() ([]byte, error) { + type NoMethod TicketInfo + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // ValidateEventThreatDetectionCustomModuleRequest: Request to validate // an Event Threat Detection custom module. type ValidateEventThreatDetectionCustomModuleRequest struct { diff --git a/securitycenter/v1beta1/securitycenter-api.json b/securitycenter/v1beta1/securitycenter-api.json index 2652988196c..4f7cefa388c 100644 --- a/securitycenter/v1beta1/securitycenter-api.json +++ b/securitycenter/v1beta1/securitycenter-api.json @@ -896,7 +896,7 @@ } } }, - "revision": "20231218", + "revision": "20240101", "rootUrl": "https://securitycenter.googleapis.com/", "schemas": { "Access": { @@ -2316,6 +2316,19 @@ }, "type": "array" }, + "casePriority": { + "description": "The priority of the finding's corresponding case in the external system.", + "type": "string" + }, + "caseSla": { + "description": "The SLA of the finding's corresponding case in the external system.", + "format": "google-datetime", + "type": "string" + }, + "caseUri": { + "description": "The link to the finding's corresponding case in the external system.", + "type": "string" + }, "externalSystemUpdateTime": { "description": "The time when the case was last updated, as reported by the external system.", "format": "google-datetime", @@ -2332,6 +2345,10 @@ "status": { "description": "The most recent status of the finding's corresponding case, as reported by the external system.", "type": "string" + }, + "ticketInfo": { + "$ref": "TicketInfo", + "description": "Information about the ticket, if any, that is being used to track the resolution of the issue that is identified by this finding." } }, "type": "object" @@ -4259,6 +4276,38 @@ }, "type": "object" }, + "TicketInfo": { + "description": "Information about the ticket, if any, that is being used to track the resolution of the issue that is identified by this finding.", + "id": "TicketInfo", + "properties": { + "assignee": { + "description": "The assignee of the ticket in the ticket system.", + "type": "string" + }, + "description": { + "description": "The description of the ticket in the ticket system.", + "type": "string" + }, + "id": { + "description": "The identifier of the ticket in the ticket system.", + "type": "string" + }, + "status": { + "description": "The latest status of the ticket, as reported by the ticket system.", + "type": "string" + }, + "updateTime": { + "description": "The time when the ticket was last updated, as reported by the ticket system.", + "format": "google-datetime", + "type": "string" + }, + "uri": { + "description": "The link to the ticket in the ticket system.", + "type": "string" + } + }, + "type": "object" + }, "Vulnerability": { "description": "Refers to common vulnerability fields e.g. cve, cvss, cwe etc.", "id": "Vulnerability", diff --git a/securitycenter/v1beta1/securitycenter-gen.go b/securitycenter/v1beta1/securitycenter-gen.go index 95295c54530..3e77e3225b3 100644 --- a/securitycenter/v1beta1/securitycenter-gen.go +++ b/securitycenter/v1beta1/securitycenter-gen.go @@ -2474,6 +2474,18 @@ type GoogleCloudSecuritycenterV1ExternalSystem struct { // system. Assignees []string `json:"assignees,omitempty"` + // CasePriority: The priority of the finding's corresponding case in the + // external system. + CasePriority string `json:"casePriority,omitempty"` + + // CaseSla: The SLA of the finding's corresponding case in the external + // system. + CaseSla string `json:"caseSla,omitempty"` + + // CaseUri: The link to the finding's corresponding case in the external + // system. + CaseUri string `json:"caseUri,omitempty"` + // ExternalSystemUpdateTime: The time when the case was last updated, as // reported by the external system. ExternalSystemUpdateTime string `json:"externalSystemUpdateTime,omitempty"` @@ -2492,6 +2504,11 @@ type GoogleCloudSecuritycenterV1ExternalSystem struct { // as reported by the external system. Status string `json:"status,omitempty"` + // TicketInfo: Information about the ticket, if any, that is being used + // to track the resolution of the issue that is identified by this + // finding. + TicketInfo *TicketInfo `json:"ticketInfo,omitempty"` + // ForceSendFields is a list of field names (e.g. "Assignees") to // unconditionally include in API requests. By default, fields with // empty or default values are omitted from API requests. However, any @@ -5544,6 +5561,53 @@ func (s *TestIamPermissionsResponse) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// TicketInfo: Information about the ticket, if any, that is being used +// to track the resolution of the issue that is identified by this +// finding. +type TicketInfo struct { + // Assignee: The assignee of the ticket in the ticket system. + Assignee string `json:"assignee,omitempty"` + + // Description: The description of the ticket in the ticket system. + Description string `json:"description,omitempty"` + + // Id: The identifier of the ticket in the ticket system. + Id string `json:"id,omitempty"` + + // Status: The latest status of the ticket, as reported by the ticket + // system. + Status string `json:"status,omitempty"` + + // UpdateTime: The time when the ticket was last updated, as reported by + // the ticket system. + UpdateTime string `json:"updateTime,omitempty"` + + // Uri: The link to the ticket in the ticket system. + Uri string `json:"uri,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Assignee") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Assignee") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *TicketInfo) MarshalJSON() ([]byte, error) { + type NoMethod TicketInfo + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Vulnerability: Refers to common vulnerability fields e.g. cve, cvss, // cwe etc. type Vulnerability struct { diff --git a/securitycenter/v1beta2/securitycenter-api.json b/securitycenter/v1beta2/securitycenter-api.json index 347d269ad12..f9443e81388 100644 --- a/securitycenter/v1beta2/securitycenter-api.json +++ b/securitycenter/v1beta2/securitycenter-api.json @@ -1906,7 +1906,7 @@ } } }, - "revision": "20231218", + "revision": "20240101", "rootUrl": "https://securitycenter.googleapis.com/", "schemas": { "Access": { @@ -3310,6 +3310,19 @@ }, "type": "array" }, + "casePriority": { + "description": "The priority of the finding's corresponding case in the external system.", + "type": "string" + }, + "caseSla": { + "description": "The SLA of the finding's corresponding case in the external system.", + "format": "google-datetime", + "type": "string" + }, + "caseUri": { + "description": "The link to the finding's corresponding case in the external system.", + "type": "string" + }, "externalSystemUpdateTime": { "description": "The time when the case was last updated, as reported by the external system.", "format": "google-datetime", @@ -3326,6 +3339,10 @@ "status": { "description": "The most recent status of the finding's corresponding case, as reported by the external system.", "type": "string" + }, + "ticketInfo": { + "$ref": "TicketInfo", + "description": "Information about the ticket, if any, that is being used to track the resolution of the issue that is identified by this finding." } }, "type": "object" @@ -4828,6 +4845,38 @@ }, "type": "object" }, + "TicketInfo": { + "description": "Information about the ticket, if any, that is being used to track the resolution of the issue that is identified by this finding.", + "id": "TicketInfo", + "properties": { + "assignee": { + "description": "The assignee of the ticket in the ticket system.", + "type": "string" + }, + "description": { + "description": "The description of the ticket in the ticket system.", + "type": "string" + }, + "id": { + "description": "The identifier of the ticket in the ticket system.", + "type": "string" + }, + "status": { + "description": "The latest status of the ticket, as reported by the ticket system.", + "type": "string" + }, + "updateTime": { + "description": "The time when the ticket was last updated, as reported by the ticket system.", + "format": "google-datetime", + "type": "string" + }, + "uri": { + "description": "The link to the ticket in the ticket system.", + "type": "string" + } + }, + "type": "object" + }, "VirtualMachineThreatDetectionSettings": { "description": "Resource capturing the settings for the Virtual Machine Threat Detection service.", "id": "VirtualMachineThreatDetectionSettings", diff --git a/securitycenter/v1beta2/securitycenter-gen.go b/securitycenter/v1beta2/securitycenter-gen.go index 5d5e219fae0..eb758858bc1 100644 --- a/securitycenter/v1beta2/securitycenter-gen.go +++ b/securitycenter/v1beta2/securitycenter-gen.go @@ -2520,6 +2520,18 @@ type GoogleCloudSecuritycenterV1ExternalSystem struct { // system. Assignees []string `json:"assignees,omitempty"` + // CasePriority: The priority of the finding's corresponding case in the + // external system. + CasePriority string `json:"casePriority,omitempty"` + + // CaseSla: The SLA of the finding's corresponding case in the external + // system. + CaseSla string `json:"caseSla,omitempty"` + + // CaseUri: The link to the finding's corresponding case in the external + // system. + CaseUri string `json:"caseUri,omitempty"` + // ExternalSystemUpdateTime: The time when the case was last updated, as // reported by the external system. ExternalSystemUpdateTime string `json:"externalSystemUpdateTime,omitempty"` @@ -2538,6 +2550,11 @@ type GoogleCloudSecuritycenterV1ExternalSystem struct { // as reported by the external system. Status string `json:"status,omitempty"` + // TicketInfo: Information about the ticket, if any, that is being used + // to track the resolution of the issue that is identified by this + // finding. + TicketInfo *TicketInfo `json:"ticketInfo,omitempty"` + // ForceSendFields is a list of field names (e.g. "Assignees") to // unconditionally include in API requests. By default, fields with // empty or default values are omitted from API requests. However, any @@ -4684,6 +4701,53 @@ func (s *Subscription) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// TicketInfo: Information about the ticket, if any, that is being used +// to track the resolution of the issue that is identified by this +// finding. +type TicketInfo struct { + // Assignee: The assignee of the ticket in the ticket system. + Assignee string `json:"assignee,omitempty"` + + // Description: The description of the ticket in the ticket system. + Description string `json:"description,omitempty"` + + // Id: The identifier of the ticket in the ticket system. + Id string `json:"id,omitempty"` + + // Status: The latest status of the ticket, as reported by the ticket + // system. + Status string `json:"status,omitempty"` + + // UpdateTime: The time when the ticket was last updated, as reported by + // the ticket system. + UpdateTime string `json:"updateTime,omitempty"` + + // Uri: The link to the ticket in the ticket system. + Uri string `json:"uri,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Assignee") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Assignee") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *TicketInfo) MarshalJSON() ([]byte, error) { + type NoMethod TicketInfo + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // VirtualMachineThreatDetectionSettings: Resource capturing the // settings for the Virtual Machine Threat Detection service. type VirtualMachineThreatDetectionSettings struct { diff --git a/servicenetworking/v1/servicenetworking-gen.go b/servicenetworking/v1/servicenetworking-gen.go index 4b88c1d8cba..bed9906e50c 100644 --- a/servicenetworking/v1/servicenetworking-gen.go +++ b/servicenetworking/v1/servicenetworking-gen.go @@ -1,4 +1,4 @@ -// Copyright 2023 Google LLC. +// Copyright 2024 Google LLC. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. diff --git a/servicenetworking/v1beta/servicenetworking-gen.go b/servicenetworking/v1beta/servicenetworking-gen.go index 7f233b95cfc..4fe7a1e711e 100644 --- a/servicenetworking/v1beta/servicenetworking-gen.go +++ b/servicenetworking/v1beta/servicenetworking-gen.go @@ -1,4 +1,4 @@ -// Copyright 2023 Google LLC. +// Copyright 2024 Google LLC. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file.