Skip to content

Commit

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

The following keys were added:
- schemas.Connection.properties.peering.readOnly
- schemas.Connection.properties.service.readOnly
- schemas.ConsumerConfig.properties.vpcScReferenceArchitectureEnabled.description
- schemas.ConsumerConfig.properties.vpcScReferenceArchitectureEnabled.readOnly
- schemas.ConsumerConfig.properties.vpcScReferenceArchitectureEnabled.type
- schemas.DeleteConnectionMetadata.description
- schemas.DeleteConnectionMetadata.id
- schemas.DeleteConnectionMetadata.type
- schemas.GoogleCloudServicenetworkingV1betaConnection.description
- schemas.GoogleCloudServicenetworkingV1betaConnection.id
- schemas.GoogleCloudServicenetworkingV1betaConnection.properties.network.description
- schemas.GoogleCloudServicenetworkingV1betaConnection.properties.network.type
- schemas.GoogleCloudServicenetworkingV1betaConnection.properties.peering.description
- schemas.GoogleCloudServicenetworkingV1betaConnection.properties.peering.type
- schemas.GoogleCloudServicenetworkingV1betaConnection.properties.reservedPeeringRanges.description
- schemas.GoogleCloudServicenetworkingV1betaConnection.properties.reservedPeeringRanges.items.type
- schemas.GoogleCloudServicenetworkingV1betaConnection.properties.reservedPeeringRanges.type
- schemas.GoogleCloudServicenetworkingV1betaConnection.properties.service.description
- schemas.GoogleCloudServicenetworkingV1betaConnection.properties.service.type
- schemas.GoogleCloudServicenetworkingV1betaConnection.type
- schemas.Subnetwork.properties.region.description
- schemas.Subnetwork.properties.region.type

The following keys were changed:
- resources.services.methods.updateConnections.request.$ref
- resources.services.resources.connections.methods.create.request.$ref
- schemas.Connection.properties.reservedPeeringRanges.description
- schemas.Endpoint.description
- schemas.ListConnectionsResponse.properties.connections.items.$ref
- schemas.MetricDescriptor.properties.unit.description
- schemas.Service.description
- schemas.Service.properties.configVersion.description
- schemas.Usage.properties.requirements.description

#### servicenetworking:v1

The following keys were added:
- schemas.ConsumerConfig.properties.vpcScReferenceArchitectureEnabled.description
- schemas.ConsumerConfig.properties.vpcScReferenceArchitectureEnabled.readOnly
- schemas.ConsumerConfig.properties.vpcScReferenceArchitectureEnabled.type
- schemas.DeleteConnectionMetadata.description
- schemas.DeleteConnectionMetadata.id
- schemas.DeleteConnectionMetadata.type
- schemas.GoogleCloudServicenetworkingV1betaConnection.description
- schemas.GoogleCloudServicenetworkingV1betaConnection.id
- schemas.GoogleCloudServicenetworkingV1betaConnection.properties.network.description
- schemas.GoogleCloudServicenetworkingV1betaConnection.properties.network.type
- schemas.GoogleCloudServicenetworkingV1betaConnection.properties.peering.description
- schemas.GoogleCloudServicenetworkingV1betaConnection.properties.peering.type
- schemas.GoogleCloudServicenetworkingV1betaConnection.properties.reservedPeeringRanges.description
- schemas.GoogleCloudServicenetworkingV1betaConnection.properties.reservedPeeringRanges.items.type
- schemas.GoogleCloudServicenetworkingV1betaConnection.properties.reservedPeeringRanges.type
- schemas.GoogleCloudServicenetworkingV1betaConnection.properties.service.description
- schemas.GoogleCloudServicenetworkingV1betaConnection.properties.service.type
- schemas.GoogleCloudServicenetworkingV1betaConnection.type
- schemas.RangeReservation.properties.subnetworkCandidates.description
- schemas.RangeReservation.properties.subnetworkCandidates.items.$ref
- schemas.RangeReservation.properties.subnetworkCandidates.type
- schemas.Subnetwork.properties.region.description
- schemas.Subnetwork.properties.region.type
- schemas.ValidateConsumerConfigResponse.properties.existingSubnetworkCandidates.description
- schemas.ValidateConsumerConfigResponse.properties.existingSubnetworkCandidates.items.$ref
- schemas.ValidateConsumerConfigResponse.properties.existingSubnetworkCandidates.type
- schemas.ValidateConsumerConfigResponse.properties.isValid.description
- schemas.ValidateConsumerConfigResponse.properties.validationError.description

The following keys were changed:
- schemas.Endpoint.description
- schemas.MetricDescriptor.properties.unit.description
- schemas.RangeReservation.properties.secondaryRangeIpPrefixLengths.description
- schemas.Service.description
- schemas.Service.properties.configVersion.description
- schemas.Usage.properties.requirements.description
  • Loading branch information
yoshi-automation authored and sofisl committed Mar 10, 2021
1 parent 31bd6ba commit 1e7807e
Show file tree
Hide file tree
Showing 4 changed files with 215 additions and 33 deletions.
71 changes: 64 additions & 7 deletions discovery/servicenetworking-v1.json
Expand Up @@ -831,7 +831,7 @@
}
}
},
"revision": "20201201",
"revision": "20210307",
"rootUrl": "https://servicenetworking.googleapis.com/",
"schemas": {
"AddDnsRecordSetMetadata": {
Expand Down Expand Up @@ -1325,6 +1325,11 @@
},
"readOnly": true,
"type": "array"
},
"vpcScReferenceArchitectureEnabled": {
"description": "Output only. Indicates whether the VPC Service Controls reference architecture is configured for the producer VPC host network.",
"readOnly": true,
"type": "boolean"
}
},
"type": "object"
Expand Down Expand Up @@ -1462,6 +1467,12 @@
},
"type": "object"
},
"DeleteConnectionMetadata": {
"description": "Metadata provided through GetOperation request for the LRO generated by Delete Connection API",
"id": "DeleteConnectionMetadata",
"properties": {},
"type": "object"
},
"DeletePeeredDnsDomainMetadata": {
"description": "Metadata provided through GetOperation request for the LRO generated by DeletePeeredDnsDomain API.",
"id": "DeletePeeredDnsDomainMetadata",
Expand Down Expand Up @@ -1595,7 +1606,7 @@
"type": "object"
},
"Endpoint": {
"description": "`Endpoint` describes a network endpoint that serves a set of APIs. A service may expose any number of endpoints, and all endpoints share the same service configuration, such as quota configuration and monitoring configuration. Example service configuration: name: library-example.googleapis.com endpoints: # Below entry makes 'google.example.library.v1.Library' # API be served from endpoint address library-example.googleapis.com. # It also allows HTTP OPTIONS calls to be passed to the backend, for # it to decide whether the subsequent cross-origin request is # allowed to proceed. - name: library-example.googleapis.com allow_cors: true",
"description": "`Endpoint` describes a network endpoint of a service that serves a set of APIs. It is commonly known as a service endpoint. A service may expose any number of service endpoints, and all service endpoints share the same service definition, such as quota limits and monitoring metrics. Example service configuration: name: library-example.googleapis.com endpoints: # Below entry makes 'google.example.library.v1.Library' # API be served from endpoint address library-example.googleapis.com. # It also allows HTTP OPTIONS calls to be passed to the backend, for # it to decide whether the subsequent cross-origin request is # allowed to proceed. - name: library-example.googleapis.com allow_cors: true",
"id": "Endpoint",
"properties": {
"aliases": {
Expand Down Expand Up @@ -1810,6 +1821,32 @@
},
"type": "object"
},
"GoogleCloudServicenetworkingV1betaConnection": {
"description": "Represents a private connection resource. A private connection is implemented as a VPC Network Peering connection between a service producer's VPC network and a service consumer's VPC network.",
"id": "GoogleCloudServicenetworkingV1betaConnection",
"properties": {
"network": {
"description": "The name of service consumer's VPC network that's connected with service producer network, in the following format: `projects/{project}/global/networks/{network}`. `{project}` is a project number, such as in `12345` that includes the VPC service consumer's VPC network. `{network}` is the name of the service consumer's VPC network.",
"type": "string"
},
"peering": {
"description": "Output only. The name of the VPC Network Peering connection that was created by the service producer.",
"type": "string"
},
"reservedPeeringRanges": {
"description": "The name of one or more allocated IP address ranges for this service producer of type `PEERING`. Note that invoking this method with a different range when connection is already established will not modify already provisioned service producer subnetworks.",
"items": {
"type": "string"
},
"type": "array"
},
"service": {
"description": "Output only. The name of the peering service that's associated with this connection, in the following format: `services/{service name}`.",
"type": "string"
}
},
"type": "object"
},
"GoogleCloudServicenetworkingV1betaSubnetwork": {
"description": "Represents a subnet that was created or discovered by a private access management service.",
"id": "GoogleCloudServicenetworkingV1betaSubnetwork",
Expand Down Expand Up @@ -2185,7 +2222,7 @@
"type": "string"
},
"unit": {
"description": "The units in which the metric value is reported. It is only applicable if the `value_type` is `INT64`, `DOUBLE`, or `DISTRIBUTION`. The `unit` defines the representation of the stored metric values. Different systems may scale the values to be more easily displayed (so a value of `0.02KBy` _might_ be displayed as `20By`, and a value of `3523KBy` _might_ be displayed as `3.5MBy`). However, if the `unit` is `KBy`, then the value of the metric is always in thousands of bytes, no matter how it may be displayed.. If you want a custom metric to record the exact number of CPU-seconds used by a job, you can create an `INT64 CUMULATIVE` metric whose `unit` is `s{CPU}` (or equivalently `1s{CPU}` or just `s`). If the job uses 12,005 CPU-seconds, then the value is written as `12005`. Alternatively, if you want a custom metric to record data in a more granular way, you can create a `DOUBLE CUMULATIVE` metric whose `unit` is `ks{CPU}`, and then write the value `12.005` (which is `12005/1000`), or use `Kis{CPU}` and write `11.723` (which is `12005/1024`). The supported units are a subset of [The Unified Code for Units of Measure](http://unitsofmeasure.org/ucum.html) standard: **Basic units (UNIT)** * `bit` bit * `By` byte * `s` second * `min` minute * `h` hour * `d` day * `1` dimensionless **Prefixes (PREFIX)** * `k` kilo (10^3) * `M` mega (10^6) * `G` giga (10^9) * `T` tera (10^12) * `P` peta (10^15) * `E` exa (10^18) * `Z` zetta (10^21) * `Y` yotta (10^24) * `m` milli (10^-3) * `u` micro (10^-6) * `n` nano (10^-9) * `p` pico (10^-12) * `f` femto (10^-15) * `a` atto (10^-18) * `z` zepto (10^-21) * `y` yocto (10^-24) * `Ki` kibi (2^10) * `Mi` mebi (2^20) * `Gi` gibi (2^30) * `Ti` tebi (2^40) * `Pi` pebi (2^50) **Grammar** The grammar also includes these connectors: * `/` division or ratio (as an infix operator). For examples, `kBy/{email}` or `MiBy/10ms` (although you should almost never have `/s` in a metric `unit`; rates should always be computed at query time from the underlying cumulative or delta value). * `.` multiplication or composition (as an infix operator). For examples, `GBy.d` or `k{watt}.h`. The grammar for a unit is as follows: Expression = Component { \".\" Component } { \"/\" Component } ; Component = ( [ PREFIX ] UNIT | \"%\" ) [ Annotation ] | Annotation | \"1\" ; Annotation = \"{\" NAME \"}\" ; Notes: * `Annotation` is just a comment if it follows a `UNIT`. If the annotation is used alone, then the unit is equivalent to `1`. For examples, `{request}/s == 1/s`, `By{transmitted}/s == By/s`. * `NAME` is a sequence of non-blank printable ASCII characters not containing `{` or `}`. * `1` represents a unitary [dimensionless unit](https://en.wikipedia.org/wiki/Dimensionless_quantity) of 1, such as in `1/s`. It is typically used when none of the basic units are appropriate. For example, \"new users per day\" can be represented as `1/d` or `{new-users}/d` (and a metric value `5` would mean \"5 new users). Alternatively, \"thousands of page views per day\" would be represented as `1000/d` or `k1/d` or `k{page_views}/d` (and a metric value of `5.3` would mean \"5300 page views per day\"). * `%` represents dimensionless value of 1/100, and annotates values giving a percentage (so the metric values are typically in the range of 0..100, and a metric value `3` means \"3 percent\"). * `10^2.%` indicates a metric contains a ratio, typically in the range 0..1, that will be multiplied by 100 and displayed as a percentage (so a metric value `0.03` means \"3 percent\").",
"description": "The units in which the metric value is reported. It is only applicable if the `value_type` is `INT64`, `DOUBLE`, or `DISTRIBUTION`. The `unit` defines the representation of the stored metric values. Different systems might scale the values to be more easily displayed (so a value of `0.02kBy` _might_ be displayed as `20By`, and a value of `3523kBy` _might_ be displayed as `3.5MBy`). However, if the `unit` is `kBy`, then the value of the metric is always in thousands of bytes, no matter how it might be displayed. If you want a custom metric to record the exact number of CPU-seconds used by a job, you can create an `INT64 CUMULATIVE` metric whose `unit` is `s{CPU}` (or equivalently `1s{CPU}` or just `s`). If the job uses 12,005 CPU-seconds, then the value is written as `12005`. Alternatively, if you want a custom metric to record data in a more granular way, you can create a `DOUBLE CUMULATIVE` metric whose `unit` is `ks{CPU}`, and then write the value `12.005` (which is `12005/1000`), or use `Kis{CPU}` and write `11.723` (which is `12005/1024`). The supported units are a subset of [The Unified Code for Units of Measure](https://unitsofmeasure.org/ucum.html) standard: **Basic units (UNIT)** * `bit` bit * `By` byte * `s` second * `min` minute * `h` hour * `d` day * `1` dimensionless **Prefixes (PREFIX)** * `k` kilo (10^3) * `M` mega (10^6) * `G` giga (10^9) * `T` tera (10^12) * `P` peta (10^15) * `E` exa (10^18) * `Z` zetta (10^21) * `Y` yotta (10^24) * `m` milli (10^-3) * `u` micro (10^-6) * `n` nano (10^-9) * `p` pico (10^-12) * `f` femto (10^-15) * `a` atto (10^-18) * `z` zepto (10^-21) * `y` yocto (10^-24) * `Ki` kibi (2^10) * `Mi` mebi (2^20) * `Gi` gibi (2^30) * `Ti` tebi (2^40) * `Pi` pebi (2^50) **Grammar** The grammar also includes these connectors: * `/` division or ratio (as an infix operator). For examples, `kBy/{email}` or `MiBy/10ms` (although you should almost never have `/s` in a metric `unit`; rates should always be computed at query time from the underlying cumulative or delta value). * `.` multiplication or composition (as an infix operator). For examples, `GBy.d` or `k{watt}.h`. The grammar for a unit is as follows: Expression = Component { \".\" Component } { \"/\" Component } ; Component = ( [ PREFIX ] UNIT | \"%\" ) [ Annotation ] | Annotation | \"1\" ; Annotation = \"{\" NAME \"}\" ; Notes: * `Annotation` is just a comment if it follows a `UNIT`. If the annotation is used alone, then the unit is equivalent to `1`. For examples, `{request}/s == 1/s`, `By{transmitted}/s == By/s`. * `NAME` is a sequence of non-blank printable ASCII characters not containing `{` or `}`. * `1` represents a unitary [dimensionless unit](https://en.wikipedia.org/wiki/Dimensionless_quantity) of 1, such as in `1/s`. It is typically used when none of the basic units are appropriate. For example, \"new users per day\" can be represented as `1/d` or `{new-users}/d` (and a metric value `5` would mean \"5 new users). Alternatively, \"thousands of page views per day\" would be represented as `1000/d` or `k1/d` or `k{page_views}/d` (and a metric value of `5.3` would mean \"5300 page views per day\"). * `%` represents dimensionless value of 1/100, and annotates values giving a percentage (so the metric values are typically in the range of 0..100, and a metric value `3` means \"3 percent\"). * `10^2.%` indicates a metric contains a ratio, typically in the range 0..1, that will be multiplied by 100 and displayed as a percentage (so a metric value `0.03` means \"3 percent\").",
"type": "string"
},
"valueType": {
Expand Down Expand Up @@ -2611,12 +2648,19 @@
"type": "array"
},
"secondaryRangeIpPrefixLengths": {
"description": "Optional. DO NOT USE - Under development. The size of the desired secondary ranges for the subnet. Use usual CIDR range notation. For example, '30' to find unused x.x.x.x/30 CIDR range. The goal is to determine that the allocated ranges have enough free space for all the requested secondary ranges.",
"description": "Optional. The size of the desired secondary ranges for the subnet. Use usual CIDR range notation. For example, '30' to find unused x.x.x.x/30 CIDR range. The goal is to determine that the allocated ranges have enough free space for all the requested secondary ranges.",
"items": {
"format": "int32",
"type": "integer"
},
"type": "array"
},
"subnetworkCandidates": {
"description": "Optional. List of subnetwork candidates to validate. The required input fields are `name`, `network`, and `region`. Subnetworks from this list which exist will be returned in the response with the `ip_cidr_range`, `secondary_ip_cider_ranges`, and `outside_allocation` fields set.",
"items": {
"$ref": "Subnetwork"
},
"type": "array"
}
},
"type": "object"
Expand Down Expand Up @@ -2752,7 +2796,7 @@
"type": "object"
},
"Service": {
"description": "`Service` is the root object of Google service configuration schema. It describes basic information about a service, such as the name and the title, and delegates other aspects to sub-sections. Each sub-section is either a proto message or a repeated proto message that configures a specific aspect, such as auth. See each proto message definition for details. Example: type: google.api.Service config_version: 3 name: calendar.googleapis.com title: Google Calendar API apis: - name: google.calendar.v3.Calendar authentication: providers: - id: google_calendar_auth jwks_uri: https://www.googleapis.com/oauth2/v1/certs issuer: https://securetoken.google.com rules: - selector: \"*\" requirements: provider_id: google_calendar_auth",
"description": "`Service` is the root object of Google service configuration schema. It describes basic information about a service, such as the name and the title, and delegates other aspects to sub-sections. Each sub-section is either a proto message or a repeated proto message that configures a specific aspect, such as auth. See each proto message definition for details. Example: type: google.api.Service name: calendar.googleapis.com title: Google Calendar API apis: - name: google.calendar.v3.Calendar authentication: providers: - id: google_calendar_auth jwks_uri: https://www.googleapis.com/oauth2/v1/certs issuer: https://securetoken.google.com rules: - selector: \"*\" requirements: provider_id: google_calendar_auth",
"id": "Service",
"properties": {
"apis": {
Expand All @@ -2775,7 +2819,7 @@
"description": "Billing configuration."
},
"configVersion": {
"description": "This field is obsolete. Its value must be set to `3`.",
"description": "Deprecated. The service config compiler always sets this field to `3`.",
"format": "uint32",
"type": "integer"
},
Expand Down Expand Up @@ -2967,6 +3011,10 @@
"description": "This is a discovered subnet that is not within the current consumer allocated ranges.",
"type": "boolean"
},
"region": {
"description": "GCP region where the subnetwork is located.",
"type": "string"
},
"secondaryIpRanges": {
"description": "List of secondary IP ranges in this subnetwork.",
"items": {
Expand Down Expand Up @@ -3125,7 +3173,7 @@
"type": "string"
},
"requirements": {
"description": "Requirements that must be satisfied before a consumer project can use the service. Each requirement is of the form /; for example 'serviceusage.googleapis.com/billing-enabled'.",
"description": "Requirements that must be satisfied before a consumer project can use the service. Each requirement is of the form /; for example 'serviceusage.googleapis.com/billing-enabled'. For Google APIs, a Terms of Service requirement must be included here. Google Cloud APIs must include \"serviceusage.googleapis.com/tos/cloud\". Other Google APIs should include \"serviceusage.googleapis.com/tos/universal\". Additional ToS can be included based on the business needs.",
"items": {
"type": "string"
},
Expand Down Expand Up @@ -3185,10 +3233,19 @@
"ValidateConsumerConfigResponse": {
"id": "ValidateConsumerConfigResponse",
"properties": {
"existingSubnetworkCandidates": {
"description": "List of subnetwork candidates from the request which exist with the `ip_cidr_range`, `secondary_ip_cider_ranges`, and `outside_allocation` fields set.",
"items": {
"$ref": "Subnetwork"
},
"type": "array"
},
"isValid": {
"description": "Indicates whether all the requested validations passed.",
"type": "boolean"
},
"validationError": {
"description": "The first validation which failed.",
"enum": [
"VALIDATION_ERROR_UNSPECIFIED",
"VALIDATION_NOT_REQUESTED",
Expand Down

0 comments on commit 1e7807e

Please sign in to comment.