Skip to content

Commit

Permalink
feat(compute): update the API
Browse files Browse the repository at this point in the history
#### compute:alpha

The following keys were added:
- schemas.BackendService.properties.localityLbPolicies.description
- schemas.BackendService.properties.localityLbPolicies.items.$ref
- schemas.BackendService.properties.localityLbPolicies.type
- schemas.BackendServiceLocalityLoadBalancingPolicyConfig.description
- schemas.BackendServiceLocalityLoadBalancingPolicyConfig.id
- schemas.BackendServiceLocalityLoadBalancingPolicyConfig.properties.customPolicy.$ref
- schemas.BackendServiceLocalityLoadBalancingPolicyConfig.properties.policy.$ref
- schemas.BackendServiceLocalityLoadBalancingPolicyConfig.type
- schemas.BackendServiceLocalityLoadBalancingPolicyConfigCustomPolicy.description
- schemas.BackendServiceLocalityLoadBalancingPolicyConfigCustomPolicy.id
- schemas.BackendServiceLocalityLoadBalancingPolicyConfigCustomPolicy.properties.data.description
- schemas.BackendServiceLocalityLoadBalancingPolicyConfigCustomPolicy.properties.data.type
- schemas.BackendServiceLocalityLoadBalancingPolicyConfigCustomPolicy.properties.name.description
- schemas.BackendServiceLocalityLoadBalancingPolicyConfigCustomPolicy.properties.name.type
- schemas.BackendServiceLocalityLoadBalancingPolicyConfigCustomPolicy.type
- schemas.BackendServiceLocalityLoadBalancingPolicyConfigPolicy.description
- schemas.BackendServiceLocalityLoadBalancingPolicyConfigPolicy.id
- schemas.BackendServiceLocalityLoadBalancingPolicyConfigPolicy.properties.name.description
- schemas.BackendServiceLocalityLoadBalancingPolicyConfigPolicy.properties.name.enum
- schemas.BackendServiceLocalityLoadBalancingPolicyConfigPolicy.properties.name.enumDescriptions
- schemas.BackendServiceLocalityLoadBalancingPolicyConfigPolicy.properties.name.type
- schemas.BackendServiceLocalityLoadBalancingPolicyConfigPolicy.type
- schemas.NetworkPeering.properties.stackType.description
- schemas.NetworkPeering.properties.stackType.enum
- schemas.NetworkPeering.properties.stackType.enumDescriptions
- schemas.NetworkPeering.properties.stackType.type
- schemas.ResourceStatusScheduling.properties.terminationTimestamp.description
- schemas.ResourceStatusScheduling.properties.terminationTimestamp.type

The following keys were changed:
- schemas.GlobalSetLabelsRequest.properties.labels.description
- schemas.GuestOsFeature.properties.type.description
- schemas.Instance.properties.keyRevocationActionType.description
- schemas.InstanceProperties.properties.keyRevocationActionType.description
- schemas.NetworkEndpointGroupServerlessDeployment.properties.platform.description
- schemas.SecurityPolicy.properties.type.enum
- schemas.SecurityPolicy.properties.type.enumDescriptions
- schemas.SourceInstanceProperties.properties.keyRevocationActionType.description
- schemas.Subnetwork.properties.externalIpv6Prefix.description
- schemas.Subnetwork.properties.internalIpv6Prefix.description
- schemas.Subnetwork.properties.ipv6AccessType.description
- schemas.Subnetwork.properties.ipv6AccessType.enumDescriptions
- schemas.Subnetwork.properties.ipv6CidrRange.description
- schemas.Subnetwork.properties.privateIpv6GoogleAccess.description

#### compute:beta

The following keys were added:
- schemas.AdvancedMachineFeatures.properties.visibleCoreCount.description
- schemas.AdvancedMachineFeatures.properties.visibleCoreCount.format
- schemas.AdvancedMachineFeatures.properties.visibleCoreCount.type
- schemas.BackendService.properties.localityLbPolicies.description
- schemas.BackendService.properties.localityLbPolicies.items.$ref
- schemas.BackendService.properties.localityLbPolicies.type
- schemas.BackendServiceLocalityLoadBalancingPolicyConfig.description
- schemas.BackendServiceLocalityLoadBalancingPolicyConfig.id
- schemas.BackendServiceLocalityLoadBalancingPolicyConfig.properties.customPolicy.$ref
- schemas.BackendServiceLocalityLoadBalancingPolicyConfig.properties.policy.$ref
- schemas.BackendServiceLocalityLoadBalancingPolicyConfig.type
- schemas.BackendServiceLocalityLoadBalancingPolicyConfigCustomPolicy.description
- schemas.BackendServiceLocalityLoadBalancingPolicyConfigCustomPolicy.id
- schemas.BackendServiceLocalityLoadBalancingPolicyConfigCustomPolicy.properties.data.description
- schemas.BackendServiceLocalityLoadBalancingPolicyConfigCustomPolicy.properties.data.type
- schemas.BackendServiceLocalityLoadBalancingPolicyConfigCustomPolicy.properties.name.description
- schemas.BackendServiceLocalityLoadBalancingPolicyConfigCustomPolicy.properties.name.type
- schemas.BackendServiceLocalityLoadBalancingPolicyConfigCustomPolicy.type
- schemas.BackendServiceLocalityLoadBalancingPolicyConfigPolicy.description
- schemas.BackendServiceLocalityLoadBalancingPolicyConfigPolicy.id
- schemas.BackendServiceLocalityLoadBalancingPolicyConfigPolicy.properties.name.description
- schemas.BackendServiceLocalityLoadBalancingPolicyConfigPolicy.properties.name.enum
- schemas.BackendServiceLocalityLoadBalancingPolicyConfigPolicy.properties.name.enumDescriptions
- schemas.BackendServiceLocalityLoadBalancingPolicyConfigPolicy.properties.name.type
- schemas.BackendServiceLocalityLoadBalancingPolicyConfigPolicy.type
- schemas.FirewallPolicyRule.properties.ruleName.description
- schemas.FirewallPolicyRule.properties.ruleName.type
- schemas.FirewallPolicyRuleMatcher.properties.destRegionCodes.description
- schemas.FirewallPolicyRuleMatcher.properties.destRegionCodes.items.type
- schemas.FirewallPolicyRuleMatcher.properties.destRegionCodes.type
- schemas.FirewallPolicyRuleMatcher.properties.destThreatIntelligences.description
- schemas.FirewallPolicyRuleMatcher.properties.destThreatIntelligences.items.type
- schemas.FirewallPolicyRuleMatcher.properties.destThreatIntelligences.type
- schemas.FirewallPolicyRuleMatcher.properties.srcRegionCodes.description
- schemas.FirewallPolicyRuleMatcher.properties.srcRegionCodes.items.type
- schemas.FirewallPolicyRuleMatcher.properties.srcRegionCodes.type
- schemas.FirewallPolicyRuleMatcher.properties.srcThreatIntelligences.description
- schemas.FirewallPolicyRuleMatcher.properties.srcThreatIntelligences.items.type
- schemas.FirewallPolicyRuleMatcher.properties.srcThreatIntelligences.type

The following keys were changed:
- schemas.GlobalSetLabelsRequest.properties.labels.description
- schemas.GuestOsFeature.properties.type.description
- schemas.NetworkEndpointGroupServerlessDeployment.properties.platform.description
- schemas.Subnetwork.properties.externalIpv6Prefix.description
- schemas.Subnetwork.properties.internalIpv6Prefix.description
- schemas.Subnetwork.properties.ipv6AccessType.description
- schemas.Subnetwork.properties.ipv6AccessType.enumDescriptions
- schemas.Subnetwork.properties.ipv6CidrRange.description
- schemas.Subnetwork.properties.privateIpv6GoogleAccess.description

#### compute:v1

The following keys were changed:
- schemas.GlobalSetLabelsRequest.properties.labels.description
- schemas.GuestOsFeature.properties.type.description
  • Loading branch information
yoshi-automation authored and sofisl committed Apr 1, 2022
1 parent 5296afa commit 91ac58a
Show file tree
Hide file tree
Showing 6 changed files with 357 additions and 47 deletions.
110 changes: 97 additions & 13 deletions discovery/compute-alpha.json
Original file line number Diff line number Diff line change
Expand Up @@ -38660,7 +38660,7 @@
}
}
},
"revision": "20220312",
"revision": "20220322",
"rootUrl": "https://compute.googleapis.com/",
"schemas": {
"AcceleratorConfig": {
Expand Down Expand Up @@ -41436,6 +41436,13 @@
],
"type": "string"
},
"localityLbPolicies": {
"description": "A list of locality load balancing policies to be used in order of preference. Either the policy or the customPolicy field should be set. Overrides any value set in the localityLbPolicy field. localityLbPolicies is only supported when the BackendService is referenced by a URL Map that is referenced by a target gRPC proxy that has the validateForProxyless field set to true.",
"items": {
"$ref": "BackendServiceLocalityLoadBalancingPolicyConfig"
},
"type": "array"
},
"localityLbPolicy": {
"description": "The load balancing algorithm used within the scope of the locality. The possible values are: - ROUND_ROBIN: This is a simple policy in which each healthy backend is selected in round robin order. This is the default. - LEAST_REQUEST: An O(1) algorithm which selects two random healthy hosts and picks the host which has fewer active requests. - RING_HASH: The ring/modulo hash load balancer implements consistent hashing to backends. The algorithm has the property that the addition/removal of a host from a set of N hosts only affects 1/N of the requests. - RANDOM: The load balancer selects a random healthy host. - ORIGINAL_DESTINATION: Backend host is selected based on the client connection metadata, i.e., connections are opened to the same address as the destination address of the incoming connection before the connection was redirected to the load balancer. - MAGLEV: used as a drop in replacement for the ring hash load balancer. Maglev is not as stable as ring hash but has faster table lookup build times and host selection times. For more information about Maglev, see https://ai.google/research/pubs/pub44824 This field is applicable to either: - A regional backend service with the service_protocol set to HTTP, HTTPS, or HTTP2, and load_balancing_scheme set to INTERNAL_MANAGED. - A global backend service with the load_balancing_scheme set to INTERNAL_SELF_MANAGED. If sessionAffinity is not NONE, and this field is not set to MAGLEV or RING_HASH, session affinity settings will not take effect. Only ROUND_ROBIN and RING_HASH are supported when the backend service is referenced by a URL map that is bound to target gRPC proxy that has validateForProxyless field set to true.",
"enum": [
Expand Down Expand Up @@ -42065,6 +42072,65 @@
},
"type": "object"
},
"BackendServiceLocalityLoadBalancingPolicyConfig": {
"description": "Container for either a built-in LB policy supported by gRPC or Envoy or a custom one implemented by the end user.",
"id": "BackendServiceLocalityLoadBalancingPolicyConfig",
"properties": {
"customPolicy": {
"$ref": "BackendServiceLocalityLoadBalancingPolicyConfigCustomPolicy"
},
"policy": {
"$ref": "BackendServiceLocalityLoadBalancingPolicyConfigPolicy"
}
},
"type": "object"
},
"BackendServiceLocalityLoadBalancingPolicyConfigCustomPolicy": {
"description": "The configuration for a custom policy implemented by the user and deployed with the client.",
"id": "BackendServiceLocalityLoadBalancingPolicyConfigCustomPolicy",
"properties": {
"data": {
"description": "An optional, arbitrary JSON object with configuration data, understood by a locally installed custom policy implementation.",
"type": "string"
},
"name": {
"description": "Identifies the custom policy. The value should match the type the custom implementation is registered with on the gRPC clients. It should follow protocol buffer message naming conventions and include the full path (e.g. myorg.CustomLbPolicy). The maximum length is 256 characters. Note that specifying the same custom policy more than once for a backend is not a valid configuration and will be rejected.",
"type": "string"
}
},
"type": "object"
},
"BackendServiceLocalityLoadBalancingPolicyConfigPolicy": {
"description": "The configuration for a built-in load balancing policy.",
"id": "BackendServiceLocalityLoadBalancingPolicyConfigPolicy",
"properties": {
"name": {
"description": "The name of a locality load balancer policy to be used. The value should be one of the predefined ones as supported by localityLbPolicy, although at the moment only ROUND_ROBIN is supported. This field should only be populated when the customPolicy field is not used. Note that specifying the same policy more than once for a backend is not a valid configuration and will be rejected.",
"enum": [
"INVALID_LB_POLICY",
"LEAST_REQUEST",
"MAGLEV",
"ORIGINAL_DESTINATION",
"RANDOM",
"RING_HASH",
"ROUND_ROBIN",
"WEIGHTED_MAGLEV"
],
"enumDescriptions": [
"",
"An O(1) algorithm which selects two random healthy hosts and picks the host which has fewer active requests.",
"This algorithm implements consistent hashing to backends. Maglev can be used as a drop in replacement for the ring hash load balancer. Maglev is not as stable as ring hash but has faster table lookup build times and host selection times. For more information about Maglev, see https://ai.google/research/pubs/pub44824",
"Backend host is selected based on the client connection metadata, i.e., connections are opened to the same address as the destination address of the incoming connection before the connection was redirected to the load balancer.",
"The load balancer selects a random healthy host.",
"The ring/modulo hash load balancer implements consistent hashing to backends. The algorithm has the property that the addition/removal of a host from a set of N hosts only affects 1/N of the requests.",
"This is a simple policy in which each healthy backend is selected in round robin order. This is the default.",
"Per-instance weighted Load Balancing via health check reported weights. If set, the Backend Service must configure a non legacy HTTP-based Health Check, and health check replies are expected to contain non-standard HTTP response header field X-Load-Balancing-Endpoint-Weight to specify the per-instance weights. If set, Load Balancing is weighted based on the per-instance weights reported in the last processed health check replies, as long as every instance either reported a valid weight or had UNAVAILABLE_WEIGHT. Otherwise, Load Balancing remains equal-weight. This option is only supported in Network Load Balancing."
],
"type": "string"
}
},
"type": "object"
},
"BackendServiceLogConfig": {
"description": "The available logging options for the load balancer traffic served by this backend service.",
"id": "BackendServiceLogConfig",
Expand Down Expand Up @@ -47163,7 +47229,7 @@
"additionalProperties": {
"type": "string"
},
"description": "A list of labels to apply for this resource. Each label key & value must 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. For example, \"webserver-frontend\": \"images\". A label value can also be empty (e.g. \"my-label\": \"\").",
"description": "A list of labels to apply for this resource. Each label must comply with the requirements for labels. For example, \"webserver-frontend\": \"images\". A label value can also be empty (e.g. \"my-label\": \"\").",
"type": "object"
}
},
Expand Down Expand Up @@ -47279,7 +47345,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 - SECURE_BOOT - GVNIC - SEV_CAPABLE - SUSPEND_RESUME_COMPATIBLE - 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_SNP_CAPABLE For more information, see Enabling guest operating system features.",
"enum": [
"BARE_METAL_LINUX_COMPATIBLE",
"FEATURE_TYPE_UNSPECIFIED",
Expand Down Expand Up @@ -49764,7 +49830,7 @@
"description": "Encrypts or decrypts data for an instance with a customer-supplied encryption key. If you are creating a new instance, this field encrypts the local SSD and in-memory contents of the instance using a key that you provide. If you are restarting an instance protected with a customer-supplied encryption key, you must provide the correct key in order to successfully restart the instance. If you do not provide an encryption key when creating the instance, then the local SSD and in-memory contents will be encrypted using an automatically generated key and you do not need to provide a key to start the instance later. Instance templates do not store customer-supplied encryption keys, so you cannot use your own keys to encrypt local SSDs and in-memory content in a managed instance group."
},
"keyRevocationActionType": {
"description": "KeyRevocationActionType of the instance.",
"description": "KeyRevocationActionType of the instance. Supported options are \"STOP\" and \"NONE\". The default value is \"NONE\" if it is not specified.",
"enum": [
"KEY_REVOCATION_ACTION_TYPE_UNSPECIFIED",
"NONE",
Expand Down Expand Up @@ -52417,7 +52483,7 @@
"type": "array"
},
"keyRevocationActionType": {
"description": "KeyRevocationActionType of the instance.",
"description": "KeyRevocationActionType of the instance. Supported options are \"STOP\" and \"NONE\". The default value is \"NONE\" if it is not specified.",
"enum": [
"KEY_REVOCATION_ACTION_TYPE_UNSPECIFIED",
"NONE",
Expand Down Expand Up @@ -57884,7 +57950,7 @@
"id": "NetworkEndpointGroupServerlessDeployment",
"properties": {
"platform": {
"description": "The platform of the backend target(s) of this NEG. Possible values include: 1. API Gateway: apigateway.googleapis.com 2. App Engine: appengine.googleapis.com 3. Cloud Functions: cloudfunctions.googleapis.com 4. Cloud Run: run.googleapis.com ",
"description": "The platform of the backend target(s) of this NEG. The only supported value is API Gateway: apigateway.googleapis.com.",
"type": "string"
},
"resource": {
Expand Down Expand Up @@ -58494,6 +58560,18 @@
"format": "int32",
"type": "integer"
},
"stackType": {
"description": "Which IP version(s) of traffic and routes are allowed to be imported or exported between peer networks. The default value is IPV4_ONLY.",
"enum": [
"IPV4_IPV6",
"IPV4_ONLY"
],
"enumDescriptions": [
"This Peering will allow IPv4 traffic and routes to be exchanged. Additionally if the matching peering is IPV4_IPV6, IPv6 traffic and routes will be exchanged as well.",
"This Peering will only allow IPv4 traffic and routes to be exchanged, even if the matching peering is IPV4_IPV6."
],
"type": "string"
},
"state": {
"description": "[Output Only] State for the peering, either `ACTIVE` or `INACTIVE`. The peering is `ACTIVE` when there's a matching configuration in the peer network.",
"enum": [
Expand Down Expand Up @@ -66416,6 +66494,10 @@
"description": "Specifies the availability domain (AD), which this instance should be scheduled on. The AD belongs to the spread GroupPlacementPolicy resource policy that has been assigned to the instance. Specify a value between 1-max count of availability domains in your GroupPlacementPolicy. See go/placement-policy-extension for more details.",
"format": "int32",
"type": "integer"
},
"terminationTimestamp": {
"description": "Time in future when the instance will be terminated in RFC3339 text format.",
"type": "string"
}
},
"type": "object"
Expand Down Expand Up @@ -68945,13 +69027,15 @@
"enum": [
"CLOUD_ARMOR",
"CLOUD_ARMOR_EDGE",
"CLOUD_ARMOR_INTERNAL_SERVICE",
"CLOUD_ARMOR_NETWORK",
"FIREWALL"
],
"enumDescriptions": [
"",
"",
"",
"",
""
],
"type": "string"
Expand Down Expand Up @@ -70772,7 +70856,7 @@
"type": "array"
},
"keyRevocationActionType": {
"description": "KeyRevocationActionType of the instance.",
"description": "KeyRevocationActionType of the instance. Supported options are \"STOP\" and \"NONE\". The default value is \"NONE\" if it is not specified.",
"enum": [
"KEY_REVOCATION_ACTION_TYPE_UNSPECIFIED",
"NONE",
Expand Down Expand Up @@ -72003,7 +72087,7 @@
"type": "boolean"
},
"externalIpv6Prefix": {
"description": "[Output Only] The range of external IPv6 addresses that are owned by this subnetwork.",
"description": "[Output Only] The external IPv6 address range that is assigned to this subnetwork.",
"type": "string"
},
"fingerprint": {
Expand All @@ -72026,27 +72110,27 @@
"type": "string"
},
"internalIpv6Prefix": {
"description": "[Output Only] The range of internal IPv6 addresses that are owned by this subnetwork. Note this is for general VM to VM communication, not to be confused with the ipv6_cidr_range field.",
"description": "[Output Only] The internal IPv6 address range that is assigned to this subnetwork.",
"type": "string"
},
"ipCidrRange": {
"description": "The range of internal addresses that are owned by this subnetwork. Provide this property when you create the subnetwork. For example, 10.0.0.0/8 or 100.64.0.0/10. Ranges must be unique and non-overlapping within a network. Only IPv4 is supported. This field is set at resource creation time. The range can be any range listed in the Valid ranges list. The range can be expanded after creation using expandIpCidrRange.",
"type": "string"
},
"ipv6AccessType": {
"description": "The access type of IPv6 address this subnet holds. It's immutable and can only be specified during creation or the first time the subnet is updated into IPV4_IPV6 dual stack. If the ipv6_type is EXTERNAL then this subnet cannot enable direct path.",
"description": "The access type of IPv6 address this subnet holds. It's immutable and can only be specified during creation or the first time the subnet is updated into IPV4_IPV6 dual stack.",
"enum": [
"EXTERNAL",
"INTERNAL"
],
"enumDescriptions": [
"VMs on this subnet will be assigned IPv6 addresses that are accesible via the Internet, as well as the VPC network.",
"VMs on this subnet will be assigned IPv6 addresses that are accessible via the Internet, as well as the VPC network.",
"VMs on this subnet will be assigned IPv6 addresses that are only accessible over the VPC network."
],
"type": "string"
},
"ipv6CidrRange": {
"description": "[Output Only] The range of internal IPv6 addresses that are owned by this subnetwork. Note this will be for private google access only eventually.",
"description": "[Output Only] This field is for internal use.",
"type": "string"
},
"kind": {
Expand Down Expand Up @@ -72084,7 +72168,7 @@
"type": "boolean"
},
"privateIpv6GoogleAccess": {
"description": "The private IPv6 google access type for the VMs in this subnet. This is an expanded field of enablePrivateV6Access. If both fields are set, privateIpv6GoogleAccess will take priority. This field can be both set at resource creation time and updated using patch.",
"description": "This field is for internal use. This field can be both set at resource creation time and updated using patch.",
"enum": [
"DISABLE_GOOGLE_ACCESS",
"ENABLE_BIDIRECTIONAL_ACCESS_TO_GOOGLE",
Expand Down
Loading

0 comments on commit 91ac58a

Please sign in to comment.