diff --git a/.gitignore b/.gitignore index e869cd90..5d32b237 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,7 @@ **/*.log **/node_modules .coverage +coverage .nyc_output docs/ out/ @@ -9,6 +10,5 @@ system-test/secrets.js system-test/*key.json *.lock .DS_Store -__pycache__ -.vscode package-lock.json +__pycache__ diff --git a/.jsdoc.js b/.jsdoc.js index 4cf9a1d7..20014ff5 100644 --- a/.jsdoc.js +++ b/.jsdoc.js @@ -1,4 +1,4 @@ -// Copyright 2019 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -12,6 +12,9 @@ // See the License for the specific language governing permissions and // limitations under the License. // +// ** This file is automatically generated by gapic-generator-typescript. ** +// ** https://github.com/googleapis/gapic-generator-typescript ** +// ** All changes to this file may be overwritten. ** 'use strict'; @@ -31,18 +34,19 @@ module.exports = { source: { excludePattern: '(^|\\/|\\\\)[._]', include: [ - 'src' + 'build/src', + 'protos' ], includePattern: '\\.js$' }, templates: { - copyright: 'Copyright 2019 Google, LLC.', + copyright: 'Copyright 2021 Google LLC', includeDate: false, sourceFiles: false, systemName: '@google-cloud/compute', theme: 'lumen', default: { - "outputSourceFiles": false + outputSourceFiles: false } }, markdown: { diff --git a/.mocharc.js b/.mocharc.js index 5698d781..0b600509 100644 --- a/.mocharc.js +++ b/.mocharc.js @@ -14,9 +14,8 @@ const config = { "enable-source-maps": true, "throw-deprecation": true, - // There seems to be a regression such that overrides are not being - // supported by mocha: - "timeout": 1200000 + "timeout": 10000, + "recursive": true } if (process.env.MOCHA_THROW_DEPRECATION === 'false') { delete config['throw-deprecation']; diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md new file mode 100644 index 00000000..2add2547 --- /dev/null +++ b/CODE_OF_CONDUCT.md @@ -0,0 +1,94 @@ + +# Code of Conduct + +## Our Pledge + +In the interest of fostering an open and welcoming environment, we as +contributors and maintainers pledge to making participation in our project and +our community a harassment-free experience for everyone, regardless of age, body +size, disability, ethnicity, gender identity and expression, level of +experience, education, socio-economic status, nationality, personal appearance, +race, religion, or sexual identity and orientation. + +## Our Standards + +Examples of behavior that contributes to creating a positive environment +include: + +* Using welcoming and inclusive language +* Being respectful of differing viewpoints and experiences +* Gracefully accepting constructive criticism +* Focusing on what is best for the community +* Showing empathy towards other community members + +Examples of unacceptable behavior by participants include: + +* The use of sexualized language or imagery and unwelcome sexual attention or + advances +* Trolling, insulting/derogatory comments, and personal or political attacks +* Public or private harassment +* Publishing others' private information, such as a physical or electronic + address, without explicit permission +* Other conduct which could reasonably be considered inappropriate in a + professional setting + +## Our Responsibilities + +Project maintainers are responsible for clarifying the standards of acceptable +behavior and are expected to take appropriate and fair corrective action in +response to any instances of unacceptable behavior. + +Project maintainers have the right and responsibility to remove, edit, or reject +comments, commits, code, wiki edits, issues, and other contributions that are +not aligned to this Code of Conduct, or to ban temporarily or permanently any +contributor for other behaviors that they deem inappropriate, threatening, +offensive, or harmful. + +## Scope + +This Code of Conduct applies both within project spaces and in public spaces +when an individual is representing the project or its community. Examples of +representing a project or community include using an official project e-mail +address, posting via an official social media account, or acting as an appointed +representative at an online or offline event. Representation of a project may be +further defined and clarified by project maintainers. + +This Code of Conduct also applies outside the project spaces when the Project +Steward has a reasonable belief that an individual's behavior may have a +negative impact on the project or its community. + +## Conflict Resolution + +We do not believe that all conflict is bad; healthy debate and disagreement +often yield positive results. However, it is never okay to be disrespectful or +to engage in behavior that violates the project’s code of conduct. + +If you see someone violating the code of conduct, you are encouraged to address +the behavior directly with those involved. Many issues can be resolved quickly +and easily, and this gives people more control over the outcome of their +dispute. If you are unable to resolve the matter for any reason, or if the +behavior is threatening or harassing, report it. We are dedicated to providing +an environment where participants feel welcome and safe. + +Reports should be directed to *googleapis-stewards@google.com*, the +Project Steward(s) for *Google Cloud Client Libraries*. It is the Project Steward’s duty to +receive and address reported violations of the code of conduct. They will then +work with a committee consisting of representatives from the Open Source +Programs Office and the Google Open Source Strategy team. If for any reason you +are uncomfortable reaching out to the Project Steward, please email +opensource@google.com. + +We will investigate every complaint, but you may not receive a direct response. +We will use our discretion in determining when and how to follow up on reported +incidents, which may range from not taking action to permanent expulsion from +the project and project-sponsored spaces. We will notify the accused of the +report and provide them an opportunity to discuss it before any action is taken. +The identity of the reporter will be omitted from the details of the report +supplied to the accused. In potentially harmful situations, such as ongoing +harassment or threats to anyone's safety, we may take action without notice. + +## Attribution + +This Code of Conduct is adapted from the Contributor Covenant, version 1.4, +available at +https://www.contributor-covenant.org/version/1/4/code-of-conduct.html \ No newline at end of file diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 00000000..4886c436 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,76 @@ +# How to become a contributor and submit your own code + +**Table of contents** + +* [Contributor License Agreements](#contributor-license-agreements) +* [Contributing a patch](#contributing-a-patch) +* [Running the tests](#running-the-tests) +* [Releasing the library](#releasing-the-library) + +## Contributor License Agreements + +We'd love to accept your sample apps and patches! Before we can take them, we +have to jump a couple of legal hurdles. + +Please fill out either the individual or corporate Contributor License Agreement +(CLA). + + * If you are an individual writing original source code and you're sure you + own the intellectual property, then you'll need to sign an [individual CLA](https://developers.google.com/open-source/cla/individual). + * If you work for a company that wants to allow you to contribute your work, + then you'll need to sign a [corporate CLA](https://developers.google.com/open-source/cla/corporate). + +Follow either of the two links above to access the appropriate CLA and +instructions for how to sign and return it. Once we receive it, we'll be able to +accept your pull requests. + +## Contributing A Patch + +1. Submit an issue describing your proposed change to the repo in question. +1. The repo owner will respond to your issue promptly. +1. If your proposed change is accepted, and you haven't already done so, sign a + Contributor License Agreement (see details above). +1. Fork the desired repo, develop and test your code changes. +1. Ensure that your code adheres to the existing style in the code to which + you are contributing. +1. Ensure that your code has an appropriate set of tests which all pass. +1. Title your pull request following [Conventional Commits](https://www.conventionalcommits.org/) styling. +1. Submit a pull request. + +### Before you begin + +1. [Select or create a Cloud Platform project][projects]. +1. [Enable billing for your project][billing]. +1. [Enable the Google Compute Engine API][enable_api]. +1. [Set up authentication with a service account][auth] so you can access the + API from your local workstation. + + +## Running the tests + +1. [Prepare your environment for Node.js setup][setup]. + +1. Install dependencies: + + npm install + +1. Run the tests: + + # Run unit tests. + npm test + + # Run sample integration tests. + npm run samples-test + + # Run all system tests. + npm run system-test + +1. Lint (and maybe fix) any changes: + + npm run fix + +[setup]: https://cloud.google.com/nodejs/docs/setup +[projects]: https://console.cloud.google.com/project +[billing]: https://support.google.com/cloud/answer/6293499#enable-billing +[enable_api]: https://console.cloud.google.com/flows/enableapi?apiid=compute.googleapis.com +[auth]: https://cloud.google.com/docs/authentication/getting-started \ No newline at end of file diff --git a/LICENSE b/LICENSE new file mode 100644 index 00000000..d6456956 --- /dev/null +++ b/LICENSE @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/README.md b/README.md index 38f7f433..7abe9308 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,185 @@ -# Compute: Nodejs Client +[//]: # "This README.md file is auto-generated, all changes to this file will be lost." +[//]: # "To regenerate it, use `python -m synthtool`." +Google Cloud Platform logo -This alpha version is generated by [GAPIC -generator](https://github.com/gapic-generator-typescript). -This generated library will eventually replace the current manually written -Compute Node.js library. Stay tuned! +# [Google Compute Engine: Node.js Client](https://github.com/googleapis/nodejs-compute) + +[![release level](https://img.shields.io/badge/release%20level-alpha-orange.svg?style=flat)](https://cloud.google.com/terms/launch-stages) +[![npm version](https://img.shields.io/npm/v/@google-cloud/compute.svg)](https://www.npmjs.org/package/@google-cloud/compute) +[![codecov](https://img.shields.io/codecov/c/github/googleapis/nodejs-compute/master.svg?style=flat)](https://codecov.io/gh/googleapis/nodejs-compute) + + + + +Google Compute Engine Client Library for Node.js + + +A comprehensive list of changes in each version may be found in +[the CHANGELOG](https://github.com/googleapis/nodejs-compute/blob/master/CHANGELOG.md). + +* [Google Compute Engine Node.js Client API Reference][client-docs] +* [Google Compute Engine Documentation][product-docs] +* [github.com/googleapis/nodejs-compute](https://github.com/googleapis/nodejs-compute) + +Read more about the client libraries for Cloud APIs, including the older +Google APIs Client Libraries, in [Client Libraries Explained][explained]. + +[explained]: https://cloud.google.com/apis/docs/client-libraries-explained + +**Table of contents:** + + +* [Quickstart](#quickstart) + * [Before you begin](#before-you-begin) + * [Installing the client library](#installing-the-client-library) + * [Using the client library](#using-the-client-library) +* [Samples](#samples) +* [Versioning](#versioning) +* [Contributing](#contributing) +* [License](#license) + +## Quickstart + +### Before you begin + +1. [Select or create a Cloud Platform project][projects]. +1. [Enable billing for your project][billing]. +1. [Enable the Google Compute Engine API][enable_api]. +1. [Set up authentication with a service account][auth] so you can access the + API from your local workstation. + +### Installing the client library + +```bash +npm install @google-cloud/compute +``` + + +### Using the client library + +```javascript +const compute = require('@google-cloud/compute'); + +function sleep(timeoutMs) { + return new Promise(resolve => { + setTimeout(resolve, timeoutMs); + }); +} + +const client = new compute.AddressesClient({fallback: 'rest'}); +const project = await client.getProjectId(); +const region = 'us-east1'; + +const addressResource = { + name: 'test-address-123', +}; + +const [insertResponse] = await client.insert({ + project, + region, + addressResource, +}); +console.log(insertResponse); + +await sleep(5000); + +const [listResponse1] = await client.list({ + project, + region, +}); +console.log(listResponse1); + +const [deleteResponse] = await client.delete({ + project, + region, + address: addressResource.name, +}); +console.log(deleteResponse); + +await sleep(5000); + +const [listResponse2] = await client.list({ + project, + region, +}); +console.log(listResponse2); +console.log('Quickstart sample completed'); + +``` + + + +## Samples + +Samples are in the [`samples/`](https://github.com/googleapis/nodejs-compute/tree/master/samples) directory. Each sample's `README.md` has instructions for running its sample. + +| Sample | Source Code | Try it | +| --------------------------- | --------------------------------- | ------ | +| Quickstart | [source code](https://github.com/googleapis/nodejs-compute/blob/master/samples/quickstart.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/nodejs-compute&page=editor&open_in_editor=samples/quickstart.js,samples/README.md) | + + + +The [Google Compute Engine Node.js Client API Reference][client-docs] documentation +also contains samples. + +## Supported Node.js Versions + +Our client libraries follow the [Node.js release schedule](https://nodejs.org/en/about/releases/). +Libraries are compatible with all current _active_ and _maintenance_ versions of +Node.js. + +Client libraries targeting some end-of-life versions of Node.js are available, and +can be installed via npm [dist-tags](https://docs.npmjs.com/cli/dist-tag). +The dist-tags follow the naming convention `legacy-(version)`. + +_Legacy Node.js versions are supported as a best effort:_ + +* Legacy versions will not be tested in continuous integration. +* Some security patches may not be able to be backported. +* Dependencies will not be kept up-to-date, and features will not be backported. + +#### Legacy tags available + +* `legacy-8`: install client libraries from this dist-tag for versions + compatible with Node.js 8. + +## Versioning + +This library follows [Semantic Versioning](http://semver.org/). + + + + +This library is considered to be in **alpha**. This means it is still a +work-in-progress and under active development. Any release is subject to +backwards-incompatible changes at any time. + + + +More Information: [Google Cloud Platform Launch Stages][launch_stages] + +[launch_stages]: https://cloud.google.com/terms/launch-stages + +## Contributing + +Contributions welcome! See the [Contributing Guide](https://github.com/googleapis/nodejs-compute/blob/master/CONTRIBUTING.md). + +Please note that this `README.md`, the `samples/README.md`, +and a variety of configuration files in this repository (including `.nycrc` and `tsconfig.json`) +are generated from a central template. To edit one of these files, make an edit +to its template in this +[directory](https://github.com/googleapis/synthtool/tree/master/synthtool/gcp/templates/node_library). + +## License + +Apache Version 2.0 + +See [LICENSE](https://github.com/googleapis/nodejs-compute/blob/master/LICENSE) + +[client-docs]: https://googleapis.dev/nodejs/compute/latest +[product-docs]: https://cloud.google.com/compute +[shell_img]: https://gstatic.com/cloudssh/images/open-btn.png +[projects]: https://console.cloud.google.com/project +[billing]: https://support.google.com/cloud/answer/6293499#enable-billing +[enable_api]: https://console.cloud.google.com/flows/enableapi?apiid=compute.googleapis.com +[auth]: https://cloud.google.com/docs/authentication/getting-started diff --git a/api-extractor.json b/api-extractor.json new file mode 100644 index 00000000..de228294 --- /dev/null +++ b/api-extractor.json @@ -0,0 +1,369 @@ +/** + * Config file for API Extractor. For more info, please visit: https://api-extractor.com + */ +{ + "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", + + /** + * Optionally specifies another JSON config file that this file extends from. This provides a way for + * standard settings to be shared across multiple projects. + * + * If the path starts with "./" or "../", the path is resolved relative to the folder of the file that contains + * the "extends" field. Otherwise, the first path segment is interpreted as an NPM package name, and will be + * resolved using NodeJS require(). + * + * SUPPORTED TOKENS: none + * DEFAULT VALUE: "" + */ + // "extends": "./shared/api-extractor-base.json" + // "extends": "my-package/include/api-extractor-base.json" + + /** + * Determines the "" token that can be used with other config file settings. The project folder + * typically contains the tsconfig.json and package.json config files, but the path is user-defined. + * + * The path is resolved relative to the folder of the config file that contains the setting. + * + * The default value for "projectFolder" is the token "", which means the folder is determined by traversing + * parent folders, starting from the folder containing api-extractor.json, and stopping at the first folder + * that contains a tsconfig.json file. If a tsconfig.json file cannot be found in this way, then an error + * will be reported. + * + * SUPPORTED TOKENS: + * DEFAULT VALUE: "" + */ + // "projectFolder": "..", + + /** + * (REQUIRED) Specifies the .d.ts file to be used as the starting point for analysis. API Extractor + * analyzes the symbols exported by this module. + * + * The file extension must be ".d.ts" and not ".ts". + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * SUPPORTED TOKENS: , , + */ + "mainEntryPointFilePath": "/protos/protos.d.ts", + + /** + * A list of NPM package names whose exports should be treated as part of this package. + * + * For example, suppose that Webpack is used to generate a distributed bundle for the project "library1", + * and another NPM package "library2" is embedded in this bundle. Some types from library2 may become part + * of the exported API for library1, but by default API Extractor would generate a .d.ts rollup that explicitly + * imports library2. To avoid this, we can specify: + * + * "bundledPackages": [ "library2" ], + * + * This would direct API Extractor to embed those types directly in the .d.ts rollup, as if they had been + * local files for library1. + */ + "bundledPackages": [ ], + + /** + * Determines how the TypeScript compiler engine will be invoked by API Extractor. + */ + "compiler": { + /** + * Specifies the path to the tsconfig.json file to be used by API Extractor when analyzing the project. + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * Note: This setting will be ignored if "overrideTsconfig" is used. + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "/tsconfig.json" + */ + // "tsconfigFilePath": "/tsconfig.json", + + /** + * Provides a compiler configuration that will be used instead of reading the tsconfig.json file from disk. + * The object must conform to the TypeScript tsconfig schema: + * + * http://json.schemastore.org/tsconfig + * + * If omitted, then the tsconfig.json file will be read from the "projectFolder". + * + * DEFAULT VALUE: no overrideTsconfig section + */ + // "overrideTsconfig": { + // . . . + // } + + /** + * This option causes the compiler to be invoked with the --skipLibCheck option. This option is not recommended + * and may cause API Extractor to produce incomplete or incorrect declarations, but it may be required when + * dependencies contain declarations that are incompatible with the TypeScript engine that API Extractor uses + * for its analysis. Where possible, the underlying issue should be fixed rather than relying on skipLibCheck. + * + * DEFAULT VALUE: false + */ + // "skipLibCheck": true, + }, + + /** + * Configures how the API report file (*.api.md) will be generated. + */ + "apiReport": { + /** + * (REQUIRED) Whether to generate an API report. + */ + "enabled": true, + + /** + * The filename for the API report files. It will be combined with "reportFolder" or "reportTempFolder" to produce + * a full file path. + * + * The file extension should be ".api.md", and the string should not contain a path separator such as "\" or "/". + * + * SUPPORTED TOKENS: , + * DEFAULT VALUE: ".api.md" + */ + // "reportFileName": ".api.md", + + /** + * Specifies the folder where the API report file is written. The file name portion is determined by + * the "reportFileName" setting. + * + * The API report file is normally tracked by Git. Changes to it can be used to trigger a branch policy, + * e.g. for an API review. + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "/etc/" + */ + // "reportFolder": "/etc/", + + /** + * Specifies the folder where the temporary report file is written. The file name portion is determined by + * the "reportFileName" setting. + * + * After the temporary file is written to disk, it is compared with the file in the "reportFolder". + * If they are different, a production build will fail. + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "/temp/" + */ + // "reportTempFolder": "/temp/" + }, + + /** + * Configures how the doc model file (*.api.json) will be generated. + */ + "docModel": { + /** + * (REQUIRED) Whether to generate a doc model file. + */ + "enabled": true, + + /** + * The output path for the doc model file. The file extension should be ".api.json". + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "/temp/.api.json" + */ + // "apiJsonFilePath": "/temp/.api.json" + }, + + /** + * Configures how the .d.ts rollup file will be generated. + */ + "dtsRollup": { + /** + * (REQUIRED) Whether to generate the .d.ts rollup file. + */ + "enabled": true, + + /** + * Specifies the output path for a .d.ts rollup file to be generated without any trimming. + * This file will include all declarations that are exported by the main entry point. + * + * If the path is an empty string, then this file will not be written. + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "/dist/.d.ts" + */ + // "untrimmedFilePath": "/dist/.d.ts", + + /** + * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "beta" release. + * This file will include only declarations that are marked as "@public" or "@beta". + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "" + */ + // "betaTrimmedFilePath": "/dist/-beta.d.ts", + + + /** + * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "public" release. + * This file will include only declarations that are marked as "@public". + * + * If the path is an empty string, then this file will not be written. + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "" + */ + // "publicTrimmedFilePath": "/dist/-public.d.ts", + + /** + * When a declaration is trimmed, by default it will be replaced by a code comment such as + * "Excluded from this release type: exampleMember". Set "omitTrimmingComments" to true to remove the + * declaration completely. + * + * DEFAULT VALUE: false + */ + // "omitTrimmingComments": true + }, + + /** + * Configures how the tsdoc-metadata.json file will be generated. + */ + "tsdocMetadata": { + /** + * Whether to generate the tsdoc-metadata.json file. + * + * DEFAULT VALUE: true + */ + // "enabled": true, + + /** + * Specifies where the TSDoc metadata file should be written. + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * The default value is "", which causes the path to be automatically inferred from the "tsdocMetadata", + * "typings" or "main" fields of the project's package.json. If none of these fields are set, the lookup + * falls back to "tsdoc-metadata.json" in the package folder. + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "" + */ + // "tsdocMetadataFilePath": "/dist/tsdoc-metadata.json" + }, + + /** + * Specifies what type of newlines API Extractor should use when writing output files. By default, the output files + * will be written with Windows-style newlines. To use POSIX-style newlines, specify "lf" instead. + * To use the OS's default newline kind, specify "os". + * + * DEFAULT VALUE: "crlf" + */ + // "newlineKind": "crlf", + + /** + * Configures how API Extractor reports error and warning messages produced during analysis. + * + * There are three sources of messages: compiler messages, API Extractor messages, and TSDoc messages. + */ + "messages": { + /** + * Configures handling of diagnostic messages reported by the TypeScript compiler engine while analyzing + * the input .d.ts files. + * + * TypeScript message identifiers start with "TS" followed by an integer. For example: "TS2551" + * + * DEFAULT VALUE: A single "default" entry with logLevel=warning. + */ + "compilerMessageReporting": { + /** + * Configures the default routing for messages that don't match an explicit rule in this table. + */ + "default": { + /** + * Specifies whether the message should be written to the the tool's output log. Note that + * the "addToApiReportFile" property may supersede this option. + * + * Possible values: "error", "warning", "none" + * + * Errors cause the build to fail and return a nonzero exit code. Warnings cause a production build fail + * and return a nonzero exit code. For a non-production build (e.g. when "api-extractor run" includes + * the "--local" option), the warning is displayed but the build will not fail. + * + * DEFAULT VALUE: "warning" + */ + "logLevel": "warning", + + /** + * When addToApiReportFile is true: If API Extractor is configured to write an API report file (.api.md), + * then the message will be written inside that file; otherwise, the message is instead logged according to + * the "logLevel" option. + * + * DEFAULT VALUE: false + */ + // "addToApiReportFile": false + }, + + // "TS2551": { + // "logLevel": "warning", + // "addToApiReportFile": true + // }, + // + // . . . + }, + + /** + * Configures handling of messages reported by API Extractor during its analysis. + * + * API Extractor message identifiers start with "ae-". For example: "ae-extra-release-tag" + * + * DEFAULT VALUE: See api-extractor-defaults.json for the complete table of extractorMessageReporting mappings + */ + "extractorMessageReporting": { + "default": { + "logLevel": "warning", + // "addToApiReportFile": false + }, + + // "ae-extra-release-tag": { + // "logLevel": "warning", + // "addToApiReportFile": true + // }, + // + // . . . + }, + + /** + * Configures handling of messages reported by the TSDoc parser when analyzing code comments. + * + * TSDoc message identifiers start with "tsdoc-". For example: "tsdoc-link-tag-unescaped-text" + * + * DEFAULT VALUE: A single "default" entry with logLevel=warning. + */ + "tsdocMessageReporting": { + "default": { + "logLevel": "warning", + // "addToApiReportFile": false + } + + // "tsdoc-link-tag-unescaped-text": { + // "logLevel": "warning", + // "addToApiReportFile": true + // }, + // + // . . . + } + } + +} diff --git a/linkinator.config.json b/linkinator.config.json index 29a223b6..56c714b3 100644 --- a/linkinator.config.json +++ b/linkinator.config.json @@ -3,8 +3,9 @@ "skip": [ "https://codecov.io/gh/googleapis/", "www.googleapis.com", - "img.shields.io" + "img.shields.io", + "docs/cdn/docs/invalidating-cached-content" ], "silent": true, - "concurrency": 10 + "concurrency": 50 } diff --git a/package.json b/package.json index 7b41f072..5c6e1366 100644 --- a/package.json +++ b/package.json @@ -1,17 +1,7 @@ { "name": "@google-cloud/compute", -<<<<<<< HEAD "description": "Google Compute Engine Client Library for Node.js", - "version": "2.4.2", - "license": "Apache-2.0", - "author": "Google Inc.", - "engines": { - "node": ">=10" - }, -======= - "version": "3.0.0-alpha.0", - "description": "Compute client for Node.js", ->>>>>>> 335c257 (feat!: DIREGAPIC Compute alpha) + "version": "3.0.0-alpha.1", "repository": "googleapis/nodejs-compute", "license": "Apache-2.0", "author": "Google LLC", @@ -106,20 +96,25 @@ "zones" ], "scripts": { + "test": "c8 node build/test/run.js", + "samples-test": "cd samples/ && npm link ../ && npm install && npm test && cd ../", + "system-test": "mocha build/system-test", + "lint": "gts check", + "fix": "gts fix", + "docs": "jsdoc -c .jsdoc.js", + "docs-test": "linkinator docs", "clean": "gts clean", "compile": "tsc -p . && cp -r protos build/", "compile-protos": "compileProtos src", - "docs": "jsdoc -c .jsdoc.js", "predocs-test": "npm run docs", - "docs-test": "linkinator docs", - "fix": "gts fix", - "lint": "gts check", "prepare": "npm run compile-protos && npm run compile", - "system-test": "c8 mocha build/system-test", - "test": "c8 mocha build/test" + "prelint": "cd samples; npm link ../; npm install", + "precompile": "gts clean", + "api-extractor": "api-extractor run --local", + "api-documenter": "api-documenter yaml --input-folder=temp" }, "dependencies": { - "google-gax": "googleapis/gax-nodejs#transcoding" + "google-gax": "^2.10.0" }, "devDependencies": { "@types/mocha": "^8.2.0", @@ -141,6 +136,6 @@ "webpack-cli": "^4.2.0" }, "engines": { - "node": ">=10.0.0" + "node": ">=10" } } diff --git a/protos/google/cloud/compute/v1/compute.proto b/protos/google/cloud/compute/v1/compute.proto index 79caefff..e62583de 100644 --- a/protos/google/cloud/compute/v1/compute.proto +++ b/protos/google/cloud/compute/v1/compute.proto @@ -13816,7 +13816,8 @@ message GetAddressRequest { // A request message for Addresses.Insert. See the method description for details. message InsertAddressRequest { - Address address_resource = 215452665; + // The body resource for this request + Address address_resource = 215452665 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -13938,7 +13939,8 @@ message GetAutoscalerRequest { // A request message for Autoscalers.Insert. See the method description for details. message InsertAutoscalerRequest { - Autoscaler autoscaler_resource = 207616118; + // The body resource for this request + Autoscaler autoscaler_resource = 207616118 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -13995,7 +13997,8 @@ message PatchAutoscalerRequest { // Name of the autoscaler to patch. string autoscaler = 248823511; - Autoscaler autoscaler_resource = 207616118; + // The body resource for this request + Autoscaler autoscaler_resource = 207616118 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -14017,7 +14020,8 @@ message UpdateAutoscalerRequest { // Name of the autoscaler to update. string autoscaler = 248823511; - Autoscaler autoscaler_resource = 207616118; + // The body resource for this request + Autoscaler autoscaler_resource = 207616118 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -14049,7 +14053,8 @@ message AddSignedUrlKeyBackendBucketRequest { // The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). string request_id = 37109963; - SignedUrlKey signed_url_key_resource = 189190529; + // The body resource for this request + SignedUrlKey signed_url_key_resource = 189190529 [(google.api.field_behavior) = REQUIRED]; } @@ -14102,7 +14107,8 @@ message GetBackendBucketRequest { // A request message for BackendBuckets.Insert. See the method description for details. message InsertBackendBucketRequest { - BackendBucket backend_bucket_resource = 112322328; + // The body resource for this request + BackendBucket backend_bucket_resource = 112322328 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -14153,7 +14159,8 @@ message PatchBackendBucketRequest { // Name of the BackendBucket resource to patch. string backend_bucket = 91714037 [(google.api.field_behavior) = REQUIRED]; - BackendBucket backend_bucket_resource = 112322328; + // The body resource for this request + BackendBucket backend_bucket_resource = 112322328 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -14172,7 +14179,8 @@ message UpdateBackendBucketRequest { // Name of the BackendBucket resource to update. string backend_bucket = 91714037 [(google.api.field_behavior) = REQUIRED]; - BackendBucket backend_bucket_resource = 112322328; + // The body resource for this request + BackendBucket backend_bucket_resource = 112322328 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -14201,7 +14209,8 @@ message AddSignedUrlKeyBackendServiceRequest { // The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). string request_id = 37109963; - SignedUrlKey signed_url_key_resource = 189190529; + // The body resource for this request + SignedUrlKey signed_url_key_resource = 189190529 [(google.api.field_behavior) = REQUIRED]; } @@ -14294,13 +14303,15 @@ message GetHealthBackendServiceRequest { string project = 227560217 [(google.api.field_behavior) = REQUIRED]; - ResourceGroupReference resource_group_reference_resource = 112951123; + // The body resource for this request + ResourceGroupReference resource_group_reference_resource = 112951123 [(google.api.field_behavior) = REQUIRED]; } // A request message for BackendServices.Insert. See the method description for details. message InsertBackendServiceRequest { - BackendService backend_service_resource = 79151267; + // The body resource for this request + BackendService backend_service_resource = 79151267 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -14351,7 +14362,8 @@ message PatchBackendServiceRequest { // Name of the BackendService resource to patch. string backend_service = 38510602 [(google.api.field_behavior) = REQUIRED]; - BackendService backend_service_resource = 79151267; + // The body resource for this request + BackendService backend_service_resource = 79151267 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -14380,7 +14392,8 @@ message SetSecurityPolicyBackendServiceRequest { // The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). string request_id = 37109963; - SecurityPolicyReference security_policy_reference_resource = 204135024; + // The body resource for this request + SecurityPolicyReference security_policy_reference_resource = 204135024 [(google.api.field_behavior) = REQUIRED]; } @@ -14389,7 +14402,8 @@ message UpdateBackendServiceRequest { // Name of the BackendService resource to update. string backend_service = 38510602 [(google.api.field_behavior) = REQUIRED]; - BackendService backend_service_resource = 79151267; + // The body resource for this request + BackendService backend_service_resource = 79151267 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -14491,7 +14505,8 @@ message AddResourcePoliciesDiskRequest { // The disk name for this request. string disk = 3083677 [(google.api.field_behavior) = REQUIRED]; - DisksAddResourcePoliciesRequest disks_add_resource_policies_request_resource = 228047907; + // The body resource for this request + DisksAddResourcePoliciesRequest disks_add_resource_policies_request_resource = 228047907 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -14561,7 +14576,8 @@ message CreateSnapshotDiskRequest { // The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). string request_id = 37109963; - Snapshot snapshot_resource = 212884521; + // The body resource for this request + Snapshot snapshot_resource = 212884521 [(google.api.field_behavior) = REQUIRED]; // The name of the zone for this request. string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; @@ -14619,7 +14635,8 @@ message GetIamPolicyDiskRequest { // A request message for Disks.Insert. See the method description for details. message InsertDiskRequest { - Disk disk_resource = 25880688; + // The body resource for this request + Disk disk_resource = 25880688 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -14679,7 +14696,8 @@ message RemoveResourcePoliciesDiskRequest { // The disk name for this request. string disk = 3083677 [(google.api.field_behavior) = REQUIRED]; - DisksRemoveResourcePoliciesRequest disks_remove_resource_policies_request_resource = 168321262; + // The body resource for this request + DisksRemoveResourcePoliciesRequest disks_remove_resource_policies_request_resource = 168321262 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -14701,7 +14719,8 @@ message ResizeDiskRequest { // The name of the persistent disk. string disk = 3083677 [(google.api.field_behavior) = REQUIRED]; - DisksResizeRequest disks_resize_request_resource = 78307616; + // The body resource for this request + DisksResizeRequest disks_resize_request_resource = 78307616 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -14729,7 +14748,8 @@ message SetIamPolicyDiskRequest { // The name of the zone for this request. string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; - ZoneSetPolicyRequest zone_set_policy_request_resource = 113646651; + // The body resource for this request + ZoneSetPolicyRequest zone_set_policy_request_resource = 113646651 [(google.api.field_behavior) = REQUIRED]; } @@ -14751,7 +14771,8 @@ message SetLabelsDiskRequest { // The name of the zone for this request. string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; - ZoneSetLabelsRequest zone_set_labels_request_resource = 96515342; + // The body resource for this request + ZoneSetLabelsRequest zone_set_labels_request_resource = 96515342 [(google.api.field_behavior) = REQUIRED]; } @@ -14763,7 +14784,8 @@ message TestIamPermissionsDiskRequest { // Name or id of the resource for this request. string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; - TestPermissionsRequest test_permissions_request_resource = 170779302; + // The body resource for this request + TestPermissionsRequest test_permissions_request_resource = 170779302 [(google.api.field_behavior) = REQUIRED]; // The name of the zone for this request. string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; @@ -14799,7 +14821,8 @@ message GetExternalVpnGatewayRequest { // A request message for ExternalVpnGateways.Insert. See the method description for details. message InsertExternalVpnGatewayRequest { - ExternalVpnGateway external_vpn_gateway_resource = 218378120; + // The body resource for this request + ExternalVpnGateway external_vpn_gateway_resource = 218378120 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -14847,7 +14870,8 @@ message ListExternalVpnGatewaysRequest { // A request message for ExternalVpnGateways.SetLabels. See the method description for details. message SetLabelsExternalVpnGatewayRequest { - GlobalSetLabelsRequest global_set_labels_request_resource = 51481733; + // The body resource for this request + GlobalSetLabelsRequest global_set_labels_request_resource = 51481733 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -14865,7 +14889,8 @@ message TestIamPermissionsExternalVpnGatewayRequest { // Name or id of the resource for this request. string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; - TestPermissionsRequest test_permissions_request_resource = 170779302; + // The body resource for this request + TestPermissionsRequest test_permissions_request_resource = 170779302 [(google.api.field_behavior) = REQUIRED]; } @@ -14898,7 +14923,8 @@ message GetFirewallRequest { // A request message for Firewalls.Insert. See the method description for details. message InsertFirewallRequest { - Firewall firewall_resource = 41425005; + // The body resource for this request + Firewall firewall_resource = 41425005 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -14949,7 +14975,8 @@ message PatchFirewallRequest { // Name of the firewall rule to patch. string firewall = 242580736 [(google.api.field_behavior) = REQUIRED]; - Firewall firewall_resource = 41425005; + // The body resource for this request + Firewall firewall_resource = 41425005 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -14968,7 +14995,8 @@ message UpdateFirewallRequest { // Name of the firewall rule to update. string firewall = 242580736 [(google.api.field_behavior) = REQUIRED]; - Firewall firewall_resource = 41425005; + // The body resource for this request + Firewall firewall_resource = 41425005 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -15052,7 +15080,8 @@ message GetForwardingRuleRequest { // A request message for ForwardingRules.Insert. See the method description for details. message InsertForwardingRuleRequest { - ForwardingRule forwarding_rule_resource = 32776239; + // The body resource for this request + ForwardingRule forwarding_rule_resource = 32776239 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -15109,7 +15138,8 @@ message PatchForwardingRuleRequest { // Name of the ForwardingRule resource to patch. string forwarding_rule = 1528574 [(google.api.field_behavior) = REQUIRED]; - ForwardingRule forwarding_rule_resource = 32776239; + // The body resource for this request + ForwardingRule forwarding_rule_resource = 32776239 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -15144,7 +15174,8 @@ message SetTargetForwardingRuleRequest { // The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). string request_id = 37109963; - TargetReference target_reference_resource = 255286256; + // The body resource for this request + TargetReference target_reference_resource = 255286256 [(google.api.field_behavior) = REQUIRED]; } @@ -15177,7 +15208,8 @@ message GetGlobalAddressRequest { // A request message for GlobalAddresses.Insert. See the method description for details. message InsertGlobalAddressRequest { - Address address_resource = 215452665; + // The body resource for this request + Address address_resource = 215452665 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -15252,7 +15284,8 @@ message GetGlobalForwardingRuleRequest { // A request message for GlobalForwardingRules.Insert. See the method description for details. message InsertGlobalForwardingRuleRequest { - ForwardingRule forwarding_rule_resource = 32776239; + // The body resource for this request + ForwardingRule forwarding_rule_resource = 32776239 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -15303,7 +15336,8 @@ message PatchGlobalForwardingRuleRequest { // Name of the ForwardingRule resource to patch. string forwarding_rule = 1528574 [(google.api.field_behavior) = REQUIRED]; - ForwardingRule forwarding_rule_resource = 32776239; + // The body resource for this request + ForwardingRule forwarding_rule_resource = 32776239 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -15332,13 +15366,15 @@ message SetTargetGlobalForwardingRuleRequest { // The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). string request_id = 37109963; - TargetReference target_reference_resource = 255286256; + // The body resource for this request + TargetReference target_reference_resource = 255286256 [(google.api.field_behavior) = REQUIRED]; } // A request message for GlobalNetworkEndpointGroups.AttachNetworkEndpoints. See the method description for details. message AttachNetworkEndpointsGlobalNetworkEndpointGroupRequest { - GlobalNetworkEndpointGroupsAttachEndpointsRequest global_network_endpoint_groups_attach_endpoints_request_resource = 30691563; + // The body resource for this request + GlobalNetworkEndpointGroupsAttachEndpointsRequest global_network_endpoint_groups_attach_endpoints_request_resource = 30691563 [(google.api.field_behavior) = REQUIRED]; // The name of the network endpoint group where you are attaching network endpoints to. It should comply with RFC1035. string network_endpoint_group = 165471622 [(google.api.field_behavior) = REQUIRED]; @@ -15374,7 +15410,8 @@ message DeleteGlobalNetworkEndpointGroupRequest { // A request message for GlobalNetworkEndpointGroups.DetachNetworkEndpoints. See the method description for details. message DetachNetworkEndpointsGlobalNetworkEndpointGroupRequest { - GlobalNetworkEndpointGroupsDetachEndpointsRequest global_network_endpoint_groups_detach_endpoints_request_resource = 8898269; + // The body resource for this request + GlobalNetworkEndpointGroupsDetachEndpointsRequest global_network_endpoint_groups_detach_endpoints_request_resource = 8898269 [(google.api.field_behavior) = REQUIRED]; // The name of the network endpoint group where you are removing network endpoints. It should comply with RFC1035. string network_endpoint_group = 165471622 [(google.api.field_behavior) = REQUIRED]; @@ -15403,7 +15440,8 @@ message GetGlobalNetworkEndpointGroupRequest { // A request message for GlobalNetworkEndpointGroups.Insert. See the method description for details. message InsertGlobalNetworkEndpointGroupRequest { - NetworkEndpointGroup network_endpoint_group_resource = 257353383; + // The body resource for this request + NetworkEndpointGroup network_endpoint_group_resource = 257353383 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -15705,7 +15743,8 @@ message GetHealthCheckRequest { // A request message for HealthChecks.Insert. See the method description for details. message InsertHealthCheckRequest { - HealthCheck health_check_resource = 201925032; + // The body resource for this request + HealthCheck health_check_resource = 201925032 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -15756,7 +15795,8 @@ message PatchHealthCheckRequest { // Name of the HealthCheck resource to patch. string health_check = 40441189 [(google.api.field_behavior) = REQUIRED]; - HealthCheck health_check_resource = 201925032; + // The body resource for this request + HealthCheck health_check_resource = 201925032 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -15775,7 +15815,8 @@ message UpdateHealthCheckRequest { // Name of the HealthCheck resource to update. string health_check = 40441189 [(google.api.field_behavior) = REQUIRED]; - HealthCheck health_check_resource = 201925032; + // The body resource for this request + HealthCheck health_check_resource = 201925032 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -15808,7 +15849,8 @@ message DeleteImageRequest { // A request message for Images.Deprecate. See the method description for details. message DeprecateImageRequest { - DeprecationStatus deprecation_status_resource = 64570608; + // The body resource for this request + DeprecationStatus deprecation_status_resource = 64570608 [(google.api.field_behavior) = REQUIRED]; // Image name. string image = 100313435 [(google.api.field_behavior) = REQUIRED]; @@ -15863,7 +15905,8 @@ message InsertImageRequest { // Force image creation if true. bool force_create = 197723344; - Image image_resource = 102736498; + // The body resource for this request + Image image_resource = 102736498 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -15914,7 +15957,8 @@ message PatchImageRequest { // Name of the image resource to patch. string image = 100313435 [(google.api.field_behavior) = REQUIRED]; - Image image_resource = 102736498; + // The body resource for this request + Image image_resource = 102736498 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -15930,7 +15974,8 @@ message PatchImageRequest { // A request message for Images.SetIamPolicy. See the method description for details. message SetIamPolicyImageRequest { - GlobalSetPolicyRequest global_set_policy_request_resource = 68613042; + // The body resource for this request + GlobalSetPolicyRequest global_set_policy_request_resource = 68613042 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -15942,7 +15987,8 @@ message SetIamPolicyImageRequest { // A request message for Images.SetLabels. See the method description for details. message SetLabelsImageRequest { - GlobalSetLabelsRequest global_set_labels_request_resource = 51481733; + // The body resource for this request + GlobalSetLabelsRequest global_set_labels_request_resource = 51481733 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -15960,7 +16006,8 @@ message TestIamPermissionsImageRequest { // Name or id of the resource for this request. string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; - TestPermissionsRequest test_permissions_request_resource = 170779302; + // The body resource for this request + TestPermissionsRequest test_permissions_request_resource = 170779302 [(google.api.field_behavior) = REQUIRED]; } @@ -15969,7 +16016,8 @@ message AbandonInstancesInstanceGroupManagerRequest { // The name of the managed instance group. string instance_group_manager = 249363395 [(google.api.field_behavior) = REQUIRED]; - InstanceGroupManagersAbandonInstancesRequest instance_group_managers_abandon_instances_request_resource = 52493560; + // The body resource for this request + InstanceGroupManagersAbandonInstancesRequest instance_group_managers_abandon_instances_request_resource = 52493560 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -16026,7 +16074,8 @@ message ApplyUpdatesToInstancesInstanceGroupManagerRequest { // The name of the managed instance group, should conform to RFC1035. string instance_group_manager = 249363395 [(google.api.field_behavior) = REQUIRED]; - InstanceGroupManagersApplyUpdatesRequest instance_group_managers_apply_updates_request_resource = 259242835; + // The body resource for this request + InstanceGroupManagersApplyUpdatesRequest instance_group_managers_apply_updates_request_resource = 259242835 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -16041,7 +16090,8 @@ message CreateInstancesInstanceGroupManagerRequest { // The name of the managed instance group. It should conform to RFC1035. string instance_group_manager = 249363395 [(google.api.field_behavior) = REQUIRED]; - InstanceGroupManagersCreateInstancesRequest instance_group_managers_create_instances_request_resource = 24558867; + // The body resource for this request + InstanceGroupManagersCreateInstancesRequest instance_group_managers_create_instances_request_resource = 24558867 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -16083,7 +16133,8 @@ message DeleteInstancesInstanceGroupManagerRequest { // The name of the managed instance group. string instance_group_manager = 249363395 [(google.api.field_behavior) = REQUIRED]; - InstanceGroupManagersDeleteInstancesRequest instance_group_managers_delete_instances_request_resource = 166421252; + // The body resource for this request + InstanceGroupManagersDeleteInstancesRequest instance_group_managers_delete_instances_request_resource = 166421252 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -16105,7 +16156,8 @@ message DeletePerInstanceConfigsInstanceGroupManagerRequest { // The name of the managed instance group. It should conform to RFC1035. string instance_group_manager = 249363395 [(google.api.field_behavior) = REQUIRED]; - InstanceGroupManagersDeletePerInstanceConfigsReq instance_group_managers_delete_per_instance_configs_req_resource = 93992224; + // The body resource for this request + InstanceGroupManagersDeletePerInstanceConfigsReq instance_group_managers_delete_per_instance_configs_req_resource = 93992224 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -16130,7 +16182,8 @@ message GetInstanceGroupManagerRequest { // A request message for InstanceGroupManagers.Insert. See the method description for details. message InsertInstanceGroupManagerRequest { - InstanceGroupManager instance_group_manager_resource = 261063946; + // The body resource for this request + InstanceGroupManager instance_group_manager_resource = 261063946 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -16301,7 +16354,8 @@ message PatchInstanceGroupManagerRequest { // The name of the instance group manager. string instance_group_manager = 249363395 [(google.api.field_behavior) = REQUIRED]; - InstanceGroupManager instance_group_manager_resource = 261063946; + // The body resource for this request + InstanceGroupManager instance_group_manager_resource = 261063946 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -16323,7 +16377,8 @@ message PatchPerInstanceConfigsInstanceGroupManagerRequest { // The name of the managed instance group. It should conform to RFC1035. string instance_group_manager = 249363395 [(google.api.field_behavior) = REQUIRED]; - InstanceGroupManagersPatchPerInstanceConfigsReq instance_group_managers_patch_per_instance_configs_req_resource = 88215039; + // The body resource for this request + InstanceGroupManagersPatchPerInstanceConfigsReq instance_group_managers_patch_per_instance_configs_req_resource = 88215039 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -16345,7 +16400,8 @@ message RecreateInstancesInstanceGroupManagerRequest { // The name of the managed instance group. string instance_group_manager = 249363395 [(google.api.field_behavior) = REQUIRED]; - InstanceGroupManagersRecreateInstancesRequest instance_group_managers_recreate_instances_request_resource = 21405952; + // The body resource for this request + InstanceGroupManagersRecreateInstancesRequest instance_group_managers_recreate_instances_request_resource = 21405952 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -16390,7 +16446,8 @@ message SetInstanceTemplateInstanceGroupManagerRequest { // The name of the managed instance group. string instance_group_manager = 249363395 [(google.api.field_behavior) = REQUIRED]; - InstanceGroupManagersSetInstanceTemplateRequest instance_group_managers_set_instance_template_request_resource = 9809093; + // The body resource for this request + InstanceGroupManagersSetInstanceTemplateRequest instance_group_managers_set_instance_template_request_resource = 9809093 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -16412,7 +16469,8 @@ message SetTargetPoolsInstanceGroupManagerRequest { // The name of the managed instance group. string instance_group_manager = 249363395 [(google.api.field_behavior) = REQUIRED]; - InstanceGroupManagersSetTargetPoolsRequest instance_group_managers_set_target_pools_request_resource = 12714760; + // The body resource for this request + InstanceGroupManagersSetTargetPoolsRequest instance_group_managers_set_target_pools_request_resource = 12714760 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -16434,7 +16492,8 @@ message UpdatePerInstanceConfigsInstanceGroupManagerRequest { // The name of the managed instance group. It should conform to RFC1035. string instance_group_manager = 249363395 [(google.api.field_behavior) = REQUIRED]; - InstanceGroupManagersUpdatePerInstanceConfigsReq instance_group_managers_update_per_instance_configs_req_resource = 141402302; + // The body resource for this request + InstanceGroupManagersUpdatePerInstanceConfigsReq instance_group_managers_update_per_instance_configs_req_resource = 141402302 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -16456,7 +16515,8 @@ message AddInstancesInstanceGroupRequest { // The name of the instance group where you are adding instances. string instance_group = 81095253 [(google.api.field_behavior) = REQUIRED]; - InstanceGroupsAddInstancesRequest instance_groups_add_instances_request_resource = 185277790; + // The body resource for this request + InstanceGroupsAddInstancesRequest instance_groups_add_instances_request_resource = 185277790 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -16543,7 +16603,8 @@ message GetInstanceGroupRequest { // A request message for InstanceGroups.Insert. See the method description for details. message InsertInstanceGroupRequest { - InstanceGroup instance_group_resource = 18176696; + // The body resource for this request + InstanceGroup instance_group_resource = 18176696 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -16609,7 +16670,8 @@ message ListInstancesInstanceGroupsRequest { // The name of the instance group from which you want to generate a list of included instances. string instance_group = 81095253 [(google.api.field_behavior) = REQUIRED]; - InstanceGroupsListInstancesRequest instance_groups_list_instances_request_resource = 207819807; + // The body resource for this request + InstanceGroupsListInstancesRequest instance_groups_list_instances_request_resource = 207819807 [(google.api.field_behavior) = REQUIRED]; // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) uint32 max_results = 54715419; @@ -16640,7 +16702,8 @@ message RemoveInstancesInstanceGroupRequest { // The name of the instance group where the specified instances will be removed. string instance_group = 81095253 [(google.api.field_behavior) = REQUIRED]; - InstanceGroupsRemoveInstancesRequest instance_groups_remove_instances_request_resource = 122546361; + // The body resource for this request + InstanceGroupsRemoveInstancesRequest instance_groups_remove_instances_request_resource = 122546361 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -16662,7 +16725,8 @@ message SetNamedPortsInstanceGroupRequest { // The name of the instance group where the named ports are updated. string instance_group = 81095253 [(google.api.field_behavior) = REQUIRED]; - InstanceGroupsSetNamedPortsRequest instance_groups_set_named_ports_request_resource = 116716079; + // The body resource for this request + InstanceGroupsSetNamedPortsRequest instance_groups_set_named_ports_request_resource = 116716079 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -16721,7 +16785,8 @@ message GetIamPolicyInstanceTemplateRequest { // A request message for InstanceTemplates.Insert. See the method description for details. message InsertInstanceTemplateRequest { - InstanceTemplate instance_template_resource = 10679561; + // The body resource for this request + InstanceTemplate instance_template_resource = 10679561 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -16769,7 +16834,8 @@ message ListInstanceTemplatesRequest { // A request message for InstanceTemplates.SetIamPolicy. See the method description for details. message SetIamPolicyInstanceTemplateRequest { - GlobalSetPolicyRequest global_set_policy_request_resource = 68613042; + // The body resource for this request + GlobalSetPolicyRequest global_set_policy_request_resource = 68613042 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -16787,13 +16853,15 @@ message TestIamPermissionsInstanceTemplateRequest { // Name or id of the resource for this request. string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; - TestPermissionsRequest test_permissions_request_resource = 170779302; + // The body resource for this request + TestPermissionsRequest test_permissions_request_resource = 170779302 [(google.api.field_behavior) = REQUIRED]; } // A request message for Instances.AddAccessConfig. See the method description for details. message AddAccessConfigInstanceRequest { - AccessConfig access_config_resource = 119390096; + // The body resource for this request + AccessConfig access_config_resource = 119390096 [(google.api.field_behavior) = REQUIRED]; // The instance name for this request. string instance = 18257045 [(google.api.field_behavior) = REQUIRED]; @@ -16821,7 +16889,8 @@ message AddResourcePoliciesInstanceRequest { // The instance name for this request. string instance = 18257045 [(google.api.field_behavior) = REQUIRED]; - InstancesAddResourcePoliciesRequest instances_add_resource_policies_request_resource = 220916507; + // The body resource for this request + InstancesAddResourcePoliciesRequest instances_add_resource_policies_request_resource = 220916507 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -16875,7 +16944,8 @@ message AggregatedListInstancesRequest { // A request message for Instances.AttachDisk. See the method description for details. message AttachDiskInstanceRequest { - AttachedDisk attached_disk_resource = 90605845; + // The body resource for this request + AttachedDisk attached_disk_resource = 90605845 [(google.api.field_behavior) = REQUIRED]; // Whether to force attach the regional disk even if it's currently attached to another instance. If you try to force attach a zonal disk to an instance, you will receive an error. bool force_attach = 142758425; @@ -17066,7 +17136,8 @@ message GetShieldedInstanceIdentityInstanceRequest { // A request message for Instances.Insert. See the method description for details. message InsertInstanceRequest { - Instance instance_resource = 215988344; + // The body resource for this request + Instance instance_resource = 215988344 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -17169,7 +17240,8 @@ message RemoveResourcePoliciesInstanceRequest { // The instance name for this request. string instance = 18257045 [(google.api.field_behavior) = REQUIRED]; - InstancesRemoveResourcePoliciesRequest instances_remove_resource_policies_request_resource = 49229558; + // The body resource for this request + InstancesRemoveResourcePoliciesRequest instances_remove_resource_policies_request_resource = 49229558 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -17266,7 +17338,8 @@ message SetIamPolicyInstanceRequest { // The name of the zone for this request. string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; - ZoneSetPolicyRequest zone_set_policy_request_resource = 113646651; + // The body resource for this request + ZoneSetPolicyRequest zone_set_policy_request_resource = 113646651 [(google.api.field_behavior) = REQUIRED]; } @@ -17275,7 +17348,8 @@ message SetLabelsInstanceRequest { // Name of the instance scoping this request. string instance = 18257045 [(google.api.field_behavior) = REQUIRED]; - InstancesSetLabelsRequest instances_set_labels_request_resource = 207749344; + // The body resource for this request + InstancesSetLabelsRequest instances_set_labels_request_resource = 207749344 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -17297,7 +17371,8 @@ message SetMachineResourcesInstanceRequest { // Name of the instance scoping this request. string instance = 18257045 [(google.api.field_behavior) = REQUIRED]; - InstancesSetMachineResourcesRequest instances_set_machine_resources_request_resource = 196286318; + // The body resource for this request + InstancesSetMachineResourcesRequest instances_set_machine_resources_request_resource = 196286318 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -17319,7 +17394,8 @@ message SetMachineTypeInstanceRequest { // Name of the instance scoping this request. string instance = 18257045 [(google.api.field_behavior) = REQUIRED]; - InstancesSetMachineTypeRequest instances_set_machine_type_request_resource = 254157709; + // The body resource for this request + InstancesSetMachineTypeRequest instances_set_machine_type_request_resource = 254157709 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -17341,7 +17417,8 @@ message SetMetadataInstanceRequest { // Name of the instance scoping this request. string instance = 18257045 [(google.api.field_behavior) = REQUIRED]; - Metadata metadata_resource = 22650654; + // The body resource for this request + Metadata metadata_resource = 22650654 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -17363,7 +17440,8 @@ message SetMinCpuPlatformInstanceRequest { // Name of the instance scoping this request. string instance = 18257045 [(google.api.field_behavior) = REQUIRED]; - InstancesSetMinCpuPlatformRequest instances_set_min_cpu_platform_request_resource = 148459368; + // The body resource for this request + InstancesSetMinCpuPlatformRequest instances_set_min_cpu_platform_request_resource = 148459368 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -17395,7 +17473,8 @@ message SetSchedulingInstanceRequest { // The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). string request_id = 37109963; - Scheduling scheduling_resource = 194745945; + // The body resource for this request + Scheduling scheduling_resource = 194745945 [(google.api.field_behavior) = REQUIRED]; // The name of the zone for this request. string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; @@ -17407,7 +17486,8 @@ message SetServiceAccountInstanceRequest { // Name of the instance resource to start. string instance = 18257045 [(google.api.field_behavior) = REQUIRED]; - InstancesSetServiceAccountRequest instances_set_service_account_request_resource = 7114552; + // The body resource for this request + InstancesSetServiceAccountRequest instances_set_service_account_request_resource = 7114552 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -17439,7 +17519,8 @@ message SetShieldedInstanceIntegrityPolicyInstanceRequest { // The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). string request_id = 37109963; - ShieldedInstanceIntegrityPolicy shielded_instance_integrity_policy_resource = 140734006; + // The body resource for this request + ShieldedInstanceIntegrityPolicy shielded_instance_integrity_policy_resource = 140734006 [(google.api.field_behavior) = REQUIRED]; // The name of the zone for this request. string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; @@ -17461,7 +17542,8 @@ message SetTagsInstanceRequest { // The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). string request_id = 37109963; - Tags tags_resource = 62999924; + // The body resource for this request + Tags tags_resource = 62999924 [(google.api.field_behavior) = REQUIRED]; // The name of the zone for this request. string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; @@ -17506,7 +17588,8 @@ message StartWithEncryptionKeyInstanceRequest { // Name of the instance resource to start. string instance = 18257045 [(google.api.field_behavior) = REQUIRED]; - InstancesStartWithEncryptionKeyRequest instances_start_with_encryption_key_request_resource = 173277055; + // The body resource for this request + InstancesStartWithEncryptionKeyRequest instances_start_with_encryption_key_request_resource = 173277055 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -17551,7 +17634,8 @@ message TestIamPermissionsInstanceRequest { // Name or id of the resource for this request. string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; - TestPermissionsRequest test_permissions_request_resource = 170779302; + // The body resource for this request + TestPermissionsRequest test_permissions_request_resource = 170779302 [(google.api.field_behavior) = REQUIRED]; // The name of the zone for this request. string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; @@ -17563,7 +17647,8 @@ message UpdateInstanceRequest { // Name of the instance resource to update. string instance = 18257045 [(google.api.field_behavior) = REQUIRED]; - Instance instance_resource = 215988344; + // The body resource for this request + Instance instance_resource = 215988344 [(google.api.field_behavior) = REQUIRED]; // Specifies the action to take when updating an instance even if the updated properties do not require it. If not specified, then Compute Engine acts based on the minimum action that the updated properties require. string minimal_action = 2131604; @@ -17588,7 +17673,8 @@ message UpdateInstanceRequest { // A request message for Instances.UpdateAccessConfig. See the method description for details. message UpdateAccessConfigInstanceRequest { - AccessConfig access_config_resource = 119390096; + // The body resource for this request + AccessConfig access_config_resource = 119390096 [(google.api.field_behavior) = REQUIRED]; // The instance name for this request. string instance = 18257045 [(google.api.field_behavior) = REQUIRED]; @@ -17613,7 +17699,8 @@ message UpdateAccessConfigInstanceRequest { // A request message for Instances.UpdateDisplayDevice. See the method description for details. message UpdateDisplayDeviceInstanceRequest { - DisplayDevice display_device_resource = 21250650; + // The body resource for this request + DisplayDevice display_device_resource = 21250650 [(google.api.field_behavior) = REQUIRED]; // Name of the instance scoping this request. string instance = 18257045 [(google.api.field_behavior) = REQUIRED]; @@ -17641,7 +17728,8 @@ message UpdateNetworkInterfaceInstanceRequest { // The name of the network interface to update. string network_interface = 96952424 [(google.api.field_behavior) = REQUIRED]; - NetworkInterface network_interface_resource = 57379333; + // The body resource for this request + NetworkInterface network_interface_resource = 57379333 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -17673,7 +17761,8 @@ message UpdateShieldedInstanceConfigInstanceRequest { // The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). string request_id = 37109963; - ShieldedInstanceConfig shielded_instance_config_resource = 3623768; + // The body resource for this request + ShieldedInstanceConfig shielded_instance_config_resource = 3623768 [(google.api.field_behavior) = REQUIRED]; // The name of the zone for this request. string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; @@ -17750,7 +17839,8 @@ message GetInterconnectAttachmentRequest { // A request message for InterconnectAttachments.Insert. See the method description for details. message InsertInterconnectAttachmentRequest { - InterconnectAttachment interconnect_attachment_resource = 212341369; + // The body resource for this request + InterconnectAttachment interconnect_attachment_resource = 212341369 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -17810,7 +17900,8 @@ message PatchInterconnectAttachmentRequest { // Name of the interconnect attachment to patch. string interconnect_attachment = 39699828 [(google.api.field_behavior) = REQUIRED]; - InterconnectAttachment interconnect_attachment_resource = 212341369; + // The body resource for this request + InterconnectAttachment interconnect_attachment_resource = 212341369 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -17908,7 +17999,8 @@ message GetDiagnosticsInterconnectRequest { // A request message for Interconnects.Insert. See the method description for details. message InsertInterconnectRequest { - Interconnect interconnect_resource = 129175711; + // The body resource for this request + Interconnect interconnect_resource = 129175711 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -17959,7 +18051,8 @@ message PatchInterconnectRequest { // Name of the interconnect to update. string interconnect = 224601230 [(google.api.field_behavior) = REQUIRED]; - Interconnect interconnect_resource = 129175711; + // The body resource for this request + Interconnect interconnect_resource = 129175711 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -17991,7 +18084,8 @@ message TestIamPermissionsLicenseCodeRequest { // Name or id of the resource for this request. string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; - TestPermissionsRequest test_permissions_request_resource = 170779302; + // The body resource for this request + TestPermissionsRequest test_permissions_request_resource = 170779302 [(google.api.field_behavior) = REQUIRED]; } @@ -18037,7 +18131,8 @@ message GetIamPolicyLicenseRequest { // A request message for Licenses.Insert. See the method description for details. message InsertLicenseRequest { - License license_resource = 169519692; + // The body resource for this request + License license_resource = 169519692 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -18085,7 +18180,8 @@ message ListLicensesRequest { // A request message for Licenses.SetIamPolicy. See the method description for details. message SetIamPolicyLicenseRequest { - GlobalSetPolicyRequest global_set_policy_request_resource = 68613042; + // The body resource for this request + GlobalSetPolicyRequest global_set_policy_request_resource = 68613042 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -18103,7 +18199,8 @@ message TestIamPermissionsLicenseRequest { // Name or id of the resource for this request. string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; - TestPermissionsRequest test_permissions_request_resource = 170779302; + // The body resource for this request + TestPermissionsRequest test_permissions_request_resource = 170779302 [(google.api.field_behavior) = REQUIRED]; } @@ -18230,7 +18327,8 @@ message AttachNetworkEndpointsNetworkEndpointGroupRequest { // The name of the network endpoint group where you are attaching network endpoints to. It should comply with RFC1035. string network_endpoint_group = 165471622 [(google.api.field_behavior) = REQUIRED]; - NetworkEndpointGroupsAttachEndpointsRequest network_endpoint_groups_attach_endpoints_request_resource = 531079; + // The body resource for this request + NetworkEndpointGroupsAttachEndpointsRequest network_endpoint_groups_attach_endpoints_request_resource = 531079 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -18272,7 +18370,8 @@ message DetachNetworkEndpointsNetworkEndpointGroupRequest { // The name of the network endpoint group where you are removing network endpoints. It should comply with RFC1035. string network_endpoint_group = 165471622 [(google.api.field_behavior) = REQUIRED]; - NetworkEndpointGroupsDetachEndpointsRequest network_endpoint_groups_detach_endpoints_request_resource = 247173241; + // The body resource for this request + NetworkEndpointGroupsDetachEndpointsRequest network_endpoint_groups_detach_endpoints_request_resource = 247173241 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -18304,7 +18403,8 @@ message GetNetworkEndpointGroupRequest { // A request message for NetworkEndpointGroups.Insert. See the method description for details. message InsertNetworkEndpointGroupRequest { - NetworkEndpointGroup network_endpoint_group_resource = 257353383; + // The body resource for this request + NetworkEndpointGroup network_endpoint_group_resource = 257353383 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -18373,7 +18473,8 @@ message ListNetworkEndpointsNetworkEndpointGroupsRequest { // The name of the network endpoint group from which you want to generate a list of included network endpoints. It should comply with RFC1035. string network_endpoint_group = 165471622 [(google.api.field_behavior) = REQUIRED]; - NetworkEndpointGroupsListEndpointsRequest network_endpoint_groups_list_endpoints_request_resource = 59493390; + // The body resource for this request + NetworkEndpointGroupsListEndpointsRequest network_endpoint_groups_list_endpoints_request_resource = 59493390 [(google.api.field_behavior) = REQUIRED]; // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. // @@ -18404,7 +18505,8 @@ message TestIamPermissionsNetworkEndpointGroupRequest { // Name or id of the resource for this request. string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; - TestPermissionsRequest test_permissions_request_resource = 170779302; + // The body resource for this request + TestPermissionsRequest test_permissions_request_resource = 170779302 [(google.api.field_behavior) = REQUIRED]; // The name of the zone for this request. string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; @@ -18416,7 +18518,8 @@ message AddPeeringNetworkRequest { // Name of the network resource to add peering to. string network = 232872494 [(google.api.field_behavior) = REQUIRED]; - NetworksAddPeeringRequest networks_add_peering_request_resource = 120374965; + // The body resource for this request + NetworksAddPeeringRequest networks_add_peering_request_resource = 120374965 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -18459,7 +18562,8 @@ message GetNetworkRequest { // A request message for Networks.Insert. See the method description for details. message InsertNetworkRequest { - Network network_resource = 122105599; + // The body resource for this request + Network network_resource = 122105599 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -18565,7 +18669,8 @@ message PatchNetworkRequest { // Name of the network to update. string network = 232872494 [(google.api.field_behavior) = REQUIRED]; - Network network_resource = 122105599; + // The body resource for this request + Network network_resource = 122105599 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -18584,7 +18689,8 @@ message RemovePeeringNetworkRequest { // Name of the network resource to remove peering from. string network = 232872494 [(google.api.field_behavior) = REQUIRED]; - NetworksRemovePeeringRequest networks_remove_peering_request_resource = 152727038; + // The body resource for this request + NetworksRemovePeeringRequest networks_remove_peering_request_resource = 152727038 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -18620,7 +18726,8 @@ message UpdatePeeringNetworkRequest { // Name of the network resource which the updated peering is belonging to. string network = 232872494 [(google.api.field_behavior) = REQUIRED]; - NetworksUpdatePeeringRequest networks_update_peering_request_resource = 224433497; + // The body resource for this request + NetworksUpdatePeeringRequest networks_update_peering_request_resource = 224433497 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -18639,7 +18746,8 @@ message AddNodesNodeGroupRequest { // Name of the NodeGroup resource. string node_group = 201522690 [(google.api.field_behavior) = REQUIRED]; - NodeGroupsAddNodesRequest node_groups_add_nodes_request_resource = 131263288; + // The body resource for this request + NodeGroupsAddNodesRequest node_groups_add_nodes_request_resource = 131263288 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -18716,7 +18824,8 @@ message DeleteNodesNodeGroupRequest { // Name of the NodeGroup resource whose nodes will be deleted. string node_group = 201522690 [(google.api.field_behavior) = REQUIRED]; - NodeGroupsDeleteNodesRequest node_groups_delete_nodes_request_resource = 183298962; + // The body resource for this request + NodeGroupsDeleteNodesRequest node_groups_delete_nodes_request_resource = 183298962 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -18767,7 +18876,8 @@ message InsertNodeGroupRequest { // Initial count of nodes in the node group. int32 initial_node_count = 71951469 [(google.api.field_behavior) = REQUIRED]; - NodeGroup node_group_resource = 236886443; + // The body resource for this request + NodeGroup node_group_resource = 236886443 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -18862,7 +18972,8 @@ message PatchNodeGroupRequest { // Name of the NodeGroup resource to update. string node_group = 201522690 [(google.api.field_behavior) = REQUIRED]; - NodeGroup node_group_resource = 236886443; + // The body resource for this request + NodeGroup node_group_resource = 236886443 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -18890,7 +19001,8 @@ message SetIamPolicyNodeGroupRequest { // The name of the zone for this request. string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; - ZoneSetPolicyRequest zone_set_policy_request_resource = 113646651; + // The body resource for this request + ZoneSetPolicyRequest zone_set_policy_request_resource = 113646651 [(google.api.field_behavior) = REQUIRED]; } @@ -18899,7 +19011,8 @@ message SetNodeTemplateNodeGroupRequest { // Name of the NodeGroup resource to update. string node_group = 201522690 [(google.api.field_behavior) = REQUIRED]; - NodeGroupsSetNodeTemplateRequest node_groups_set_node_template_request_resource = 117382321; + // The body resource for this request + NodeGroupsSetNodeTemplateRequest node_groups_set_node_template_request_resource = 117382321 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -18924,7 +19037,8 @@ message TestIamPermissionsNodeGroupRequest { // Name or id of the resource for this request. string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; - TestPermissionsRequest test_permissions_request_resource = 170779302; + // The body resource for this request + TestPermissionsRequest test_permissions_request_resource = 170779302 [(google.api.field_behavior) = REQUIRED]; // The name of the zone for this request. string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; @@ -19017,7 +19131,8 @@ message GetIamPolicyNodeTemplateRequest { // A request message for NodeTemplates.Insert. See the method description for details. message InsertNodeTemplateRequest { - NodeTemplate node_template_resource = 127364406; + // The body resource for this request + NodeTemplate node_template_resource = 127364406 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -19077,7 +19192,8 @@ message SetIamPolicyNodeTemplateRequest { // The name of the region for this request. string region = 138946292 [(google.api.field_behavior) = REQUIRED]; - RegionSetPolicyRequest region_set_policy_request_resource = 8053635; + // The body resource for this request + RegionSetPolicyRequest region_set_policy_request_resource = 8053635 [(google.api.field_behavior) = REQUIRED]; // Name or id of the resource for this request. string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; @@ -19095,7 +19211,8 @@ message TestIamPermissionsNodeTemplateRequest { // Name or id of the resource for this request. string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; - TestPermissionsRequest test_permissions_request_resource = 170779302; + // The body resource for this request + TestPermissionsRequest test_permissions_request_resource = 170779302 [(google.api.field_behavior) = REQUIRED]; } @@ -19252,7 +19369,8 @@ message GetPacketMirroringRequest { // A request message for PacketMirrorings.Insert. See the method description for details. message InsertPacketMirroringRequest { - PacketMirroring packet_mirroring_resource = 225066529; + // The body resource for this request + PacketMirroring packet_mirroring_resource = 225066529 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -19309,7 +19427,8 @@ message PatchPacketMirroringRequest { // Name of the PacketMirroring resource to patch. string packet_mirroring = 22305996 [(google.api.field_behavior) = REQUIRED]; - PacketMirroring packet_mirroring_resource = 225066529; + // The body resource for this request + PacketMirroring packet_mirroring_resource = 225066529 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -19337,7 +19456,8 @@ message TestIamPermissionsPacketMirroringRequest { // Name or id of the resource for this request. string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; - TestPermissionsRequest test_permissions_request_resource = 170779302; + // The body resource for this request + TestPermissionsRequest test_permissions_request_resource = 170779302 [(google.api.field_behavior) = REQUIRED]; } @@ -19360,7 +19480,8 @@ message DisableXpnResourceProjectRequest { // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; - ProjectsDisableXpnResourceRequest projects_disable_xpn_resource_request_resource = 209136170; + // The body resource for this request + ProjectsDisableXpnResourceRequest projects_disable_xpn_resource_request_resource = 209136170 [(google.api.field_behavior) = REQUIRED]; // 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. // @@ -19390,7 +19511,8 @@ message EnableXpnResourceProjectRequest { // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; - ProjectsEnableXpnResourceRequest projects_enable_xpn_resource_request_resource = 153544751; + // The body resource for this request + ProjectsEnableXpnResourceRequest projects_enable_xpn_resource_request_resource = 153544751 [(google.api.field_behavior) = REQUIRED]; // 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. // @@ -19474,7 +19596,8 @@ message ListXpnHostsProjectsRequest { // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; - ProjectsListXpnHostsRequest projects_list_xpn_hosts_request_resource = 238266391; + // The body resource for this request + ProjectsListXpnHostsRequest projects_list_xpn_hosts_request_resource = 238266391 [(google.api.field_behavior) = REQUIRED]; // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false and the logic is the same as today. bool return_partial_success = 248762934; @@ -19483,7 +19606,8 @@ message ListXpnHostsProjectsRequest { // A request message for Projects.MoveDisk. See the method description for details. message MoveDiskProjectRequest { - DiskMoveRequest disk_move_request_resource = 44573002; + // The body resource for this request + DiskMoveRequest disk_move_request_resource = 44573002 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -19499,7 +19623,8 @@ message MoveDiskProjectRequest { // A request message for Projects.MoveInstance. See the method description for details. message MoveInstanceProjectRequest { - InstanceMoveRequest instance_move_request_resource = 43228738; + // The body resource for this request + InstanceMoveRequest instance_move_request_resource = 43228738 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -19515,7 +19640,8 @@ message MoveInstanceProjectRequest { // A request message for Projects.SetCommonInstanceMetadata. See the method description for details. message SetCommonInstanceMetadataProjectRequest { - Metadata metadata_resource = 22650654; + // The body resource for this request + Metadata metadata_resource = 22650654 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -19534,7 +19660,8 @@ message SetDefaultNetworkTierProjectRequest { // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; - ProjectsSetDefaultNetworkTierRequest projects_set_default_network_tier_request_resource = 126410762; + // The body resource for this request + ProjectsSetDefaultNetworkTierRequest projects_set_default_network_tier_request_resource = 126410762 [(google.api.field_behavior) = REQUIRED]; // 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. // @@ -19557,7 +19684,8 @@ message SetUsageExportBucketProjectRequest { // The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). string request_id = 37109963; - UsageExportLocation usage_export_location_resource = 20260459; + // The body resource for this request + UsageExportLocation usage_export_location_resource = 20260459 [(google.api.field_behavior) = REQUIRED]; } @@ -19596,7 +19724,8 @@ message GetRegionAutoscalerRequest { // A request message for RegionAutoscalers.Insert. See the method description for details. message InsertRegionAutoscalerRequest { - Autoscaler autoscaler_resource = 207616118; + // The body resource for this request + Autoscaler autoscaler_resource = 207616118 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -19653,7 +19782,8 @@ message PatchRegionAutoscalerRequest { // Name of the autoscaler to patch. string autoscaler = 248823511; - Autoscaler autoscaler_resource = 207616118; + // The body resource for this request + Autoscaler autoscaler_resource = 207616118 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -19675,7 +19805,8 @@ message UpdateRegionAutoscalerRequest { // Name of the autoscaler to update. string autoscaler = 248823511; - Autoscaler autoscaler_resource = 207616118; + // The body resource for this request + Autoscaler autoscaler_resource = 207616118 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -19735,13 +19866,15 @@ message GetHealthRegionBackendServiceRequest { // Name of the region scoping this request. string region = 138946292 [(google.api.field_behavior) = REQUIRED]; - ResourceGroupReference resource_group_reference_resource = 112951123; + // The body resource for this request + ResourceGroupReference resource_group_reference_resource = 112951123 [(google.api.field_behavior) = REQUIRED]; } // A request message for RegionBackendServices.Insert. See the method description for details. message InsertRegionBackendServiceRequest { - BackendService backend_service_resource = 79151267; + // The body resource for this request + BackendService backend_service_resource = 79151267 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -19798,7 +19931,8 @@ message PatchRegionBackendServiceRequest { // Name of the BackendService resource to patch. string backend_service = 38510602 [(google.api.field_behavior) = REQUIRED]; - BackendService backend_service_resource = 79151267; + // The body resource for this request + BackendService backend_service_resource = 79151267 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -19820,7 +19954,8 @@ message UpdateRegionBackendServiceRequest { // Name of the BackendService resource to update. string backend_service = 38510602 [(google.api.field_behavior) = REQUIRED]; - BackendService backend_service_resource = 79151267; + // The body resource for this request + BackendService backend_service_resource = 79151267 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -19887,7 +20022,8 @@ message GetRegionCommitmentRequest { // A request message for RegionCommitments.Insert. See the method description for details. message InsertRegionCommitmentRequest { - Commitment commitment_resource = 244240888; + // The body resource for this request + Commitment commitment_resource = 244240888 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -19998,7 +20134,8 @@ message AddResourcePoliciesRegionDiskRequest { // The name of the region for this request. string region = 138946292 [(google.api.field_behavior) = REQUIRED]; - RegionDisksAddResourcePoliciesRequest region_disks_add_resource_policies_request_resource = 15761294; + // The body resource for this request + RegionDisksAddResourcePoliciesRequest region_disks_add_resource_policies_request_resource = 15761294 [(google.api.field_behavior) = REQUIRED]; // 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. // @@ -20027,7 +20164,8 @@ message CreateSnapshotRegionDiskRequest { // The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). string request_id = 37109963; - Snapshot snapshot_resource = 212884521; + // The body resource for this request + Snapshot snapshot_resource = 212884521 [(google.api.field_behavior) = REQUIRED]; } @@ -20082,7 +20220,8 @@ message GetIamPolicyRegionDiskRequest { // A request message for RegionDisks.Insert. See the method description for details. message InsertRegionDiskRequest { - Disk disk_resource = 25880688; + // The body resource for this request + Disk disk_resource = 25880688 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -20148,7 +20287,8 @@ message RemoveResourcePoliciesRegionDiskRequest { // The name of the region for this request. string region = 138946292 [(google.api.field_behavior) = REQUIRED]; - RegionDisksRemoveResourcePoliciesRequest region_disks_remove_resource_policies_request_resource = 8741283; + // The body resource for this request + RegionDisksRemoveResourcePoliciesRequest region_disks_remove_resource_policies_request_resource = 8741283 [(google.api.field_behavior) = REQUIRED]; // 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. // @@ -20170,7 +20310,8 @@ message ResizeRegionDiskRequest { // Name of the region for this request. string region = 138946292 [(google.api.field_behavior) = REQUIRED]; - RegionDisksResizeRequest region_disks_resize_request_resource = 178197781; + // The body resource for this request + RegionDisksResizeRequest region_disks_resize_request_resource = 178197781 [(google.api.field_behavior) = REQUIRED]; // 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. // @@ -20189,7 +20330,8 @@ message SetIamPolicyRegionDiskRequest { // The name of the region for this request. string region = 138946292 [(google.api.field_behavior) = REQUIRED]; - RegionSetPolicyRequest region_set_policy_request_resource = 8053635; + // The body resource for this request + RegionSetPolicyRequest region_set_policy_request_resource = 8053635 [(google.api.field_behavior) = REQUIRED]; // Name or id of the resource for this request. string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; @@ -20204,7 +20346,8 @@ message SetLabelsRegionDiskRequest { // The region for this request. string region = 138946292 [(google.api.field_behavior) = REQUIRED]; - RegionSetLabelsRequest region_set_labels_request_resource = 259357782; + // The body resource for this request + RegionSetLabelsRequest region_set_labels_request_resource = 259357782 [(google.api.field_behavior) = REQUIRED]; // 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. // @@ -20229,7 +20372,8 @@ message TestIamPermissionsRegionDiskRequest { // Name or id of the resource for this request. string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; - TestPermissionsRequest test_permissions_request_resource = 170779302; + // The body resource for this request + TestPermissionsRequest test_permissions_request_resource = 170779302 [(google.api.field_behavior) = REQUIRED]; } @@ -20268,7 +20412,8 @@ message GetRegionHealthCheckServiceRequest { // A request message for RegionHealthCheckServices.Insert. See the method description for details. message InsertRegionHealthCheckServiceRequest { - HealthCheckService health_check_service_resource = 208932338; + // The body resource for this request + HealthCheckService health_check_service_resource = 208932338 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -20325,7 +20470,8 @@ message PatchRegionHealthCheckServiceRequest { // Name of the HealthCheckService to update. The name must be 1-63 characters long, and comply with RFC1035. string health_check_service = 139939291 [(google.api.field_behavior) = REQUIRED]; - HealthCheckService health_check_service_resource = 208932338; + // The body resource for this request + HealthCheckService health_check_service_resource = 208932338 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -20377,7 +20523,8 @@ message GetRegionHealthCheckRequest { // A request message for RegionHealthChecks.Insert. See the method description for details. message InsertRegionHealthCheckRequest { - HealthCheck health_check_resource = 201925032; + // The body resource for this request + HealthCheck health_check_resource = 201925032 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -20434,7 +20581,8 @@ message PatchRegionHealthCheckRequest { // Name of the HealthCheck resource to patch. string health_check = 40441189 [(google.api.field_behavior) = REQUIRED]; - HealthCheck health_check_resource = 201925032; + // The body resource for this request + HealthCheck health_check_resource = 201925032 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -20456,7 +20604,8 @@ message UpdateRegionHealthCheckRequest { // Name of the HealthCheck resource to update. string health_check = 40441189 [(google.api.field_behavior) = REQUIRED]; - HealthCheck health_check_resource = 201925032; + // The body resource for this request + HealthCheck health_check_resource = 201925032 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -20484,7 +20633,8 @@ message AbandonInstancesRegionInstanceGroupManagerRequest { // Name of the region scoping this request. string region = 138946292 [(google.api.field_behavior) = REQUIRED]; - RegionInstanceGroupManagersAbandonInstancesRequest region_instance_group_managers_abandon_instances_request_resource = 220064035; + // The body resource for this request + RegionInstanceGroupManagersAbandonInstancesRequest region_instance_group_managers_abandon_instances_request_resource = 220064035 [(google.api.field_behavior) = REQUIRED]; // 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. // @@ -20506,7 +20656,8 @@ message ApplyUpdatesToInstancesRegionInstanceGroupManagerRequest { // Name of the region scoping this request, should conform to RFC1035. string region = 138946292 [(google.api.field_behavior) = REQUIRED]; - RegionInstanceGroupManagersApplyUpdatesRequest region_instance_group_managers_apply_updates_request_resource = 76248318; + // The body resource for this request + RegionInstanceGroupManagersApplyUpdatesRequest region_instance_group_managers_apply_updates_request_resource = 76248318 [(google.api.field_behavior) = REQUIRED]; } @@ -20521,7 +20672,8 @@ message CreateInstancesRegionInstanceGroupManagerRequest { // The name of the region where the managed instance group is located. It should conform to RFC1035. string region = 138946292 [(google.api.field_behavior) = REQUIRED]; - RegionInstanceGroupManagersCreateInstancesRequest region_instance_group_managers_create_instances_request_resource = 90578824; + // The body resource for this request + RegionInstanceGroupManagersCreateInstancesRequest region_instance_group_managers_create_instances_request_resource = 90578824 [(google.api.field_behavior) = REQUIRED]; // 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. // @@ -20563,7 +20715,8 @@ message DeleteInstancesRegionInstanceGroupManagerRequest { // Name of the region scoping this request. string region = 138946292 [(google.api.field_behavior) = REQUIRED]; - RegionInstanceGroupManagersDeleteInstancesRequest region_instance_group_managers_delete_instances_request_resource = 232441209; + // The body resource for this request + RegionInstanceGroupManagersDeleteInstancesRequest region_instance_group_managers_delete_instances_request_resource = 232441209 [(google.api.field_behavior) = REQUIRED]; // 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. // @@ -20585,7 +20738,8 @@ message DeletePerInstanceConfigsRegionInstanceGroupManagerRequest { // Name of the region scoping this request, should conform to RFC1035. string region = 138946292 [(google.api.field_behavior) = REQUIRED]; - RegionInstanceGroupManagerDeleteInstanceConfigReq region_instance_group_manager_delete_instance_config_req_resource = 740741; + // The body resource for this request + RegionInstanceGroupManagerDeleteInstanceConfigReq region_instance_group_manager_delete_instance_config_req_resource = 740741 [(google.api.field_behavior) = REQUIRED]; } @@ -20604,7 +20758,8 @@ message GetRegionInstanceGroupManagerRequest { // A request message for RegionInstanceGroupManagers.Insert. See the method description for details. message InsertRegionInstanceGroupManagerRequest { - InstanceGroupManager instance_group_manager_resource = 261063946; + // The body resource for this request + InstanceGroupManager instance_group_manager_resource = 261063946 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -20775,7 +20930,8 @@ message PatchRegionInstanceGroupManagerRequest { // The name of the instance group manager. string instance_group_manager = 249363395 [(google.api.field_behavior) = REQUIRED]; - InstanceGroupManager instance_group_manager_resource = 261063946; + // The body resource for this request + InstanceGroupManager instance_group_manager_resource = 261063946 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -20803,7 +20959,8 @@ message PatchPerInstanceConfigsRegionInstanceGroupManagerRequest { // Name of the region scoping this request, should conform to RFC1035. string region = 138946292 [(google.api.field_behavior) = REQUIRED]; - RegionInstanceGroupManagerPatchInstanceConfigReq region_instance_group_manager_patch_instance_config_req_resource = 197682890; + // The body resource for this request + RegionInstanceGroupManagerPatchInstanceConfigReq region_instance_group_manager_patch_instance_config_req_resource = 197682890 [(google.api.field_behavior) = REQUIRED]; // 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. // @@ -20825,7 +20982,8 @@ message RecreateInstancesRegionInstanceGroupManagerRequest { // Name of the region scoping this request. string region = 138946292 [(google.api.field_behavior) = REQUIRED]; - RegionInstanceGroupManagersRecreateRequest region_instance_group_managers_recreate_request_resource = 170999316; + // The body resource for this request + RegionInstanceGroupManagersRecreateRequest region_instance_group_managers_recreate_request_resource = 170999316 [(google.api.field_behavior) = REQUIRED]; // 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. // @@ -20870,7 +21028,8 @@ message SetInstanceTemplateRegionInstanceGroupManagerRequest { // Name of the region scoping this request. string region = 138946292 [(google.api.field_behavior) = REQUIRED]; - RegionInstanceGroupManagersSetTemplateRequest region_instance_group_managers_set_template_request_resource = 187310412; + // The body resource for this request + RegionInstanceGroupManagersSetTemplateRequest region_instance_group_managers_set_template_request_resource = 187310412 [(google.api.field_behavior) = REQUIRED]; // 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. // @@ -20892,7 +21051,8 @@ message SetTargetPoolsRegionInstanceGroupManagerRequest { // Name of the region scoping this request. string region = 138946292 [(google.api.field_behavior) = REQUIRED]; - RegionInstanceGroupManagersSetTargetPoolsRequest region_instance_group_managers_set_target_pools_request_resource = 78734717; + // The body resource for this request + RegionInstanceGroupManagersSetTargetPoolsRequest region_instance_group_managers_set_target_pools_request_resource = 78734717 [(google.api.field_behavior) = REQUIRED]; // 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. // @@ -20914,7 +21074,8 @@ message UpdatePerInstanceConfigsRegionInstanceGroupManagerRequest { // Name of the region scoping this request, should conform to RFC1035. string region = 138946292 [(google.api.field_behavior) = REQUIRED]; - RegionInstanceGroupManagerUpdateInstanceConfigReq region_instance_group_manager_update_instance_config_req_resource = 89036583; + // The body resource for this request + RegionInstanceGroupManagerUpdateInstanceConfigReq region_instance_group_manager_update_instance_config_req_resource = 89036583 [(google.api.field_behavior) = REQUIRED]; // 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. // @@ -21006,7 +21167,8 @@ message ListInstancesRegionInstanceGroupsRequest { // Name of the region scoping this request. string region = 138946292 [(google.api.field_behavior) = REQUIRED]; - RegionInstanceGroupsListInstancesRequest region_instance_groups_list_instances_request_resource = 48239828; + // The body resource for this request + RegionInstanceGroupsListInstancesRequest region_instance_groups_list_instances_request_resource = 48239828 [(google.api.field_behavior) = REQUIRED]; // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false and the logic is the same as today. bool return_partial_success = 248762934; @@ -21024,7 +21186,8 @@ message SetNamedPortsRegionInstanceGroupRequest { // Name of the region scoping this request. string region = 138946292 [(google.api.field_behavior) = REQUIRED]; - RegionInstanceGroupsSetNamedPortsRequest region_instance_groups_set_named_ports_request_resource = 1574938; + // The body resource for this request + RegionInstanceGroupsSetNamedPortsRequest region_instance_groups_set_named_ports_request_resource = 1574938 [(google.api.field_behavior) = REQUIRED]; // 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. // @@ -21070,7 +21233,8 @@ message GetRegionNetworkEndpointGroupRequest { // A request message for RegionNetworkEndpointGroups.Insert. See the method description for details. message InsertRegionNetworkEndpointGroupRequest { - NetworkEndpointGroup network_endpoint_group_resource = 257353383; + // The body resource for this request + NetworkEndpointGroup network_endpoint_group_resource = 257353383 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -21157,7 +21321,8 @@ message GetRegionNotificationEndpointRequest { // A request message for RegionNotificationEndpoints.Insert. See the method description for details. message InsertRegionNotificationEndpointRequest { - NotificationEndpoint notification_endpoint_resource = 70024484; + // The body resource for this request + NotificationEndpoint notification_endpoint_resource = 70024484 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -21335,7 +21500,8 @@ message InsertRegionSslCertificateRequest { // The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). string request_id = 37109963; - SslCertificate ssl_certificate_resource = 180709897; + // The body resource for this request + SslCertificate ssl_certificate_resource = 180709897 [(google.api.field_behavior) = REQUIRED]; } @@ -21422,7 +21588,8 @@ message InsertRegionTargetHttpProxyRequest { // The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). string request_id = 37109963; - TargetHttpProxy target_http_proxy_resource = 24696744; + // The body resource for this request + TargetHttpProxy target_http_proxy_resource = 24696744 [(google.api.field_behavior) = REQUIRED]; } @@ -21479,7 +21646,8 @@ message SetUrlMapRegionTargetHttpProxyRequest { // Name of the TargetHttpProxy to set a URL map for. string target_http_proxy = 206872421 [(google.api.field_behavior) = REQUIRED]; - UrlMapReference url_map_reference_resource = 130265877; + // The body resource for this request + UrlMapReference url_map_reference_resource = 130265877 [(google.api.field_behavior) = REQUIRED]; } @@ -21531,7 +21699,8 @@ message InsertRegionTargetHttpsProxyRequest { // The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). string request_id = 37109963; - TargetHttpsProxy target_https_proxy_resource = 165222017; + // The body resource for this request + TargetHttpsProxy target_https_proxy_resource = 165222017 [(google.api.field_behavior) = REQUIRED]; } @@ -21578,7 +21747,8 @@ message SetSslCertificatesRegionTargetHttpsProxyRequest { // Name of the region scoping this request. string region = 138946292 [(google.api.field_behavior) = REQUIRED]; - RegionTargetHttpsProxiesSetSslCertificatesRequest region_target_https_proxies_set_ssl_certificates_request_resource = 122257927; + // The body resource for this request + RegionTargetHttpsProxiesSetSslCertificatesRequest region_target_https_proxies_set_ssl_certificates_request_resource = 122257927 [(google.api.field_behavior) = REQUIRED]; // 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. // @@ -21610,7 +21780,8 @@ message SetUrlMapRegionTargetHttpsProxyRequest { // Name of the TargetHttpsProxy to set a URL map for. string target_https_proxy = 52336748 [(google.api.field_behavior) = REQUIRED]; - UrlMapReference url_map_reference_resource = 130265877; + // The body resource for this request + UrlMapReference url_map_reference_resource = 130265877 [(google.api.field_behavior) = REQUIRED]; } @@ -21654,7 +21825,8 @@ message InsertRegionUrlMapRequest { // begin_interface: MixerMutationRequestBuilder Request ID to support idempotency. string request_id = 37109963; - UrlMap url_map_resource = 168675425; + // The body resource for this request + UrlMap url_map_resource = 168675425 [(google.api.field_behavior) = REQUIRED]; } @@ -21707,7 +21879,8 @@ message PatchRegionUrlMapRequest { // Name of the UrlMap resource to patch. string url_map = 98585228 [(google.api.field_behavior) = REQUIRED]; - UrlMap url_map_resource = 168675425; + // The body resource for this request + UrlMap url_map_resource = 168675425 [(google.api.field_behavior) = REQUIRED]; } @@ -21725,7 +21898,8 @@ message UpdateRegionUrlMapRequest { // Name of the UrlMap resource to update. string url_map = 98585228 [(google.api.field_behavior) = REQUIRED]; - UrlMap url_map_resource = 168675425; + // The body resource for this request + UrlMap url_map_resource = 168675425 [(google.api.field_behavior) = REQUIRED]; } @@ -21737,7 +21911,8 @@ message ValidateRegionUrlMapRequest { // Name of the region scoping this request. string region = 138946292 [(google.api.field_behavior) = REQUIRED]; - RegionUrlMapsValidateRequest region_url_maps_validate_request_resource = 56632858; + // The body resource for this request + RegionUrlMapsValidateRequest region_url_maps_validate_request_resource = 56632858 [(google.api.field_behavior) = REQUIRED]; // Name of the UrlMap resource to be validated as. string url_map = 98585228 [(google.api.field_behavior) = REQUIRED]; @@ -21882,7 +22057,8 @@ message InsertReservationRequest { // The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). string request_id = 37109963; - Reservation reservation_resource = 16594721; + // The body resource for this request + Reservation reservation_resource = 16594721 [(google.api.field_behavior) = REQUIRED]; // Name of the zone for this request. string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; @@ -21939,7 +22115,8 @@ message ResizeReservationRequest { // Name of the reservation to update. string reservation = 47530956 [(google.api.field_behavior) = REQUIRED]; - ReservationsResizeRequest reservations_resize_request_resource = 120827345; + // The body resource for this request + ReservationsResizeRequest reservations_resize_request_resource = 120827345 [(google.api.field_behavior) = REQUIRED]; // Name of the zone for this request. string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; @@ -21957,7 +22134,8 @@ message SetIamPolicyReservationRequest { // The name of the zone for this request. string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; - ZoneSetPolicyRequest zone_set_policy_request_resource = 113646651; + // The body resource for this request + ZoneSetPolicyRequest zone_set_policy_request_resource = 113646651 [(google.api.field_behavior) = REQUIRED]; } @@ -21969,7 +22147,8 @@ message TestIamPermissionsReservationRequest { // Name or id of the resource for this request. string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; - TestPermissionsRequest test_permissions_request_resource = 170779302; + // The body resource for this request + TestPermissionsRequest test_permissions_request_resource = 170779302 [(google.api.field_behavior) = REQUIRED]; // The name of the zone for this request. string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; @@ -22075,7 +22254,8 @@ message InsertResourcePolicyRequest { // The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). string request_id = 37109963; - ResourcePolicy resource_policy_resource = 76826186; + // The body resource for this request + ResourcePolicy resource_policy_resource = 76826186 [(google.api.field_behavior) = REQUIRED]; } @@ -22122,7 +22302,8 @@ message SetIamPolicyResourcePolicyRequest { // The name of the region for this request. string region = 138946292 [(google.api.field_behavior) = REQUIRED]; - RegionSetPolicyRequest region_set_policy_request_resource = 8053635; + // The body resource for this request + RegionSetPolicyRequest region_set_policy_request_resource = 8053635 [(google.api.field_behavior) = REQUIRED]; // Name or id of the resource for this request. string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; @@ -22140,7 +22321,8 @@ message TestIamPermissionsResourcePolicyRequest { // Name or id of the resource for this request. string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; - TestPermissionsRequest test_permissions_request_resource = 170779302; + // The body resource for this request + TestPermissionsRequest test_permissions_request_resource = 170779302 [(google.api.field_behavior) = REQUIRED]; } @@ -22278,7 +22460,8 @@ message InsertRouterRequest { // The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). string request_id = 37109963; - Router router_resource = 155222084; + // The body resource for this request + Router router_resource = 155222084 [(google.api.field_behavior) = REQUIRED]; } @@ -22335,7 +22518,8 @@ message PatchRouterRequest { // Name of the Router resource to patch. string router = 148608841 [(google.api.field_behavior) = REQUIRED]; - Router router_resource = 155222084; + // The body resource for this request + Router router_resource = 155222084 [(google.api.field_behavior) = REQUIRED]; } @@ -22350,7 +22534,8 @@ message PreviewRouterRequest { // Name of the Router resource to query. string router = 148608841 [(google.api.field_behavior) = REQUIRED]; - Router router_resource = 155222084; + // The body resource for this request + Router router_resource = 155222084 [(google.api.field_behavior) = REQUIRED]; } @@ -22372,7 +22557,8 @@ message UpdateRouterRequest { // Name of the Router resource to update. string router = 148608841 [(google.api.field_behavior) = REQUIRED]; - Router router_resource = 155222084; + // The body resource for this request + Router router_resource = 155222084 [(google.api.field_behavior) = REQUIRED]; } @@ -22415,7 +22601,8 @@ message InsertRouteRequest { // The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). string request_id = 37109963; - Route route_resource = 225428804; + // The body resource for this request + Route route_resource = 225428804 [(google.api.field_behavior) = REQUIRED]; } @@ -22459,7 +22646,8 @@ message AddRuleSecurityPolicyRequest { // Name of the security policy to update. string security_policy = 171082513 [(google.api.field_behavior) = REQUIRED]; - SecurityPolicyRule security_policy_rule_resource = 134257987; + // The body resource for this request + SecurityPolicyRule security_policy_rule_resource = 134257987 [(google.api.field_behavior) = REQUIRED]; } @@ -22515,7 +22703,8 @@ message InsertSecurityPolicyRequest { // The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). string request_id = 37109963; - SecurityPolicy security_policy_resource = 216159612; + // The body resource for this request + SecurityPolicy security_policy_resource = 216159612 [(google.api.field_behavior) = REQUIRED]; } @@ -22598,7 +22787,8 @@ message PatchSecurityPolicyRequest { // Name of the security policy to update. string security_policy = 171082513 [(google.api.field_behavior) = REQUIRED]; - SecurityPolicy security_policy_resource = 216159612; + // The body resource for this request + SecurityPolicy security_policy_resource = 216159612 [(google.api.field_behavior) = REQUIRED]; } @@ -22613,7 +22803,8 @@ message PatchRuleSecurityPolicyRequest { // Name of the security policy to update. string security_policy = 171082513 [(google.api.field_behavior) = REQUIRED]; - SecurityPolicyRule security_policy_rule_resource = 134257987; + // The body resource for this request + SecurityPolicyRule security_policy_rule_resource = 134257987 [(google.api.field_behavior) = REQUIRED]; } @@ -22704,7 +22895,8 @@ message ListSnapshotsRequest { // A request message for Snapshots.SetIamPolicy. See the method description for details. message SetIamPolicySnapshotRequest { - GlobalSetPolicyRequest global_set_policy_request_resource = 68613042; + // The body resource for this request + GlobalSetPolicyRequest global_set_policy_request_resource = 68613042 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -22716,7 +22908,8 @@ message SetIamPolicySnapshotRequest { // A request message for Snapshots.SetLabels. See the method description for details. message SetLabelsSnapshotRequest { - GlobalSetLabelsRequest global_set_labels_request_resource = 51481733; + // The body resource for this request + GlobalSetLabelsRequest global_set_labels_request_resource = 51481733 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -22734,7 +22927,8 @@ message TestIamPermissionsSnapshotRequest { // Name or id of the resource for this request. string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; - TestPermissionsRequest test_permissions_request_resource = 170779302; + // The body resource for this request + TestPermissionsRequest test_permissions_request_resource = 170779302 [(google.api.field_behavior) = REQUIRED]; } @@ -22812,7 +23006,8 @@ message InsertSslCertificateRequest { // The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). string request_id = 37109963; - SslCertificate ssl_certificate_resource = 180709897; + // The body resource for this request + SslCertificate ssl_certificate_resource = 180709897 [(google.api.field_behavior) = REQUIRED]; } @@ -22887,7 +23082,8 @@ message InsertSslPolicyRequest { // The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). string request_id = 37109963; - SslPolicy ssl_policy_resource = 6456392; + // The body resource for this request + SslPolicy ssl_policy_resource = 6456392 [(google.api.field_behavior) = REQUIRED]; } @@ -22970,7 +23166,8 @@ message PatchSslPolicyRequest { // Name of the SSL policy to update. The name must be 1-63 characters long, and comply with RFC1035. string ssl_policy = 26754757 [(google.api.field_behavior) = REQUIRED]; - SslPolicy ssl_policy_resource = 6456392; + // The body resource for this request + SslPolicy ssl_policy_resource = 6456392 [(google.api.field_behavior) = REQUIRED]; } @@ -23047,7 +23244,8 @@ message ExpandIpCidrRangeSubnetworkRequest { // Name of the Subnetwork resource to update. string subnetwork = 39392238 [(google.api.field_behavior) = REQUIRED]; - SubnetworksExpandIpCidrRangeRequest subnetworks_expand_ip_cidr_range_request_resource = 208578654; + // The body resource for this request + SubnetworksExpandIpCidrRangeRequest subnetworks_expand_ip_cidr_range_request_resource = 208578654 [(google.api.field_behavior) = REQUIRED]; } @@ -23095,7 +23293,8 @@ message InsertSubnetworkRequest { // The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). string request_id = 37109963; - Subnetwork subnetwork_resource = 42233151; + // The body resource for this request + Subnetwork subnetwork_resource = 42233151 [(google.api.field_behavior) = REQUIRED]; } @@ -23187,7 +23386,8 @@ message PatchSubnetworkRequest { // Name of the Subnetwork resource to patch. string subnetwork = 39392238 [(google.api.field_behavior) = REQUIRED]; - Subnetwork subnetwork_resource = 42233151; + // The body resource for this request + Subnetwork subnetwork_resource = 42233151 [(google.api.field_behavior) = REQUIRED]; } @@ -23199,7 +23399,8 @@ message SetIamPolicySubnetworkRequest { // The name of the region for this request. string region = 138946292 [(google.api.field_behavior) = REQUIRED]; - RegionSetPolicyRequest region_set_policy_request_resource = 8053635; + // The body resource for this request + RegionSetPolicyRequest region_set_policy_request_resource = 8053635 [(google.api.field_behavior) = REQUIRED]; // Name or id of the resource for this request. string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; @@ -23224,7 +23425,8 @@ message SetPrivateIpGoogleAccessSubnetworkRequest { // Name of the Subnetwork resource. string subnetwork = 39392238 [(google.api.field_behavior) = REQUIRED]; - SubnetworksSetPrivateIpGoogleAccessRequest subnetworks_set_private_ip_google_access_request_resource = 485240; + // The body resource for this request + SubnetworksSetPrivateIpGoogleAccessRequest subnetworks_set_private_ip_google_access_request_resource = 485240 [(google.api.field_behavior) = REQUIRED]; } @@ -23239,7 +23441,8 @@ message TestIamPermissionsSubnetworkRequest { // Name or id of the resource for this request. string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; - TestPermissionsRequest test_permissions_request_resource = 170779302; + // The body resource for this request + TestPermissionsRequest test_permissions_request_resource = 170779302 [(google.api.field_behavior) = REQUIRED]; } @@ -23282,7 +23485,8 @@ message InsertTargetGrpcProxyRequest { // The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). string request_id = 37109963; - TargetGrpcProxy target_grpc_proxy_resource = 60486994; + // The body resource for this request + TargetGrpcProxy target_grpc_proxy_resource = 60486994 [(google.api.field_behavior) = REQUIRED]; } @@ -23333,7 +23537,8 @@ message PatchTargetGrpcProxyRequest { // Name of the TargetGrpcProxy resource to patch. string target_grpc_proxy = 5020283 [(google.api.field_behavior) = REQUIRED]; - TargetGrpcProxy target_grpc_proxy_resource = 60486994; + // The body resource for this request + TargetGrpcProxy target_grpc_proxy_resource = 60486994 [(google.api.field_behavior) = REQUIRED]; } @@ -23411,7 +23616,8 @@ message InsertTargetHttpProxyRequest { // The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). string request_id = 37109963; - TargetHttpProxy target_http_proxy_resource = 24696744; + // The body resource for this request + TargetHttpProxy target_http_proxy_resource = 24696744 [(google.api.field_behavior) = REQUIRED]; } @@ -23462,7 +23668,8 @@ message PatchTargetHttpProxyRequest { // Name of the TargetHttpProxy resource to patch. string target_http_proxy = 206872421 [(google.api.field_behavior) = REQUIRED]; - TargetHttpProxy target_http_proxy_resource = 24696744; + // The body resource for this request + TargetHttpProxy target_http_proxy_resource = 24696744 [(google.api.field_behavior) = REQUIRED]; } @@ -23481,7 +23688,8 @@ message SetUrlMapTargetHttpProxyRequest { // Name of the TargetHttpProxy to set a URL map for. string target_http_proxy = 206872421 [(google.api.field_behavior) = REQUIRED]; - UrlMapReference url_map_reference_resource = 130265877; + // The body resource for this request + UrlMapReference url_map_reference_resource = 130265877 [(google.api.field_behavior) = REQUIRED]; } @@ -23559,7 +23767,8 @@ message InsertTargetHttpsProxyRequest { // The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). string request_id = 37109963; - TargetHttpsProxy target_https_proxy_resource = 165222017; + // The body resource for this request + TargetHttpsProxy target_https_proxy_resource = 165222017 [(google.api.field_behavior) = REQUIRED]; } @@ -23607,7 +23816,8 @@ message SetQuicOverrideTargetHttpsProxyRequest { // The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). string request_id = 37109963; - TargetHttpsProxiesSetQuicOverrideRequest target_https_proxies_set_quic_override_request_resource = 72940258; + // The body resource for this request + TargetHttpsProxiesSetQuicOverrideRequest target_https_proxies_set_quic_override_request_resource = 72940258 [(google.api.field_behavior) = REQUIRED]; // Name of the TargetHttpsProxy resource to set the QUIC override policy for. The name should conform to RFC1035. string target_https_proxy = 52336748 [(google.api.field_behavior) = REQUIRED]; @@ -23626,7 +23836,8 @@ message SetSslCertificatesTargetHttpsProxyRequest { // The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). string request_id = 37109963; - TargetHttpsProxiesSetSslCertificatesRequest target_https_proxies_set_ssl_certificates_request_resource = 223122908; + // The body resource for this request + TargetHttpsProxiesSetSslCertificatesRequest target_https_proxies_set_ssl_certificates_request_resource = 223122908 [(google.api.field_behavior) = REQUIRED]; // Name of the TargetHttpsProxy resource to set an SslCertificates resource for. string target_https_proxy = 52336748 [(google.api.field_behavior) = REQUIRED]; @@ -23645,7 +23856,8 @@ message SetSslPolicyTargetHttpsProxyRequest { // The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). string request_id = 37109963; - SslPolicyReference ssl_policy_reference_resource = 235403836; + // The body resource for this request + SslPolicyReference ssl_policy_reference_resource = 235403836 [(google.api.field_behavior) = REQUIRED]; // Name of the TargetHttpsProxy resource whose SSL policy is to be set. The name must be 1-63 characters long, and comply with RFC1035. string target_https_proxy = 52336748 [(google.api.field_behavior) = REQUIRED]; @@ -23667,7 +23879,8 @@ message SetUrlMapTargetHttpsProxyRequest { // Name of the TargetHttpsProxy resource whose URL map is to be set. string target_https_proxy = 52336748 [(google.api.field_behavior) = REQUIRED]; - UrlMapReference url_map_reference_resource = 130265877; + // The body resource for this request + UrlMapReference url_map_reference_resource = 130265877 [(google.api.field_behavior) = REQUIRED]; } @@ -23751,7 +23964,8 @@ message InsertTargetInstanceRequest { // The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). string request_id = 37109963; - TargetInstance target_instance_resource = 162017610; + // The body resource for this request + TargetInstance target_instance_resource = 162017610 [(google.api.field_behavior) = REQUIRED]; // Name of the zone scoping this request. string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; @@ -23811,7 +24025,8 @@ message AddHealthCheckTargetPoolRequest { // Name of the target pool to add a health check to. string target_pool = 62796298 [(google.api.field_behavior) = REQUIRED]; - TargetPoolsAddHealthCheckRequest target_pools_add_health_check_request_resource = 1137956; + // The body resource for this request + TargetPoolsAddHealthCheckRequest target_pools_add_health_check_request_resource = 1137956 [(google.api.field_behavior) = REQUIRED]; } @@ -23833,7 +24048,8 @@ message AddInstanceTargetPoolRequest { // Name of the TargetPool resource to add instances to. string target_pool = 62796298 [(google.api.field_behavior) = REQUIRED]; - TargetPoolsAddInstanceRequest target_pools_add_instance_request_resource = 160360948; + // The body resource for this request + TargetPoolsAddInstanceRequest target_pools_add_instance_request_resource = 160360948 [(google.api.field_behavior) = REQUIRED]; } @@ -23907,7 +24123,8 @@ message GetTargetPoolRequest { // A request message for TargetPools.GetHealth. See the method description for details. message GetHealthTargetPoolRequest { - InstanceReference instance_reference_resource = 24490604; + // The body resource for this request + InstanceReference instance_reference_resource = 24490604 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -23935,7 +24152,8 @@ message InsertTargetPoolRequest { // The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). string request_id = 37109963; - TargetPool target_pool_resource = 101281443; + // The body resource for this request + TargetPool target_pool_resource = 101281443 [(google.api.field_behavior) = REQUIRED]; } @@ -23992,7 +24210,8 @@ message RemoveHealthCheckTargetPoolRequest { // Name of the target pool to remove health checks from. string target_pool = 62796298 [(google.api.field_behavior) = REQUIRED]; - TargetPoolsRemoveHealthCheckRequest target_pools_remove_health_check_request_resource = 36549555; + // The body resource for this request + TargetPoolsRemoveHealthCheckRequest target_pools_remove_health_check_request_resource = 36549555 [(google.api.field_behavior) = REQUIRED]; } @@ -24014,7 +24233,8 @@ message RemoveInstanceTargetPoolRequest { // Name of the TargetPool resource to remove instances from. string target_pool = 62796298 [(google.api.field_behavior) = REQUIRED]; - TargetPoolsRemoveInstanceRequest target_pools_remove_instance_request_resource = 29548547; + // The body resource for this request + TargetPoolsRemoveInstanceRequest target_pools_remove_instance_request_resource = 29548547 [(google.api.field_behavior) = REQUIRED]; } @@ -24039,7 +24259,8 @@ message SetBackupTargetPoolRequest { // Name of the TargetPool resource to set a backup pool for. string target_pool = 62796298 [(google.api.field_behavior) = REQUIRED]; - TargetReference target_reference_resource = 255286256; + // The body resource for this request + TargetReference target_reference_resource = 255286256 [(google.api.field_behavior) = REQUIRED]; } @@ -24082,7 +24303,8 @@ message InsertTargetSslProxyRequest { // The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). string request_id = 37109963; - TargetSslProxy target_ssl_proxy_resource = 142016192; + // The body resource for this request + TargetSslProxy target_ssl_proxy_resource = 142016192 [(google.api.field_behavior) = REQUIRED]; } @@ -24130,7 +24352,8 @@ message SetBackendServiceTargetSslProxyRequest { // The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). string request_id = 37109963; - TargetSslProxiesSetBackendServiceRequest target_ssl_proxies_set_backend_service_request_resource = 139080868; + // The body resource for this request + TargetSslProxiesSetBackendServiceRequest target_ssl_proxies_set_backend_service_request_resource = 139080868 [(google.api.field_behavior) = REQUIRED]; // Name of the TargetSslProxy resource whose BackendService resource is to be set. string target_ssl_proxy = 70360397 [(google.api.field_behavior) = REQUIRED]; @@ -24149,7 +24372,8 @@ message SetProxyHeaderTargetSslProxyRequest { // The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). string request_id = 37109963; - TargetSslProxiesSetProxyHeaderRequest target_ssl_proxies_set_proxy_header_request_resource = 205284526; + // The body resource for this request + TargetSslProxiesSetProxyHeaderRequest target_ssl_proxies_set_proxy_header_request_resource = 205284526 [(google.api.field_behavior) = REQUIRED]; // Name of the TargetSslProxy resource whose ProxyHeader is to be set. string target_ssl_proxy = 70360397 [(google.api.field_behavior) = REQUIRED]; @@ -24168,7 +24392,8 @@ message SetSslCertificatesTargetSslProxyRequest { // The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). string request_id = 37109963; - TargetSslProxiesSetSslCertificatesRequest target_ssl_proxies_set_ssl_certificates_request_resource = 147940797; + // The body resource for this request + TargetSslProxiesSetSslCertificatesRequest target_ssl_proxies_set_ssl_certificates_request_resource = 147940797 [(google.api.field_behavior) = REQUIRED]; // Name of the TargetSslProxy resource whose SslCertificate resource is to be set. string target_ssl_proxy = 70360397 [(google.api.field_behavior) = REQUIRED]; @@ -24187,7 +24412,8 @@ message SetSslPolicyTargetSslProxyRequest { // The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). string request_id = 37109963; - SslPolicyReference ssl_policy_reference_resource = 235403836; + // The body resource for this request + SslPolicyReference ssl_policy_reference_resource = 235403836 [(google.api.field_behavior) = REQUIRED]; // Name of the TargetSslProxy resource whose SSL policy is to be set. The name must be 1-63 characters long, and comply with RFC1035. string target_ssl_proxy = 70360397 [(google.api.field_behavior) = REQUIRED]; @@ -24233,7 +24459,8 @@ message InsertTargetTcpProxyRequest { // The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). string request_id = 37109963; - TargetTcpProxy target_tcp_proxy_resource = 145913931; + // The body resource for this request + TargetTcpProxy target_tcp_proxy_resource = 145913931 [(google.api.field_behavior) = REQUIRED]; } @@ -24281,7 +24508,8 @@ message SetBackendServiceTargetTcpProxyRequest { // The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). string request_id = 37109963; - TargetTcpProxiesSetBackendServiceRequest target_tcp_proxies_set_backend_service_request_resource = 5286127; + // The body resource for this request + TargetTcpProxiesSetBackendServiceRequest target_tcp_proxies_set_backend_service_request_resource = 5286127 [(google.api.field_behavior) = REQUIRED]; // Name of the TargetTcpProxy resource whose BackendService resource is to be set. string target_tcp_proxy = 234629986 [(google.api.field_behavior) = REQUIRED]; @@ -24300,7 +24528,8 @@ message SetProxyHeaderTargetTcpProxyRequest { // The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). string request_id = 37109963; - TargetTcpProxiesSetProxyHeaderRequest target_tcp_proxies_set_proxy_header_request_resource = 219958339; + // The body resource for this request + TargetTcpProxiesSetProxyHeaderRequest target_tcp_proxies_set_proxy_header_request_resource = 219958339 [(google.api.field_behavior) = REQUIRED]; // Name of the TargetTcpProxy resource whose ProxyHeader is to be set. string target_tcp_proxy = 234629986 [(google.api.field_behavior) = REQUIRED]; @@ -24390,7 +24619,8 @@ message InsertTargetVpnGatewayRequest { // The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). string request_id = 37109963; - TargetVpnGateway target_vpn_gateway_resource = 498050; + // The body resource for this request + TargetVpnGateway target_vpn_gateway_resource = 498050 [(google.api.field_behavior) = REQUIRED]; } @@ -24503,13 +24733,15 @@ message InsertUrlMapRequest { // The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). string request_id = 37109963; - UrlMap url_map_resource = 168675425; + // The body resource for this request + UrlMap url_map_resource = 168675425 [(google.api.field_behavior) = REQUIRED]; } // A request message for UrlMaps.InvalidateCache. See the method description for details. message InvalidateCacheUrlMapRequest { - CacheInvalidationRule cache_invalidation_rule_resource = 44360109; + // The body resource for this request + CacheInvalidationRule cache_invalidation_rule_resource = 44360109 [(google.api.field_behavior) = REQUIRED]; // Project ID for this request. string project = 227560217 [(google.api.field_behavior) = REQUIRED]; @@ -24573,7 +24805,8 @@ message PatchUrlMapRequest { // Name of the UrlMap resource to patch. string url_map = 98585228 [(google.api.field_behavior) = REQUIRED]; - UrlMap url_map_resource = 168675425; + // The body resource for this request + UrlMap url_map_resource = 168675425 [(google.api.field_behavior) = REQUIRED]; } @@ -24592,7 +24825,8 @@ message UpdateUrlMapRequest { // Name of the UrlMap resource to update. string url_map = 98585228 [(google.api.field_behavior) = REQUIRED]; - UrlMap url_map_resource = 168675425; + // The body resource for this request + UrlMap url_map_resource = 168675425 [(google.api.field_behavior) = REQUIRED]; } @@ -24604,7 +24838,8 @@ message ValidateUrlMapRequest { // Name of the UrlMap resource to be validated as. string url_map = 98585228 [(google.api.field_behavior) = REQUIRED]; - UrlMapsValidateRequest url_maps_validate_request_resource = 127477999; + // The body resource for this request + UrlMapsValidateRequest url_maps_validate_request_resource = 127477999 [(google.api.field_behavior) = REQUIRED]; } @@ -24704,7 +24939,8 @@ message InsertVpnGatewayRequest { // The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). string request_id = 37109963; - VpnGateway vpn_gateway_resource = 182688660; + // The body resource for this request + VpnGateway vpn_gateway_resource = 182688660 [(google.api.field_behavior) = REQUIRED]; } @@ -24751,7 +24987,8 @@ message SetLabelsVpnGatewayRequest { // The region for this request. string region = 138946292 [(google.api.field_behavior) = REQUIRED]; - RegionSetLabelsRequest region_set_labels_request_resource = 259357782; + // The body resource for this request + RegionSetLabelsRequest region_set_labels_request_resource = 259357782 [(google.api.field_behavior) = REQUIRED]; // 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. // @@ -24776,7 +25013,8 @@ message TestIamPermissionsVpnGatewayRequest { // Name or id of the resource for this request. string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; - TestPermissionsRequest test_permissions_request_resource = 170779302; + // The body resource for this request + TestPermissionsRequest test_permissions_request_resource = 170779302 [(google.api.field_behavior) = REQUIRED]; } @@ -24863,7 +25101,8 @@ message InsertVpnTunnelRequest { // The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). string request_id = 37109963; - VpnTunnel vpn_tunnel_resource = 86839482; + // The body resource for this request + VpnTunnel vpn_tunnel_resource = 86839482 [(google.api.field_behavior) = REQUIRED]; } diff --git a/protos/protos.json b/protos/protos.json index 2f9539f2..7db2931b 100644 --- a/protos/protos.json +++ b/protos/protos.json @@ -14468,7 +14468,10 @@ "fields": { "addressResource": { "type": "Address", - "id": 215452665 + "id": 215452665, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -14621,7 +14624,10 @@ "fields": { "autoscalerResource": { "type": "Autoscaler", - "id": 207616118 + "id": 207616118, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -14689,7 +14695,10 @@ }, "autoscalerResource": { "type": "Autoscaler", - "id": 207616118 + "id": 207616118, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -14719,7 +14728,10 @@ }, "autoscalerResource": { "type": "Autoscaler", - "id": 207616118 + "id": 207616118, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -14763,7 +14775,10 @@ }, "signedUrlKeyResource": { "type": "SignedUrlKey", - "id": 189190529 + "id": 189190529, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -14840,7 +14855,10 @@ "fields": { "backendBucketResource": { "type": "BackendBucket", - "id": 112322328 + "id": 112322328, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -14897,7 +14915,10 @@ }, "backendBucketResource": { "type": "BackendBucket", - "id": 112322328 + "id": 112322328, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -14923,7 +14944,10 @@ }, "backendBucketResource": { "type": "BackendBucket", - "id": 112322328 + "id": 112322328, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -14960,7 +14984,10 @@ }, "signedUrlKeyResource": { "type": "SignedUrlKey", - "id": 189190529 + "id": 189190529, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -15086,7 +15113,10 @@ }, "resourceGroupReferenceResource": { "type": "ResourceGroupReference", - "id": 112951123 + "id": 112951123, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -15094,7 +15124,10 @@ "fields": { "backendServiceResource": { "type": "BackendService", - "id": 79151267 + "id": 79151267, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -15151,7 +15184,10 @@ }, "backendServiceResource": { "type": "BackendService", - "id": 79151267 + "id": 79151267, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -15188,7 +15224,10 @@ }, "securityPolicyReferenceResource": { "type": "SecurityPolicyReference", - "id": 204135024 + "id": 204135024, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -15203,7 +15242,10 @@ }, "backendServiceResource": { "type": "BackendService", - "id": 79151267 + "id": 79151267, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -15327,7 +15369,10 @@ }, "disksAddResourcePoliciesRequestResource": { "type": "DisksAddResourcePoliciesRequest", - "id": 228047907 + "id": 228047907, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -15410,7 +15455,10 @@ }, "snapshotResource": { "type": "Snapshot", - "id": 212884521 + "id": 212884521, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "zone": { "type": "string", @@ -15508,7 +15556,10 @@ "fields": { "diskResource": { "type": "Disk", - "id": 25880688 + "id": 25880688, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -15583,7 +15634,10 @@ }, "disksRemoveResourcePoliciesRequestResource": { "type": "DisksRemoveResourcePoliciesRequest", - "id": 168321262 + "id": 168321262, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -15616,7 +15670,10 @@ }, "disksResizeRequestResource": { "type": "DisksResizeRequest", - "id": 78307616 + "id": 78307616, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -15663,7 +15720,10 @@ }, "zoneSetPolicyRequestResource": { "type": "ZoneSetPolicyRequest", - "id": 113646651 + "id": 113646651, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -15696,7 +15756,10 @@ }, "zoneSetLabelsRequestResource": { "type": "ZoneSetLabelsRequest", - "id": 96515342 + "id": 96515342, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -15718,7 +15781,10 @@ }, "testPermissionsRequestResource": { "type": "TestPermissionsRequest", - "id": 170779302 + "id": 170779302, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "zone": { "type": "string", @@ -15773,7 +15839,10 @@ "fields": { "externalVpnGatewayResource": { "type": "ExternalVpnGateway", - "id": 218378120 + "id": 218378120, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -15823,7 +15892,10 @@ "fields": { "globalSetLabelsRequestResource": { "type": "GlobalSetLabelsRequest", - "id": 51481733 + "id": 51481733, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -15859,7 +15931,10 @@ }, "testPermissionsRequestResource": { "type": "TestPermissionsRequest", - "id": 170779302 + "id": 170779302, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -15907,7 +15982,10 @@ "fields": { "firewallResource": { "type": "Firewall", - "id": 41425005 + "id": 41425005, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -15964,7 +16042,10 @@ }, "firewallResource": { "type": "Firewall", - "id": 41425005 + "id": 41425005, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -15990,7 +16071,10 @@ }, "firewallResource": { "type": "Firewall", - "id": 41425005 + "id": 41425005, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -16098,7 +16182,10 @@ "fields": { "forwardingRuleResource": { "type": "ForwardingRule", - "id": 32776239 + "id": 32776239, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -16169,7 +16256,10 @@ }, "forwardingRuleResource": { "type": "ForwardingRule", - "id": 32776239 + "id": 32776239, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -16220,7 +16310,10 @@ }, "targetReferenceResource": { "type": "TargetReference", - "id": 255286256 + "id": 255286256, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -16268,7 +16361,10 @@ "fields": { "addressResource": { "type": "Address", - "id": 215452665 + "id": 215452665, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -16358,7 +16454,10 @@ "fields": { "forwardingRuleResource": { "type": "ForwardingRule", - "id": 32776239 + "id": 32776239, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -16415,7 +16514,10 @@ }, "forwardingRuleResource": { "type": "ForwardingRule", - "id": 32776239 + "id": 32776239, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -16452,7 +16554,10 @@ }, "targetReferenceResource": { "type": "TargetReference", - "id": 255286256 + "id": 255286256, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -16460,7 +16565,10 @@ "fields": { "globalNetworkEndpointGroupsAttachEndpointsRequestResource": { "type": "GlobalNetworkEndpointGroupsAttachEndpointsRequest", - "id": 30691563 + "id": 30691563, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "networkEndpointGroup": { "type": "string", @@ -16508,7 +16616,10 @@ "fields": { "globalNetworkEndpointGroupsDetachEndpointsRequestResource": { "type": "GlobalNetworkEndpointGroupsDetachEndpointsRequest", - "id": 8898269 + "id": 8898269, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "networkEndpointGroup": { "type": "string", @@ -16552,7 +16663,10 @@ "fields": { "networkEndpointGroupResource": { "type": "NetworkEndpointGroup", - "id": 257353383 + "id": 257353383, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -16899,7 +17013,10 @@ "fields": { "healthCheckResource": { "type": "HealthCheck", - "id": 201925032 + "id": 201925032, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -16956,7 +17073,10 @@ }, "healthCheckResource": { "type": "HealthCheck", - "id": 201925032 + "id": 201925032, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -16982,7 +17102,10 @@ }, "healthCheckResource": { "type": "HealthCheck", - "id": 201925032 + "id": 201925032, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -17023,7 +17146,10 @@ "fields": { "deprecationStatusResource": { "type": "DeprecationStatus", - "id": 64570608 + "id": 64570608, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "image": { "type": "string", @@ -17111,7 +17237,10 @@ }, "imageResource": { "type": "Image", - "id": 102736498 + "id": 102736498, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -17168,7 +17297,10 @@ }, "imageResource": { "type": "Image", - "id": 102736498 + "id": 102736498, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -17187,7 +17319,10 @@ "fields": { "globalSetPolicyRequestResource": { "type": "GlobalSetPolicyRequest", - "id": 68613042 + "id": 68613042, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -17209,7 +17344,10 @@ "fields": { "globalSetLabelsRequestResource": { "type": "GlobalSetLabelsRequest", - "id": 51481733 + "id": 51481733, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -17245,7 +17383,10 @@ }, "testPermissionsRequestResource": { "type": "TestPermissionsRequest", - "id": 170779302 + "id": 170779302, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -17260,7 +17401,10 @@ }, "instanceGroupManagersAbandonInstancesRequestResource": { "type": "InstanceGroupManagersAbandonInstancesRequest", - "id": 52493560 + "id": 52493560, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -17328,7 +17472,10 @@ }, "instanceGroupManagersApplyUpdatesRequestResource": { "type": "InstanceGroupManagersApplyUpdatesRequest", - "id": 259242835 + "id": 259242835, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -17357,7 +17504,10 @@ }, "instanceGroupManagersCreateInstancesRequestResource": { "type": "InstanceGroupManagersCreateInstancesRequest", - "id": 24558867 + "id": 24558867, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -17419,7 +17569,10 @@ }, "instanceGroupManagersDeleteInstancesRequestResource": { "type": "InstanceGroupManagersDeleteInstancesRequest", - "id": 166421252 + "id": 166421252, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -17452,7 +17605,10 @@ }, "instanceGroupManagersDeletePerInstanceConfigsReqResource": { "type": "InstanceGroupManagersDeletePerInstanceConfigsReq", - "id": 93992224 + "id": 93992224, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -17499,7 +17655,10 @@ "fields": { "instanceGroupManagerResource": { "type": "InstanceGroupManager", - "id": 261063946 + "id": 261063946, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -17705,7 +17864,10 @@ }, "instanceGroupManagerResource": { "type": "InstanceGroupManager", - "id": 261063946 + "id": 261063946, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -17738,7 +17900,10 @@ }, "instanceGroupManagersPatchPerInstanceConfigsReqResource": { "type": "InstanceGroupManagersPatchPerInstanceConfigsReq", - "id": 88215039 + "id": 88215039, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -17771,7 +17936,10 @@ }, "instanceGroupManagersRecreateInstancesRequestResource": { "type": "InstanceGroupManagersRecreateInstancesRequest", - "id": 21405952 + "id": 21405952, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -17840,7 +18008,10 @@ }, "instanceGroupManagersSetInstanceTemplateRequestResource": { "type": "InstanceGroupManagersSetInstanceTemplateRequest", - "id": 9809093 + "id": 9809093, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -17873,7 +18044,10 @@ }, "instanceGroupManagersSetTargetPoolsRequestResource": { "type": "InstanceGroupManagersSetTargetPoolsRequest", - "id": 12714760 + "id": 12714760, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -17906,7 +18080,10 @@ }, "instanceGroupManagersUpdatePerInstanceConfigsReqResource": { "type": "InstanceGroupManagersUpdatePerInstanceConfigsReq", - "id": 141402302 + "id": 141402302, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -17939,7 +18116,10 @@ }, "instanceGroupsAddInstancesRequestResource": { "type": "InstanceGroupsAddInstancesRequest", - "id": 185277790 + "id": 185277790, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -18054,7 +18234,10 @@ "fields": { "instanceGroupResource": { "type": "InstanceGroup", - "id": 18176696 + "id": 18176696, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -18129,7 +18312,10 @@ }, "instanceGroupsListInstancesRequestResource": { "type": "InstanceGroupsListInstancesRequest", - "id": 207819807 + "id": 207819807, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "maxResults": { "type": "uint32", @@ -18174,7 +18360,10 @@ }, "instanceGroupsRemoveInstancesRequestResource": { "type": "InstanceGroupsRemoveInstancesRequest", - "id": 122546361 + "id": 122546361, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -18207,7 +18396,10 @@ }, "instanceGroupsSetNamedPortsRequestResource": { "type": "InstanceGroupsSetNamedPortsRequest", - "id": 116716079 + "id": 116716079, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -18295,7 +18487,10 @@ "fields": { "instanceTemplateResource": { "type": "InstanceTemplate", - "id": 10679561 + "id": 10679561, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -18345,7 +18540,10 @@ "fields": { "globalSetPolicyRequestResource": { "type": "GlobalSetPolicyRequest", - "id": 68613042 + "id": 68613042, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -18381,7 +18579,10 @@ }, "testPermissionsRequestResource": { "type": "TestPermissionsRequest", - "id": 170779302 + "id": 170779302, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -18389,7 +18590,10 @@ "fields": { "accessConfigResource": { "type": "AccessConfig", - "id": 119390096 + "id": 119390096, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "instance": { "type": "string", @@ -18436,7 +18640,10 @@ }, "instancesAddResourcePoliciesRequestResource": { "type": "InstancesAddResourcePoliciesRequest", - "id": 220916507 + "id": 220916507, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -18497,7 +18704,10 @@ "fields": { "attachedDiskResource": { "type": "AttachedDisk", - "id": 90605845 + "id": 90605845, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "forceAttach": { "type": "bool", @@ -18812,7 +19022,10 @@ "fields": { "instanceResource": { "type": "Instance", - "id": 215988344 + "id": 215988344, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -18932,7 +19145,10 @@ }, "instancesRemoveResourcePoliciesRequestResource": { "type": "InstancesRemoveResourcePoliciesRequest", - "id": 49229558 + "id": 49229558, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -19084,7 +19300,10 @@ }, "zoneSetPolicyRequestResource": { "type": "ZoneSetPolicyRequest", - "id": 113646651 + "id": 113646651, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -19099,7 +19318,10 @@ }, "instancesSetLabelsRequestResource": { "type": "InstancesSetLabelsRequest", - "id": 207749344 + "id": 207749344, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -19132,7 +19354,10 @@ }, "instancesSetMachineResourcesRequestResource": { "type": "InstancesSetMachineResourcesRequest", - "id": 196286318 + "id": 196286318, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -19165,7 +19390,10 @@ }, "instancesSetMachineTypeRequestResource": { "type": "InstancesSetMachineTypeRequest", - "id": 254157709 + "id": 254157709, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -19198,7 +19426,10 @@ }, "metadataResource": { "type": "Metadata", - "id": 22650654 + "id": 22650654, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -19231,7 +19462,10 @@ }, "instancesSetMinCpuPlatformRequestResource": { "type": "InstancesSetMinCpuPlatformRequest", - "id": 148459368 + "id": 148459368, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -19275,7 +19509,10 @@ }, "schedulingResource": { "type": "Scheduling", - "id": 194745945 + "id": 194745945, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "zone": { "type": "string", @@ -19297,7 +19534,10 @@ }, "instancesSetServiceAccountRequestResource": { "type": "InstancesSetServiceAccountRequest", - "id": 7114552 + "id": 7114552, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -19341,7 +19581,10 @@ }, "shieldedInstanceIntegrityPolicyResource": { "type": "ShieldedInstanceIntegrityPolicy", - "id": 140734006 + "id": 140734006, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "zone": { "type": "string", @@ -19374,7 +19617,10 @@ }, "tagsResource": { "type": "Tags", - "id": 62999924 + "id": 62999924, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "zone": { "type": "string", @@ -19450,7 +19696,10 @@ }, "instancesStartWithEncryptionKeyRequestResource": { "type": "InstancesStartWithEncryptionKeyRequest", - "id": 173277055 + "id": 173277055, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -19519,7 +19768,10 @@ }, "testPermissionsRequestResource": { "type": "TestPermissionsRequest", - "id": 170779302 + "id": 170779302, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "zone": { "type": "string", @@ -19541,7 +19793,10 @@ }, "instanceResource": { "type": "Instance", - "id": 215988344 + "id": 215988344, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "minimalAction": { "type": "string", @@ -19575,7 +19830,10 @@ "fields": { "accessConfigResource": { "type": "AccessConfig", - "id": 119390096 + "id": 119390096, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "instance": { "type": "string", @@ -19615,7 +19873,10 @@ "fields": { "displayDeviceResource": { "type": "DisplayDevice", - "id": 21250650 + "id": 21250650, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "instance": { "type": "string", @@ -19662,7 +19923,10 @@ }, "networkInterfaceResource": { "type": "NetworkInterface", - "id": 57379333 + "id": 57379333, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -19706,7 +19970,10 @@ }, "shieldedInstanceConfigResource": { "type": "ShieldedInstanceConfig", - "id": 3623768 + "id": 3623768, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "zone": { "type": "string", @@ -19810,7 +20077,10 @@ "fields": { "interconnectAttachmentResource": { "type": "InterconnectAttachment", - "id": 212341369 + "id": 212341369, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -19885,7 +20155,10 @@ }, "interconnectAttachmentResource": { "type": "InterconnectAttachment", - "id": 212341369 + "id": 212341369, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -20018,7 +20291,10 @@ "fields": { "interconnectResource": { "type": "Interconnect", - "id": 129175711 + "id": 129175711, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -20075,7 +20351,10 @@ }, "interconnectResource": { "type": "Interconnect", - "id": 129175711 + "id": 129175711, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -20126,7 +20405,10 @@ }, "testPermissionsRequestResource": { "type": "TestPermissionsRequest", - "id": 170779302 + "id": 170779302, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -20196,7 +20478,10 @@ "fields": { "licenseResource": { "type": "License", - "id": 169519692 + "id": 169519692, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -20246,7 +20531,10 @@ "fields": { "globalSetPolicyRequestResource": { "type": "GlobalSetPolicyRequest", - "id": 68613042 + "id": 68613042, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -20282,7 +20570,10 @@ }, "testPermissionsRequestResource": { "type": "TestPermissionsRequest", - "id": 170779302 + "id": 170779302, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -20430,7 +20721,10 @@ }, "networkEndpointGroupsAttachEndpointsRequestResource": { "type": "NetworkEndpointGroupsAttachEndpointsRequest", - "id": 531079 + "id": 531079, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -20492,7 +20786,10 @@ }, "networkEndpointGroupsDetachEndpointsRequestResource": { "type": "NetworkEndpointGroupsDetachEndpointsRequest", - "id": 247173241 + "id": 247173241, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -20543,7 +20840,10 @@ "fields": { "networkEndpointGroupResource": { "type": "NetworkEndpointGroup", - "id": 257353383 + "id": 257353383, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -20622,7 +20922,10 @@ }, "networkEndpointGroupsListEndpointsRequestResource": { "type": "NetworkEndpointGroupsListEndpointsRequest", - "id": 59493390 + "id": 59493390, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "orderBy": { "type": "string", @@ -20670,7 +20973,10 @@ }, "testPermissionsRequestResource": { "type": "TestPermissionsRequest", - "id": 170779302 + "id": 170779302, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "zone": { "type": "string", @@ -20692,7 +20998,10 @@ }, "networksAddPeeringRequestResource": { "type": "NetworksAddPeeringRequest", - "id": 120374965 + "id": 120374965, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -20751,7 +21060,10 @@ "fields": { "networkResource": { "type": "Network", - "id": 122105599 + "id": 122105599, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -20867,7 +21179,10 @@ }, "networkResource": { "type": "Network", - "id": 122105599 + "id": 122105599, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -20893,7 +21208,10 @@ }, "networksRemovePeeringRequestResource": { "type": "NetworksRemovePeeringRequest", - "id": 152727038 + "id": 152727038, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -20941,7 +21259,10 @@ }, "networksUpdatePeeringRequestResource": { "type": "NetworksUpdatePeeringRequest", - "id": 224433497 + "id": 224433497, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -20967,7 +21288,10 @@ }, "nodeGroupsAddNodesRequestResource": { "type": "NodeGroupsAddNodesRequest", - "id": 131263288 + "id": 131263288, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -21064,7 +21388,10 @@ }, "nodeGroupsDeleteNodesRequestResource": { "type": "NodeGroupsDeleteNodesRequest", - "id": 183298962 + "id": 183298962, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -21151,7 +21478,10 @@ }, "nodeGroupResource": { "type": "NodeGroup", - "id": 236886443 + "id": 236886443, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -21267,7 +21597,10 @@ }, "nodeGroupResource": { "type": "NodeGroup", - "id": 236886443 + "id": 236886443, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -21314,7 +21647,10 @@ }, "zoneSetPolicyRequestResource": { "type": "ZoneSetPolicyRequest", - "id": 113646651 + "id": 113646651, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -21329,7 +21665,10 @@ }, "nodeGroupsSetNodeTemplateRequestResource": { "type": "NodeGroupsSetNodeTemplateRequest", - "id": 117382321 + "id": 117382321, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -21369,7 +21708,10 @@ }, "testPermissionsRequestResource": { "type": "TestPermissionsRequest", - "id": 170779302 + "id": 170779302, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "zone": { "type": "string", @@ -21502,7 +21844,10 @@ "fields": { "nodeTemplateResource": { "type": "NodeTemplate", - "id": 127364406 + "id": 127364406, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -21580,7 +21925,10 @@ }, "regionSetPolicyRequestResource": { "type": "RegionSetPolicyRequest", - "id": 8053635 + "id": 8053635, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "resource": { "type": "string", @@ -21616,7 +21964,10 @@ }, "testPermissionsRequestResource": { "type": "TestPermissionsRequest", - "id": 170779302 + "id": 170779302, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -21811,7 +22162,10 @@ "fields": { "packetMirroringResource": { "type": "PacketMirroring", - "id": 225066529 + "id": 225066529, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -21882,7 +22236,10 @@ }, "packetMirroringResource": { "type": "PacketMirroring", - "id": 225066529 + "id": 225066529, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -21929,7 +22286,10 @@ }, "testPermissionsRequestResource": { "type": "TestPermissionsRequest", - "id": 170779302 + "id": 170779302, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -21959,7 +22319,10 @@ }, "projectsDisableXpnResourceRequestResource": { "type": "ProjectsDisableXpnResourceRequest", - "id": 209136170 + "id": 209136170, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "requestId": { "type": "string", @@ -21993,7 +22356,10 @@ }, "projectsEnableXpnResourceRequestResource": { "type": "ProjectsEnableXpnResourceRequest", - "id": 153544751 + "id": 153544751, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "requestId": { "type": "string", @@ -22081,7 +22447,10 @@ }, "projectsListXpnHostsRequestResource": { "type": "ProjectsListXpnHostsRequest", - "id": 238266391 + "id": 238266391, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "returnPartialSuccess": { "type": "bool", @@ -22093,7 +22462,10 @@ "fields": { "diskMoveRequestResource": { "type": "DiskMoveRequest", - "id": 44573002 + "id": 44573002, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -22112,7 +22484,10 @@ "fields": { "instanceMoveRequestResource": { "type": "InstanceMoveRequest", - "id": 43228738 + "id": 43228738, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -22131,7 +22506,10 @@ "fields": { "metadataResource": { "type": "Metadata", - "id": 22650654 + "id": 22650654, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -22157,7 +22535,10 @@ }, "projectsSetDefaultNetworkTierRequestResource": { "type": "ProjectsSetDefaultNetworkTierRequest", - "id": 126410762 + "id": 126410762, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "requestId": { "type": "string", @@ -22180,7 +22561,10 @@ }, "usageExportLocationResource": { "type": "UsageExportLocation", - "id": 20260459 + "id": 20260459, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -22242,7 +22626,10 @@ "fields": { "autoscalerResource": { "type": "Autoscaler", - "id": 207616118 + "id": 207616118, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -22310,7 +22697,10 @@ }, "autoscalerResource": { "type": "Autoscaler", - "id": 207616118 + "id": 207616118, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -22340,7 +22730,10 @@ }, "autoscalerResource": { "type": "Autoscaler", - "id": 207616118 + "id": 207616118, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -22441,7 +22834,10 @@ }, "resourceGroupReferenceResource": { "type": "ResourceGroupReference", - "id": 112951123 + "id": 112951123, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -22449,7 +22845,10 @@ "fields": { "backendServiceResource": { "type": "BackendService", - "id": 79151267 + "id": 79151267, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -22520,7 +22919,10 @@ }, "backendServiceResource": { "type": "BackendService", - "id": 79151267 + "id": 79151267, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -22553,7 +22955,10 @@ }, "backendServiceResource": { "type": "BackendService", - "id": 79151267 + "id": 79151267, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -22639,7 +23044,10 @@ "fields": { "commitmentResource": { "type": "Commitment", - "id": 244240888 + "id": 244240888, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -22787,7 +23195,10 @@ }, "regionDisksAddResourcePoliciesRequestResource": { "type": "RegionDisksAddResourcePoliciesRequest", - "id": 15761294 + "id": 15761294, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "requestId": { "type": "string", @@ -22824,7 +23235,10 @@ }, "snapshotResource": { "type": "Snapshot", - "id": 212884521 + "id": 212884521, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -22915,7 +23329,10 @@ "fields": { "diskResource": { "type": "Disk", - "id": 25880688 + "id": 25880688, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -23004,7 +23421,10 @@ }, "regionDisksRemoveResourcePoliciesRequestResource": { "type": "RegionDisksRemoveResourcePoliciesRequest", - "id": 8741283 + "id": 8741283, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "requestId": { "type": "string", @@ -23037,7 +23457,10 @@ }, "regionDisksResizeRequestResource": { "type": "RegionDisksResizeRequest", - "id": 178197781 + "id": 178197781, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "requestId": { "type": "string", @@ -23063,7 +23486,10 @@ }, "regionSetPolicyRequestResource": { "type": "RegionSetPolicyRequest", - "id": 8053635 + "id": 8053635, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "resource": { "type": "string", @@ -23092,7 +23518,10 @@ }, "regionSetLabelsRequestResource": { "type": "RegionSetLabelsRequest", - "id": 259357782 + "id": 259357782, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "requestId": { "type": "string", @@ -23132,7 +23561,10 @@ }, "testPermissionsRequestResource": { "type": "TestPermissionsRequest", - "id": 170779302 + "id": 170779302, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -23194,7 +23626,10 @@ "fields": { "healthCheckServiceResource": { "type": "HealthCheckService", - "id": 208932338 + "id": 208932338, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -23265,7 +23700,10 @@ }, "healthCheckServiceResource": { "type": "HealthCheckService", - "id": 208932338 + "id": 208932338, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -23345,7 +23783,10 @@ "fields": { "healthCheckResource": { "type": "HealthCheck", - "id": 201925032 + "id": 201925032, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -23416,7 +23857,10 @@ }, "healthCheckResource": { "type": "HealthCheck", - "id": 201925032 + "id": 201925032, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -23449,7 +23893,10 @@ }, "healthCheckResource": { "type": "HealthCheck", - "id": 201925032 + "id": 201925032, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -23496,7 +23943,10 @@ }, "regionInstanceGroupManagersAbandonInstancesRequestResource": { "type": "RegionInstanceGroupManagersAbandonInstancesRequest", - "id": 220064035 + "id": 220064035, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "requestId": { "type": "string", @@ -23529,7 +23979,10 @@ }, "regionInstanceGroupManagersApplyUpdatesRequestResource": { "type": "RegionInstanceGroupManagersApplyUpdatesRequest", - "id": 76248318 + "id": 76248318, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -23558,7 +24011,10 @@ }, "regionInstanceGroupManagersCreateInstancesRequestResource": { "type": "RegionInstanceGroupManagersCreateInstancesRequest", - "id": 90578824 + "id": 90578824, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "requestId": { "type": "string", @@ -23620,7 +24076,10 @@ }, "regionInstanceGroupManagersDeleteInstancesRequestResource": { "type": "RegionInstanceGroupManagersDeleteInstancesRequest", - "id": 232441209 + "id": 232441209, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "requestId": { "type": "string", @@ -23653,7 +24112,10 @@ }, "regionInstanceGroupManagerDeleteInstanceConfigReqResource": { "type": "RegionInstanceGroupManagerDeleteInstanceConfigReq", - "id": 740741 + "id": 740741, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -23686,7 +24148,10 @@ "fields": { "instanceGroupManagerResource": { "type": "InstanceGroupManager", - "id": 261063946 + "id": 261063946, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -23892,7 +24357,10 @@ }, "instanceGroupManagerResource": { "type": "InstanceGroupManager", - "id": 261063946 + "id": 261063946, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -23939,7 +24407,10 @@ }, "regionInstanceGroupManagerPatchInstanceConfigReqResource": { "type": "RegionInstanceGroupManagerPatchInstanceConfigReq", - "id": 197682890 + "id": 197682890, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "requestId": { "type": "string", @@ -23972,7 +24443,10 @@ }, "regionInstanceGroupManagersRecreateRequestResource": { "type": "RegionInstanceGroupManagersRecreateRequest", - "id": 170999316 + "id": 170999316, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "requestId": { "type": "string", @@ -24041,7 +24515,10 @@ }, "regionInstanceGroupManagersSetTemplateRequestResource": { "type": "RegionInstanceGroupManagersSetTemplateRequest", - "id": 187310412 + "id": 187310412, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "requestId": { "type": "string", @@ -24074,7 +24551,10 @@ }, "regionInstanceGroupManagersSetTargetPoolsRequestResource": { "type": "RegionInstanceGroupManagersSetTargetPoolsRequest", - "id": 78734717 + "id": 78734717, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "requestId": { "type": "string", @@ -24107,7 +24587,10 @@ }, "regionInstanceGroupManagerUpdateInstanceConfigReqResource": { "type": "RegionInstanceGroupManagerUpdateInstanceConfigReq", - "id": 89036583 + "id": 89036583, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "requestId": { "type": "string", @@ -24219,7 +24702,10 @@ }, "regionInstanceGroupsListInstancesRequestResource": { "type": "RegionInstanceGroupsListInstancesRequest", - "id": 48239828 + "id": 48239828, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "returnPartialSuccess": { "type": "bool", @@ -24252,7 +24738,10 @@ }, "regionInstanceGroupsSetNamedPortsRequestResource": { "type": "RegionInstanceGroupsSetNamedPortsRequest", - "id": 1574938 + "id": 1574938, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "requestId": { "type": "string", @@ -24318,7 +24807,10 @@ "fields": { "networkEndpointGroupResource": { "type": "NetworkEndpointGroup", - "id": 257353383 + "id": 257353383, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -24436,7 +24928,10 @@ "fields": { "notificationEndpointResource": { "type": "NotificationEndpoint", - "id": 70024484 + "id": 70024484, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -24688,7 +25183,10 @@ }, "sslCertificateResource": { "type": "SslCertificate", - "id": 180709897 + "id": 180709897, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -24806,7 +25304,10 @@ }, "targetHttpProxyResource": { "type": "TargetHttpProxy", - "id": 24696744 + "id": 24696744, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -24877,7 +25378,10 @@ }, "urlMapReferenceResource": { "type": "UrlMapReference", - "id": 130265877 + "id": 130265877, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -24957,7 +25461,10 @@ }, "targetHttpsProxyResource": { "type": "TargetHttpsProxy", - "id": 165222017 + "id": 165222017, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -25017,7 +25524,10 @@ }, "regionTargetHttpsProxiesSetSslCertificatesRequestResource": { "type": "RegionTargetHttpsProxiesSetSslCertificatesRequest", - "id": 122257927 + "id": 122257927, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "requestId": { "type": "string", @@ -25061,7 +25571,10 @@ }, "urlMapReferenceResource": { "type": "UrlMapReference", - "id": 130265877 + "id": 130265877, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -25141,7 +25654,10 @@ }, "urlMapResource": { "type": "UrlMap", - "id": 168675425 + "id": 168675425, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -25212,7 +25728,10 @@ }, "urlMapResource": { "type": "UrlMap", - "id": 168675425 + "id": 168675425, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -25245,7 +25764,10 @@ }, "urlMapResource": { "type": "UrlMap", - "id": 168675425 + "id": 168675425, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -25267,7 +25789,10 @@ }, "regionUrlMapsValidateRequestResource": { "type": "RegionUrlMapsValidateRequest", - "id": 56632858 + "id": 56632858, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "urlMap": { "type": "string", @@ -25460,7 +25985,10 @@ }, "reservationResource": { "type": "Reservation", - "id": 16594721 + "id": 16594721, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "zone": { "type": "string", @@ -25531,7 +26059,10 @@ }, "reservationsResizeRequestResource": { "type": "ReservationsResizeRequest", - "id": 120827345 + "id": 120827345, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "zone": { "type": "string", @@ -25567,7 +26098,10 @@ }, "zoneSetPolicyRequestResource": { "type": "ZoneSetPolicyRequest", - "id": 113646651 + "id": 113646651, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -25589,7 +26123,10 @@ }, "testPermissionsRequestResource": { "type": "TestPermissionsRequest", - "id": 170779302 + "id": 170779302, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "zone": { "type": "string", @@ -25740,7 +26277,10 @@ }, "resourcePolicyResource": { "type": "ResourcePolicy", - "id": 76826186 + "id": 76826186, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -25800,7 +26340,10 @@ }, "regionSetPolicyRequestResource": { "type": "RegionSetPolicyRequest", - "id": 8053635 + "id": 8053635, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "resource": { "type": "string", @@ -25836,7 +26379,10 @@ }, "testPermissionsRequestResource": { "type": "TestPermissionsRequest", - "id": 170779302 + "id": 170779302, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -26021,7 +26567,10 @@ }, "routerResource": { "type": "Router", - "id": 155222084 + "id": 155222084, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -26092,7 +26641,10 @@ }, "routerResource": { "type": "Router", - "id": 155222084 + "id": 155222084, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -26121,7 +26673,10 @@ }, "routerResource": { "type": "Router", - "id": 155222084 + "id": 155222084, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -26154,7 +26709,10 @@ }, "routerResource": { "type": "Router", - "id": 155222084 + "id": 155222084, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -26213,7 +26771,10 @@ }, "routeResource": { "type": "Route", - "id": 225428804 + "id": 225428804, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -26266,7 +26827,10 @@ }, "securityPolicyRuleResource": { "type": "SecurityPolicyRule", - "id": 134257987 + "id": 134257987, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -26347,7 +26911,10 @@ }, "securityPolicyResource": { "type": "SecurityPolicy", - "id": 216159612 + "id": 216159612, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -26435,7 +27002,10 @@ }, "securityPolicyResource": { "type": "SecurityPolicy", - "id": 216159612 + "id": 216159612, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -26461,7 +27031,10 @@ }, "securityPolicyRuleResource": { "type": "SecurityPolicyRule", - "id": 134257987 + "id": 134257987, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -26584,7 +27157,10 @@ "fields": { "globalSetPolicyRequestResource": { "type": "GlobalSetPolicyRequest", - "id": 68613042 + "id": 68613042, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -26606,7 +27182,10 @@ "fields": { "globalSetLabelsRequestResource": { "type": "GlobalSetLabelsRequest", - "id": 51481733 + "id": 51481733, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -26642,7 +27221,10 @@ }, "testPermissionsRequestResource": { "type": "TestPermissionsRequest", - "id": 170779302 + "id": 170779302, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -26736,7 +27318,10 @@ }, "sslCertificateResource": { "type": "SslCertificate", - "id": 180709897 + "id": 180709897, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -26826,7 +27411,10 @@ }, "sslPolicyResource": { "type": "SslPolicy", - "id": 6456392 + "id": 6456392, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -26914,7 +27502,10 @@ }, "sslPolicyResource": { "type": "SslPolicy", - "id": 6456392 + "id": 6456392, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -27011,7 +27602,10 @@ }, "subnetworksExpandIpCidrRangeRequestResource": { "type": "SubnetworksExpandIpCidrRangeRequest", - "id": 208578654 + "id": 208578654, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -27091,7 +27685,10 @@ }, "subnetworkResource": { "type": "Subnetwork", - "id": 42233151 + "id": 42233151, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -27197,7 +27794,10 @@ }, "subnetworkResource": { "type": "Subnetwork", - "id": 42233151 + "id": 42233151, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -27219,7 +27819,10 @@ }, "regionSetPolicyRequestResource": { "type": "RegionSetPolicyRequest", - "id": 8053635 + "id": 8053635, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "resource": { "type": "string", @@ -27259,7 +27862,10 @@ }, "subnetworksSetPrivateIpGoogleAccessRequestResource": { "type": "SubnetworksSetPrivateIpGoogleAccessRequest", - "id": 485240 + "id": 485240, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -27288,7 +27894,10 @@ }, "testPermissionsRequestResource": { "type": "TestPermissionsRequest", - "id": 170779302 + "id": 170779302, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -27347,7 +27956,10 @@ }, "targetGrpcProxyResource": { "type": "TargetGrpcProxy", - "id": 60486994 + "id": 60486994, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -27404,7 +28016,10 @@ }, "targetGrpcProxyResource": { "type": "TargetGrpcProxy", - "id": 60486994 + "id": 60486994, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -27498,7 +28113,10 @@ }, "targetHttpProxyResource": { "type": "TargetHttpProxy", - "id": 24696744 + "id": 24696744, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -27555,7 +28173,10 @@ }, "targetHttpProxyResource": { "type": "TargetHttpProxy", - "id": 24696744 + "id": 24696744, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -27581,7 +28202,10 @@ }, "urlMapReferenceResource": { "type": "UrlMapReference", - "id": 130265877 + "id": 130265877, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -27675,7 +28299,10 @@ }, "targetHttpsProxyResource": { "type": "TargetHttpsProxy", - "id": 165222017 + "id": 165222017, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -27725,7 +28352,10 @@ }, "targetHttpsProxiesSetQuicOverrideRequestResource": { "type": "TargetHttpsProxiesSetQuicOverrideRequest", - "id": 72940258 + "id": 72940258, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "targetHttpsProxy": { "type": "string", @@ -27751,7 +28381,10 @@ }, "targetHttpsProxiesSetSslCertificatesRequestResource": { "type": "TargetHttpsProxiesSetSslCertificatesRequest", - "id": 223122908 + "id": 223122908, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "targetHttpsProxy": { "type": "string", @@ -27777,7 +28410,10 @@ }, "sslPolicyReferenceResource": { "type": "SslPolicyReference", - "id": 235403836 + "id": 235403836, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "targetHttpsProxy": { "type": "string", @@ -27810,7 +28446,10 @@ }, "urlMapReferenceResource": { "type": "UrlMapReference", - "id": 130265877 + "id": 130265877, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -27918,7 +28557,10 @@ }, "targetInstanceResource": { "type": "TargetInstance", - "id": 162017610 + "id": 162017610, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "zone": { "type": "string", @@ -27996,7 +28638,10 @@ }, "targetPoolsAddHealthCheckRequestResource": { "type": "TargetPoolsAddHealthCheckRequest", - "id": 1137956 + "id": 1137956, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -28029,7 +28674,10 @@ }, "targetPoolsAddInstanceRequestResource": { "type": "TargetPoolsAddInstanceRequest", - "id": 160360948 + "id": 160360948, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -28126,7 +28774,10 @@ "fields": { "instanceReferenceResource": { "type": "InstanceReference", - "id": 24490604 + "id": 24490604, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -28173,7 +28824,10 @@ }, "targetPoolResource": { "type": "TargetPool", - "id": 101281443 + "id": 101281443, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -28244,7 +28898,10 @@ }, "targetPoolsRemoveHealthCheckRequestResource": { "type": "TargetPoolsRemoveHealthCheckRequest", - "id": 36549555 + "id": 36549555, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -28277,7 +28934,10 @@ }, "targetPoolsRemoveInstanceRequestResource": { "type": "TargetPoolsRemoveInstanceRequest", - "id": 29548547 + "id": 29548547, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -28314,7 +28974,10 @@ }, "targetReferenceResource": { "type": "TargetReference", - "id": 255286256 + "id": 255286256, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -28373,7 +29036,10 @@ }, "targetSslProxyResource": { "type": "TargetSslProxy", - "id": 142016192 + "id": 142016192, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -28423,7 +29089,10 @@ }, "targetSslProxiesSetBackendServiceRequestResource": { "type": "TargetSslProxiesSetBackendServiceRequest", - "id": 139080868 + "id": 139080868, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "targetSslProxy": { "type": "string", @@ -28449,7 +29118,10 @@ }, "targetSslProxiesSetProxyHeaderRequestResource": { "type": "TargetSslProxiesSetProxyHeaderRequest", - "id": 205284526 + "id": 205284526, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "targetSslProxy": { "type": "string", @@ -28475,7 +29147,10 @@ }, "targetSslProxiesSetSslCertificatesRequestResource": { "type": "TargetSslProxiesSetSslCertificatesRequest", - "id": 147940797 + "id": 147940797, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "targetSslProxy": { "type": "string", @@ -28501,7 +29176,10 @@ }, "sslPolicyReferenceResource": { "type": "SslPolicyReference", - "id": 235403836 + "id": 235403836, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "targetSslProxy": { "type": "string", @@ -28567,7 +29245,10 @@ }, "targetTcpProxyResource": { "type": "TargetTcpProxy", - "id": 145913931 + "id": 145913931, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -28617,7 +29298,10 @@ }, "targetTcpProxiesSetBackendServiceRequestResource": { "type": "TargetTcpProxiesSetBackendServiceRequest", - "id": 5286127 + "id": 5286127, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "targetTcpProxy": { "type": "string", @@ -28643,7 +29327,10 @@ }, "targetTcpProxiesSetProxyHeaderRequestResource": { "type": "TargetTcpProxiesSetProxyHeaderRequest", - "id": 219958339 + "id": 219958339, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "targetTcpProxy": { "type": "string", @@ -28765,7 +29452,10 @@ }, "targetVpnGatewayResource": { "type": "TargetVpnGateway", - "id": 498050 + "id": 498050, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -28897,7 +29587,10 @@ }, "urlMapResource": { "type": "UrlMap", - "id": 168675425 + "id": 168675425, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -28905,7 +29598,10 @@ "fields": { "cacheInvalidationRuleResource": { "type": "CacheInvalidationRule", - "id": 44360109 + "id": 44360109, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "project": { "type": "string", @@ -28980,7 +29676,10 @@ }, "urlMapResource": { "type": "UrlMap", - "id": 168675425 + "id": 168675425, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -29006,7 +29705,10 @@ }, "urlMapResource": { "type": "UrlMap", - "id": 168675425 + "id": 168675425, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -29028,7 +29730,10 @@ }, "urlMapsValidateRequestResource": { "type": "UrlMapsValidateRequest", - "id": 127477999 + "id": 127477999, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -29168,7 +29873,10 @@ }, "vpnGatewayResource": { "type": "VpnGateway", - "id": 182688660 + "id": 182688660, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -29228,7 +29936,10 @@ }, "regionSetLabelsRequestResource": { "type": "RegionSetLabelsRequest", - "id": 259357782 + "id": 259357782, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } }, "requestId": { "type": "string", @@ -29268,7 +29979,10 @@ }, "testPermissionsRequestResource": { "type": "TestPermissionsRequest", - "id": 170779302 + "id": 170779302, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, @@ -29383,7 +30097,10 @@ }, "vpnTunnelResource": { "type": "VpnTunnel", - "id": 86839482 + "id": 86839482, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } } } }, diff --git a/renovate.json b/renovate.json new file mode 100644 index 00000000..9518bf36 --- /dev/null +++ b/renovate.json @@ -0,0 +1,19 @@ +{ + "extends": [ + "config:base", + "docker:disable" + ], + "pinVersions": false, + "rebaseStalePrs": true, + "schedule": [ + "after 9am and before 3pm" + ], + "gitAuthor": null, + "packageRules": [ + { + "extends": "packages:linters", + "groupName": "linters" + } + ], + "ignoreDeps": ["typescript"] +} diff --git a/samples/README.md b/samples/README.md new file mode 100644 index 00000000..607a5f57 --- /dev/null +++ b/samples/README.md @@ -0,0 +1,50 @@ +[//]: # "This README.md file is auto-generated, all changes to this file will be lost." +[//]: # "To regenerate it, use `python -m synthtool`." +Google Cloud Platform logo + +# [Google Compute Engine: Node.js Samples](https://github.com/googleapis/nodejs-compute) + +[![Open in Cloud Shell][shell_img]][shell_link] + + + +## Table of Contents + +* [Before you begin](#before-you-begin) +* [Samples](#samples) + * [Quickstart](#quickstart) + +## Before you begin + +Before running the samples, make sure you've followed the steps outlined in +[Using the client library](https://github.com/googleapis/nodejs-compute#using-the-client-library). + +`cd samples` + +`npm install` + +`cd ..` + +## Samples + + + +### Quickstart + +View the [source code](https://github.com/googleapis/nodejs-compute/blob/master/samples/quickstart.js). + +[![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/nodejs-compute&page=editor&open_in_editor=samples/quickstart.js,samples/README.md) + +__Usage:__ + + +`node samples/quickstart.js` + + + + + + +[shell_img]: https://gstatic.com/cloudssh/images/open-btn.png +[shell_link]: https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/nodejs-compute&page=editor&open_in_editor=samples/README.md +[product-docs]: https://cloud.google.com/compute diff --git a/samples/package.json b/samples/package.json index a04a131e..918f4725 100644 --- a/samples/package.json +++ b/samples/package.json @@ -1,30 +1,22 @@ { - "name": "nodejs-docs-samples-computeengine", - "private": true, + "name": "nodejs-docs-samples-compute", "license": "Apache-2.0", "author": "Google Inc.", + "engines": { + "node": ">=10" + }, "repository": "googleapis/nodejs-compute", + "private": true, "files": [ - "*.js", - "!test/" + "*.js" ], - "engines": { - "node": ">=8" - }, "scripts": { - "test": "mocha --timeout 1200000" + "test": "mocha system-test --timeout 10000" }, "dependencies": { - "@google-cloud/compute": "^2.4.2", - "@sendgrid/mail": "^7.0.0", - "node-fetch": "^2.3.0", - "nodemailer": "^6.0.0", - "nodemailer-smtp-transport": "^2.7.4" + "@google-cloud/compute": "3.0.0-alpha.1" }, "devDependencies": { - "chai": "^4.2.0", - "mocha": "^8.0.0", - "proxyquire": "^2.0.1", - "uuid": "^8.0.0" + "mocha": "^8.0.0" } } diff --git a/samples/quickstart.js b/samples/quickstart.js index 8bed7dca..95561c0e 100644 --- a/samples/quickstart.js +++ b/samples/quickstart.js @@ -1,17 +1,31 @@ -const compute = require('@google-cloud/compute'); +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. -function sleep(timeoutMs) { - return new Promise(resolve => { - setTimeout(resolve, timeoutMs); - }); -} - -// point GOOGLE_APPLICATION_CREDENTIALS environment variable to -// the JSON service account key file +'use strict'; async function main() { + // [START compute_quickstart] + const compute = require('@google-cloud/compute'); + + function sleep(timeoutMs) { + return new Promise(resolve => { + setTimeout(resolve, timeoutMs); + }); + } + const client = new compute.AddressesClient({fallback: 'rest'}); - const project = 'PROJECT-NAME'; + const project = await client.getProjectId(); const region = 'us-east1'; const addressResource = { @@ -47,6 +61,8 @@ async function main() { region, }); console.log(listResponse2); + console.log('Quickstart sample completed'); + // [END compute_quickstart] } -main(); +main().catch(console.error); diff --git a/samples/system-test/sample.test.js b/samples/system-test/sample.test.js new file mode 100644 index 00000000..ccd2766a --- /dev/null +++ b/samples/system-test/sample.test.js @@ -0,0 +1,29 @@ +// Copyright 2017 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +'use strict'; + +const {assert} = require('assert'); +const {describe, it} = require('mocha'); +const cp = require('child_process'); + +const execSync = cmd => cp.execSync(cmd, {encoding: 'utf-8'}); + +describe('container samples', () => { + it('should run the quickstart', function () { + this.timeout(30000); + const stdout = execSync('node quickstart'); + assert(stdout.match(/Quickstart sample completed/)); + }); +}); diff --git a/src/v1/accelerator_types_proto_list.json b/src/v1/accelerator_types_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/accelerator_types_proto_list.json +++ b/src/v1/accelerator_types_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/addresses_client.ts b/src/v1/addresses_client.ts index a7050364..07ab4da6 100644 --- a/src/v1/addresses_client.ts +++ b/src/v1/addresses_client.ts @@ -624,6 +624,7 @@ export class AddressesClient { * @param {Object} request * The request object that will be sent. * @param {google.cloud.compute.v1.Address} request.addressResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.region diff --git a/src/v1/addresses_proto_list.json b/src/v1/addresses_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/addresses_proto_list.json +++ b/src/v1/addresses_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/autoscalers_client.ts b/src/v1/autoscalers_client.ts index c3ccbbd9..a3e0795b 100644 --- a/src/v1/autoscalers_client.ts +++ b/src/v1/autoscalers_client.ts @@ -638,6 +638,7 @@ export class AutoscalersClient { * @param {Object} request * The request object that will be sent. * @param {google.cloud.compute.v1.Autoscaler} request.autoscalerResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -845,6 +846,7 @@ export class AutoscalersClient { * @param {string} request.autoscaler * Name of the autoscaler to patch. * @param {google.cloud.compute.v1.Autoscaler} request.autoscalerResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -946,6 +948,7 @@ export class AutoscalersClient { * @param {string} request.autoscaler * Name of the autoscaler to update. * @param {google.cloud.compute.v1.Autoscaler} request.autoscalerResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId diff --git a/src/v1/autoscalers_proto_list.json b/src/v1/autoscalers_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/autoscalers_proto_list.json +++ b/src/v1/autoscalers_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/backend_buckets_client.ts b/src/v1/backend_buckets_client.ts index c7b4b41c..d20801cc 100644 --- a/src/v1/backend_buckets_client.ts +++ b/src/v1/backend_buckets_client.ts @@ -340,6 +340,7 @@ export class BackendBucketsClient { * * The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * @param {google.cloud.compute.v1.SignedUrlKey} request.signedUrlKeyResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. @@ -736,6 +737,7 @@ export class BackendBucketsClient { * @param {Object} request * The request object that will be sent. * @param {google.cloud.compute.v1.BackendBucket} request.backendBucketResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -949,6 +951,7 @@ export class BackendBucketsClient { * @param {string} request.backendBucket * Name of the BackendBucket resource to patch. * @param {google.cloud.compute.v1.BackendBucket} request.backendBucketResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -1050,6 +1053,7 @@ export class BackendBucketsClient { * @param {string} request.backendBucket * Name of the BackendBucket resource to update. * @param {google.cloud.compute.v1.BackendBucket} request.backendBucketResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId diff --git a/src/v1/backend_buckets_proto_list.json b/src/v1/backend_buckets_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/backend_buckets_proto_list.json +++ b/src/v1/backend_buckets_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/backend_services_client.ts b/src/v1/backend_services_client.ts index 4ced7294..4f80f84b 100644 --- a/src/v1/backend_services_client.ts +++ b/src/v1/backend_services_client.ts @@ -343,6 +343,7 @@ export class BackendServicesClient { * * The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * @param {google.cloud.compute.v1.SignedUrlKey} request.signedUrlKeyResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. @@ -869,6 +870,7 @@ export class BackendServicesClient { * Name of the BackendService resource to which the queried instance belongs. * @param {string} request.project * @param {google.cloud.compute.v1.ResourceGroupReference} request.resourceGroupReferenceResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. @@ -963,6 +965,7 @@ export class BackendServicesClient { * @param {Object} request * The request object that will be sent. * @param {google.cloud.compute.v1.BackendService} request.backendServiceResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -1176,6 +1179,7 @@ export class BackendServicesClient { * @param {string} request.backendService * Name of the BackendService resource to patch. * @param {google.cloud.compute.v1.BackendService} request.backendServiceResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -1288,6 +1292,7 @@ export class BackendServicesClient { * * The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * @param {google.cloud.compute.v1.SecurityPolicyReference} request.securityPolicyReferenceResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. @@ -1384,6 +1389,7 @@ export class BackendServicesClient { * @param {string} request.backendService * Name of the BackendService resource to update. * @param {google.cloud.compute.v1.BackendService} request.backendServiceResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId diff --git a/src/v1/backend_services_proto_list.json b/src/v1/backend_services_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/backend_services_proto_list.json +++ b/src/v1/backend_services_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/disk_types_proto_list.json b/src/v1/disk_types_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/disk_types_proto_list.json +++ b/src/v1/disk_types_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/disks_client.ts b/src/v1/disks_client.ts index 66b36d29..19c82a9f 100644 --- a/src/v1/disks_client.ts +++ b/src/v1/disks_client.ts @@ -337,6 +337,7 @@ export class DisksClient { * @param {string} request.disk * The disk name for this request. * @param {google.cloud.compute.v1.DisksAddResourcePoliciesRequest} request.disksAddResourcePoliciesRequestResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -567,6 +568,7 @@ export class DisksClient { * * The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * @param {google.cloud.compute.v1.Snapshot} request.snapshotResource + * The body resource for this request * @param {string} request.zone * The name of the zone for this request. * @param {object} [options] @@ -936,6 +938,7 @@ export class DisksClient { * @param {Object} request * The request object that will be sent. * @param {google.cloud.compute.v1.Disk} request.diskResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -1146,6 +1149,7 @@ export class DisksClient { * @param {string} request.disk * The disk name for this request. * @param {google.cloud.compute.v1.DisksRemoveResourcePoliciesRequest} request.disksRemoveResourcePoliciesRequestResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -1252,6 +1256,7 @@ export class DisksClient { * @param {string} request.disk * The name of the persistent disk. * @param {google.cloud.compute.v1.DisksResizeRequest} request.disksResizeRequestResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -1355,6 +1360,7 @@ export class DisksClient { * @param {string} request.zone * The name of the zone for this request. * @param {google.cloud.compute.v1.ZoneSetPolicyRequest} request.zoneSetPolicyRequestResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. @@ -1454,6 +1460,7 @@ export class DisksClient { * @param {string} request.zone * The name of the zone for this request. * @param {google.cloud.compute.v1.ZoneSetLabelsRequest} request.zoneSetLabelsRequestResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. @@ -1547,6 +1554,7 @@ export class DisksClient { * @param {string} request.resource * Name or id of the resource for this request. * @param {google.cloud.compute.v1.TestPermissionsRequest} request.testPermissionsRequestResource + * The body resource for this request * @param {string} request.zone * The name of the zone for this request. * @param {object} [options] diff --git a/src/v1/disks_proto_list.json b/src/v1/disks_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/disks_proto_list.json +++ b/src/v1/disks_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/external_vpn_gateways_client.ts b/src/v1/external_vpn_gateways_client.ts index 0f9e48fe..3f5ca051 100644 --- a/src/v1/external_vpn_gateways_client.ts +++ b/src/v1/external_vpn_gateways_client.ts @@ -528,6 +528,7 @@ export class ExternalVpnGatewaysClient { * @param {Object} request * The request object that will be sent. * @param {google.cloud.compute.v1.ExternalVpnGateway} request.externalVpnGatewayResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -751,6 +752,7 @@ export class ExternalVpnGatewaysClient { * @param {Object} request * The request object that will be sent. * @param {google.cloud.compute.v1.GlobalSetLabelsRequest} request.globalSetLabelsRequestResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.resource @@ -856,6 +858,7 @@ export class ExternalVpnGatewaysClient { * @param {string} request.resource * Name or id of the resource for this request. * @param {google.cloud.compute.v1.TestPermissionsRequest} request.testPermissionsRequestResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. diff --git a/src/v1/external_vpn_gateways_proto_list.json b/src/v1/external_vpn_gateways_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/external_vpn_gateways_proto_list.json +++ b/src/v1/external_vpn_gateways_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/firewalls_client.ts b/src/v1/firewalls_client.ts index ae3126e0..879e3fda 100644 --- a/src/v1/firewalls_client.ts +++ b/src/v1/firewalls_client.ts @@ -501,6 +501,7 @@ export class FirewallsClient { * @param {Object} request * The request object that will be sent. * @param {google.cloud.compute.v1.Firewall} request.firewallResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -702,6 +703,7 @@ export class FirewallsClient { * @param {string} request.firewall * Name of the firewall rule to patch. * @param {google.cloud.compute.v1.Firewall} request.firewallResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -797,6 +799,7 @@ export class FirewallsClient { * @param {string} request.firewall * Name of the firewall rule to update. * @param {google.cloud.compute.v1.Firewall} request.firewallResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId diff --git a/src/v1/firewalls_proto_list.json b/src/v1/firewalls_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/firewalls_proto_list.json +++ b/src/v1/firewalls_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/forwarding_rules_client.ts b/src/v1/forwarding_rules_client.ts index b27a7f60..dc63004f 100644 --- a/src/v1/forwarding_rules_client.ts +++ b/src/v1/forwarding_rules_client.ts @@ -644,6 +644,7 @@ export class ForwardingRulesClient { * @param {Object} request * The request object that will be sent. * @param {google.cloud.compute.v1.ForwardingRule} request.forwardingRuleResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.region @@ -861,6 +862,7 @@ export class ForwardingRulesClient { * @param {string} request.forwardingRule * Name of the ForwardingRule resource to patch. * @param {google.cloud.compute.v1.ForwardingRule} request.forwardingRuleResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.region @@ -977,6 +979,7 @@ export class ForwardingRulesClient { * * The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * @param {google.cloud.compute.v1.TargetReference} request.targetReferenceResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. diff --git a/src/v1/forwarding_rules_proto_list.json b/src/v1/forwarding_rules_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/forwarding_rules_proto_list.json +++ b/src/v1/forwarding_rules_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/global_addresses_client.ts b/src/v1/global_addresses_client.ts index d38ac30f..bd68bff1 100644 --- a/src/v1/global_addresses_client.ts +++ b/src/v1/global_addresses_client.ts @@ -512,6 +512,7 @@ export class GlobalAddressesClient { * @param {Object} request * The request object that will be sent. * @param {google.cloud.compute.v1.Address} request.addressResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId diff --git a/src/v1/global_addresses_proto_list.json b/src/v1/global_addresses_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/global_addresses_proto_list.json +++ b/src/v1/global_addresses_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/global_forwarding_rules_client.ts b/src/v1/global_forwarding_rules_client.ts index b75269a8..569d6980 100644 --- a/src/v1/global_forwarding_rules_client.ts +++ b/src/v1/global_forwarding_rules_client.ts @@ -535,6 +535,7 @@ export class GlobalForwardingRulesClient { * @param {Object} request * The request object that will be sent. * @param {google.cloud.compute.v1.ForwardingRule} request.forwardingRuleResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -760,6 +761,7 @@ export class GlobalForwardingRulesClient { * @param {string} request.forwardingRule * Name of the ForwardingRule resource to patch. * @param {google.cloud.compute.v1.ForwardingRule} request.forwardingRuleResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -875,6 +877,7 @@ export class GlobalForwardingRulesClient { * * The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * @param {google.cloud.compute.v1.TargetReference} request.targetReferenceResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. diff --git a/src/v1/global_forwarding_rules_proto_list.json b/src/v1/global_forwarding_rules_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/global_forwarding_rules_proto_list.json +++ b/src/v1/global_forwarding_rules_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/global_network_endpoint_groups_client.ts b/src/v1/global_network_endpoint_groups_client.ts index bb7cc6e5..2796b022 100644 --- a/src/v1/global_network_endpoint_groups_client.ts +++ b/src/v1/global_network_endpoint_groups_client.ts @@ -331,6 +331,7 @@ export class GlobalNetworkEndpointGroupsClient { * @param {Object} request * The request object that will be sent. * @param {google.cloud.compute.v1.GlobalNetworkEndpointGroupsAttachEndpointsRequest} request.globalNetworkEndpointGroupsAttachEndpointsRequestResource + * The body resource for this request * @param {string} request.networkEndpointGroup * The name of the network endpoint group where you are attaching network endpoints to. It should comply with RFC1035. * @param {string} request.project @@ -548,6 +549,7 @@ export class GlobalNetworkEndpointGroupsClient { * @param {Object} request * The request object that will be sent. * @param {google.cloud.compute.v1.GlobalNetworkEndpointGroupsDetachEndpointsRequest} request.globalNetworkEndpointGroupsDetachEndpointsRequestResource + * The body resource for this request * @param {string} request.networkEndpointGroup * The name of the network endpoint group where you are removing network endpoints. It should comply with RFC1035. * @param {string} request.project @@ -759,6 +761,7 @@ export class GlobalNetworkEndpointGroupsClient { * @param {Object} request * The request object that will be sent. * @param {google.cloud.compute.v1.NetworkEndpointGroup} request.networkEndpointGroupResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId diff --git a/src/v1/global_network_endpoint_groups_proto_list.json b/src/v1/global_network_endpoint_groups_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/global_network_endpoint_groups_proto_list.json +++ b/src/v1/global_network_endpoint_groups_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/global_operations_proto_list.json b/src/v1/global_operations_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/global_operations_proto_list.json +++ b/src/v1/global_operations_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/global_organization_operations_proto_list.json b/src/v1/global_organization_operations_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/global_organization_operations_proto_list.json +++ b/src/v1/global_organization_operations_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/health_checks_client.ts b/src/v1/health_checks_client.ts index efa7ab34..37c9c6f1 100644 --- a/src/v1/health_checks_client.ts +++ b/src/v1/health_checks_client.ts @@ -634,6 +634,7 @@ export class HealthChecksClient { * @param {Object} request * The request object that will be sent. * @param {google.cloud.compute.v1.HealthCheck} request.healthCheckResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -847,6 +848,7 @@ export class HealthChecksClient { * @param {string} request.healthCheck * Name of the HealthCheck resource to patch. * @param {google.cloud.compute.v1.HealthCheck} request.healthCheckResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -948,6 +950,7 @@ export class HealthChecksClient { * @param {string} request.healthCheck * Name of the HealthCheck resource to update. * @param {google.cloud.compute.v1.HealthCheck} request.healthCheckResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId diff --git a/src/v1/health_checks_proto_list.json b/src/v1/health_checks_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/health_checks_proto_list.json +++ b/src/v1/health_checks_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/images_client.ts b/src/v1/images_client.ts index bd869ad6..a8cfe133 100644 --- a/src/v1/images_client.ts +++ b/src/v1/images_client.ts @@ -420,6 +420,7 @@ export class ImagesClient { * @param {Object} request * The request object that will be sent. * @param {google.cloud.compute.v1.DeprecationStatus} request.deprecationStatusResource + * The body resource for this request * @param {string} request.image * Image name. * @param {string} request.project @@ -793,6 +794,7 @@ export class ImagesClient { * @param {boolean} request.forceCreate * Force image creation if true. * @param {google.cloud.compute.v1.Image} request.imageResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -990,6 +992,7 @@ export class ImagesClient { * @param {string} request.image * Name of the image resource to patch. * @param {google.cloud.compute.v1.Image} request.imageResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -1085,6 +1088,7 @@ export class ImagesClient { * @param {Object} request * The request object that will be sent. * @param {google.cloud.compute.v1.GlobalSetPolicyRequest} request.globalSetPolicyRequestResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.resource @@ -1176,6 +1180,7 @@ export class ImagesClient { * @param {Object} request * The request object that will be sent. * @param {google.cloud.compute.v1.GlobalSetLabelsRequest} request.globalSetLabelsRequestResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.resource @@ -1276,6 +1281,7 @@ export class ImagesClient { * @param {string} request.resource * Name or id of the resource for this request. * @param {google.cloud.compute.v1.TestPermissionsRequest} request.testPermissionsRequestResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. diff --git a/src/v1/images_proto_list.json b/src/v1/images_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/images_proto_list.json +++ b/src/v1/images_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/instance_group_managers_client.ts b/src/v1/instance_group_managers_client.ts index 5b24206f..b99df707 100644 --- a/src/v1/instance_group_managers_client.ts +++ b/src/v1/instance_group_managers_client.ts @@ -349,6 +349,7 @@ export class InstanceGroupManagersClient { * @param {string} request.instanceGroupManager * The name of the managed instance group. * @param {google.cloud.compute.v1.InstanceGroupManagersAbandonInstancesRequest} request.instanceGroupManagersAbandonInstancesRequestResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -578,6 +579,7 @@ export class InstanceGroupManagersClient { * @param {string} request.instanceGroupManager * The name of the managed instance group, should conform to RFC1035. * @param {google.cloud.compute.v1.InstanceGroupManagersApplyUpdatesRequest} request.instanceGroupManagersApplyUpdatesRequestResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.zone @@ -685,6 +687,7 @@ export class InstanceGroupManagersClient { * @param {string} request.instanceGroupManager * The name of the managed instance group. It should conform to RFC1035. * @param {google.cloud.compute.v1.InstanceGroupManagersCreateInstancesRequest} request.instanceGroupManagersCreateInstancesRequestResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -906,6 +909,7 @@ export class InstanceGroupManagersClient { * @param {string} request.instanceGroupManager * The name of the managed instance group. * @param {google.cloud.compute.v1.InstanceGroupManagersDeleteInstancesRequest} request.instanceGroupManagersDeleteInstancesRequestResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -1015,6 +1019,7 @@ export class InstanceGroupManagersClient { * @param {string} request.instanceGroupManager * The name of the managed instance group. It should conform to RFC1035. * @param {google.cloud.compute.v1.InstanceGroupManagersDeletePerInstanceConfigsReq} request.instanceGroupManagersDeletePerInstanceConfigsReqResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.zone @@ -1224,6 +1229,7 @@ export class InstanceGroupManagersClient { * @param {Object} request * The request object that will be sent. * @param {google.cloud.compute.v1.InstanceGroupManager} request.instanceGroupManagerResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -1823,6 +1829,7 @@ export class InstanceGroupManagersClient { * @param {string} request.instanceGroupManager * The name of the instance group manager. * @param {google.cloud.compute.v1.InstanceGroupManager} request.instanceGroupManagerResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -1932,6 +1939,7 @@ export class InstanceGroupManagersClient { * @param {string} request.instanceGroupManager * The name of the managed instance group. It should conform to RFC1035. * @param {google.cloud.compute.v1.InstanceGroupManagersPatchPerInstanceConfigsReq} request.instanceGroupManagersPatchPerInstanceConfigsReqResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -2049,6 +2057,7 @@ export class InstanceGroupManagersClient { * @param {string} request.instanceGroupManager * The name of the managed instance group. * @param {google.cloud.compute.v1.InstanceGroupManagersRecreateInstancesRequest} request.instanceGroupManagersRecreateInstancesRequestResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -2276,6 +2285,7 @@ export class InstanceGroupManagersClient { * @param {string} request.instanceGroupManager * The name of the managed instance group. * @param {google.cloud.compute.v1.InstanceGroupManagersSetInstanceTemplateRequest} request.instanceGroupManagersSetInstanceTemplateRequestResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -2385,6 +2395,7 @@ export class InstanceGroupManagersClient { * @param {string} request.instanceGroupManager * The name of the managed instance group. * @param {google.cloud.compute.v1.InstanceGroupManagersSetTargetPoolsRequest} request.instanceGroupManagersSetTargetPoolsRequestResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -2494,6 +2505,7 @@ export class InstanceGroupManagersClient { * @param {string} request.instanceGroupManager * The name of the managed instance group. It should conform to RFC1035. * @param {google.cloud.compute.v1.InstanceGroupManagersUpdatePerInstanceConfigsReq} request.instanceGroupManagersUpdatePerInstanceConfigsReqResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId diff --git a/src/v1/instance_group_managers_proto_list.json b/src/v1/instance_group_managers_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/instance_group_managers_proto_list.json +++ b/src/v1/instance_group_managers_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/instance_groups_client.ts b/src/v1/instance_groups_client.ts index 0cb0f5f5..13b8f65c 100644 --- a/src/v1/instance_groups_client.ts +++ b/src/v1/instance_groups_client.ts @@ -333,6 +333,7 @@ export class InstanceGroupsClient { * @param {string} request.instanceGroup * The name of the instance group where you are adding instances. * @param {google.cloud.compute.v1.InstanceGroupsAddInstancesRequest} request.instanceGroupsAddInstancesRequestResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -757,6 +758,7 @@ export class InstanceGroupsClient { * @param {Object} request * The request object that will be sent. * @param {google.cloud.compute.v1.InstanceGroup} request.instanceGroupResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -987,6 +989,7 @@ export class InstanceGroupsClient { * @param {string} request.instanceGroup * The name of the instance group from which you want to generate a list of included instances. * @param {google.cloud.compute.v1.InstanceGroupsListInstancesRequest} request.instanceGroupsListInstancesRequestResource + * The body resource for this request * @param {number} request.maxResults * The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) * @param {string} request.orderBy @@ -1104,6 +1107,7 @@ export class InstanceGroupsClient { * @param {string} request.instanceGroup * The name of the instance group where the specified instances will be removed. * @param {google.cloud.compute.v1.InstanceGroupsRemoveInstancesRequest} request.instanceGroupsRemoveInstancesRequestResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -1213,6 +1217,7 @@ export class InstanceGroupsClient { * @param {string} request.instanceGroup * The name of the instance group where the named ports are updated. * @param {google.cloud.compute.v1.InstanceGroupsSetNamedPortsRequest} request.instanceGroupsSetNamedPortsRequestResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId diff --git a/src/v1/instance_groups_proto_list.json b/src/v1/instance_groups_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/instance_groups_proto_list.json +++ b/src/v1/instance_groups_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/instance_templates_client.ts b/src/v1/instance_templates_client.ts index c0c16981..1003ea96 100644 --- a/src/v1/instance_templates_client.ts +++ b/src/v1/instance_templates_client.ts @@ -622,6 +622,7 @@ export class InstanceTemplatesClient { * @param {Object} request * The request object that will be sent. * @param {google.cloud.compute.v1.InstanceTemplate} request.instanceTemplateResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -836,6 +837,7 @@ export class InstanceTemplatesClient { * @param {Object} request * The request object that will be sent. * @param {google.cloud.compute.v1.GlobalSetPolicyRequest} request.globalSetPolicyRequestResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.resource @@ -941,6 +943,7 @@ export class InstanceTemplatesClient { * @param {string} request.resource * Name or id of the resource for this request. * @param {google.cloud.compute.v1.TestPermissionsRequest} request.testPermissionsRequestResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. diff --git a/src/v1/instance_templates_proto_list.json b/src/v1/instance_templates_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/instance_templates_proto_list.json +++ b/src/v1/instance_templates_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/instances_client.ts b/src/v1/instances_client.ts index bd4ad7a3..b9677604 100644 --- a/src/v1/instances_client.ts +++ b/src/v1/instances_client.ts @@ -362,6 +362,7 @@ export class InstancesClient { * @param {Object} request * The request object that will be sent. * @param {google.cloud.compute.v1.AccessConfig} request.accessConfigResource + * The body resource for this request * @param {string} request.instance * The instance name for this request. * @param {string} request.networkInterface @@ -475,6 +476,7 @@ export class InstancesClient { * @param {string} request.instance * The instance name for this request. * @param {google.cloud.compute.v1.InstancesAddResourcePoliciesRequest} request.instancesAddResourcePoliciesRequestResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -699,6 +701,7 @@ export class InstancesClient { * @param {Object} request * The request object that will be sent. * @param {google.cloud.compute.v1.AttachedDisk} request.attachedDiskResource + * The body resource for this request * @param {boolean} request.forceAttach * Whether to force attach the regional disk even if it's currently attached to another instance. If you try to force attach a zonal disk to an instance, you will receive an error. * @param {string} request.instance @@ -1716,6 +1719,7 @@ export class InstancesClient { * @param {Object} request * The request object that will be sent. * @param {google.cloud.compute.v1.Instance} request.instanceResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -2051,6 +2055,7 @@ export class InstancesClient { * @param {string} request.instance * The instance name for this request. * @param {google.cloud.compute.v1.InstancesRemoveResourcePoliciesRequest} request.instancesRemoveResourcePoliciesRequestResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -2483,6 +2488,7 @@ export class InstancesClient { * @param {string} request.zone * The name of the zone for this request. * @param {google.cloud.compute.v1.ZoneSetPolicyRequest} request.zoneSetPolicyRequestResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. @@ -2576,6 +2582,7 @@ export class InstancesClient { * @param {string} request.instance * Name of the instance scoping this request. * @param {google.cloud.compute.v1.InstancesSetLabelsRequest} request.instancesSetLabelsRequestResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -2682,6 +2689,7 @@ export class InstancesClient { * @param {string} request.instance * Name of the instance scoping this request. * @param {google.cloud.compute.v1.InstancesSetMachineResourcesRequest} request.instancesSetMachineResourcesRequestResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -2788,6 +2796,7 @@ export class InstancesClient { * @param {string} request.instance * Name of the instance scoping this request. * @param {google.cloud.compute.v1.InstancesSetMachineTypeRequest} request.instancesSetMachineTypeRequestResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -2891,6 +2900,7 @@ export class InstancesClient { * @param {string} request.instance * Name of the instance scoping this request. * @param {google.cloud.compute.v1.Metadata} request.metadataResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -2997,6 +3007,7 @@ export class InstancesClient { * @param {string} request.instance * Name of the instance scoping this request. * @param {google.cloud.compute.v1.InstancesSetMinCpuPlatformRequest} request.instancesSetMinCpuPlatformRequestResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -3111,6 +3122,7 @@ export class InstancesClient { * * The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * @param {google.cloud.compute.v1.Scheduling} request.schedulingResource + * The body resource for this request * @param {string} request.zone * The name of the zone for this request. * @param {object} [options] @@ -3209,6 +3221,7 @@ export class InstancesClient { * @param {string} request.instance * Name of the instance resource to start. * @param {google.cloud.compute.v1.InstancesSetServiceAccountRequest} request.instancesSetServiceAccountRequestResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -3326,6 +3339,7 @@ export class InstancesClient { * * The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * @param {google.cloud.compute.v1.ShieldedInstanceIntegrityPolicy} request.shieldedInstanceIntegrityPolicyResource + * The body resource for this request * @param {string} request.zone * The name of the zone for this request. * @param {object} [options] @@ -3432,6 +3446,7 @@ export class InstancesClient { * * The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * @param {google.cloud.compute.v1.Tags} request.tagsResource + * The body resource for this request * @param {string} request.zone * The name of the zone for this request. * @param {object} [options] @@ -3730,6 +3745,7 @@ export class InstancesClient { * @param {string} request.instance * Name of the instance resource to start. * @param {google.cloud.compute.v1.InstancesStartWithEncryptionKeyRequest} request.instancesStartWithEncryptionKeyRequestResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -3941,6 +3957,7 @@ export class InstancesClient { * @param {string} request.resource * Name or id of the resource for this request. * @param {google.cloud.compute.v1.TestPermissionsRequest} request.testPermissionsRequestResource + * The body resource for this request * @param {string} request.zone * The name of the zone for this request. * @param {object} [options] @@ -4035,6 +4052,7 @@ export class InstancesClient { * @param {string} request.instance * Name of the instance resource to update. * @param {google.cloud.compute.v1.Instance} request.instanceResource + * The body resource for this request * @param {string} request.minimalAction * Specifies the action to take when updating an instance even if the updated properties do not require it. If not specified, then Compute Engine acts based on the minimum action that the updated properties require. * @param {string} request.mostDisruptiveAllowedAction @@ -4141,6 +4159,7 @@ export class InstancesClient { * @param {Object} request * The request object that will be sent. * @param {google.cloud.compute.v1.AccessConfig} request.accessConfigResource + * The body resource for this request * @param {string} request.instance * The instance name for this request. * @param {string} request.networkInterface @@ -4252,6 +4271,7 @@ export class InstancesClient { * @param {Object} request * The request object that will be sent. * @param {google.cloud.compute.v1.DisplayDevice} request.displayDeviceResource + * The body resource for this request * @param {string} request.instance * Name of the instance scoping this request. * @param {string} request.project @@ -4365,6 +4385,7 @@ export class InstancesClient { * @param {string} request.networkInterface * The name of the network interface to update. * @param {google.cloud.compute.v1.NetworkInterface} request.networkInterfaceResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -4486,6 +4507,7 @@ export class InstancesClient { * * The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * @param {google.cloud.compute.v1.ShieldedInstanceConfig} request.shieldedInstanceConfigResource + * The body resource for this request * @param {string} request.zone * The name of the zone for this request. * @param {object} [options] diff --git a/src/v1/instances_proto_list.json b/src/v1/instances_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/instances_proto_list.json +++ b/src/v1/instances_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/interconnect_attachments_client.ts b/src/v1/interconnect_attachments_client.ts index 297eb03d..35053a96 100644 --- a/src/v1/interconnect_attachments_client.ts +++ b/src/v1/interconnect_attachments_client.ts @@ -659,6 +659,7 @@ export class InterconnectAttachmentsClient { * @param {Object} request * The request object that will be sent. * @param {google.cloud.compute.v1.InterconnectAttachment} request.interconnectAttachmentResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.region @@ -890,6 +891,7 @@ export class InterconnectAttachmentsClient { * @param {string} request.interconnectAttachment * Name of the interconnect attachment to patch. * @param {google.cloud.compute.v1.InterconnectAttachment} request.interconnectAttachmentResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.region diff --git a/src/v1/interconnect_attachments_proto_list.json b/src/v1/interconnect_attachments_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/interconnect_attachments_proto_list.json +++ b/src/v1/interconnect_attachments_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/interconnect_locations_proto_list.json b/src/v1/interconnect_locations_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/interconnect_locations_proto_list.json +++ b/src/v1/interconnect_locations_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/interconnects_client.ts b/src/v1/interconnects_client.ts index 8b0ed0d8..938b9ceb 100644 --- a/src/v1/interconnects_client.ts +++ b/src/v1/interconnects_client.ts @@ -613,6 +613,7 @@ export class InterconnectsClient { * @param {Object} request * The request object that will be sent. * @param {google.cloud.compute.v1.Interconnect} request.interconnectResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -826,6 +827,7 @@ export class InterconnectsClient { * @param {string} request.interconnect * Name of the interconnect to update. * @param {google.cloud.compute.v1.Interconnect} request.interconnectResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId diff --git a/src/v1/interconnects_proto_list.json b/src/v1/interconnects_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/interconnects_proto_list.json +++ b/src/v1/interconnects_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/license_codes_client.ts b/src/v1/license_codes_client.ts index cf979366..a6681145 100644 --- a/src/v1/license_codes_client.ts +++ b/src/v1/license_codes_client.ts @@ -414,6 +414,7 @@ export class LicenseCodesClient { * @param {string} request.resource * Name or id of the resource for this request. * @param {google.cloud.compute.v1.TestPermissionsRequest} request.testPermissionsRequestResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. diff --git a/src/v1/license_codes_proto_list.json b/src/v1/license_codes_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/license_codes_proto_list.json +++ b/src/v1/license_codes_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/licenses_client.ts b/src/v1/licenses_client.ts index 6ed7c9ee..b4749149 100644 --- a/src/v1/licenses_client.ts +++ b/src/v1/licenses_client.ts @@ -598,6 +598,7 @@ export class LicensesClient { * @param {Object} request * The request object that will be sent. * @param {google.cloud.compute.v1.License} request.licenseResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -801,6 +802,7 @@ export class LicensesClient { * @param {Object} request * The request object that will be sent. * @param {google.cloud.compute.v1.GlobalSetPolicyRequest} request.globalSetPolicyRequestResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.resource @@ -903,6 +905,7 @@ export class LicensesClient { * @param {string} request.resource * Name or id of the resource for this request. * @param {google.cloud.compute.v1.TestPermissionsRequest} request.testPermissionsRequestResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. diff --git a/src/v1/licenses_proto_list.json b/src/v1/licenses_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/licenses_proto_list.json +++ b/src/v1/licenses_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/machine_types_proto_list.json b/src/v1/machine_types_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/machine_types_proto_list.json +++ b/src/v1/machine_types_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/network_endpoint_groups_client.ts b/src/v1/network_endpoint_groups_client.ts index 7af387ce..993a67f0 100644 --- a/src/v1/network_endpoint_groups_client.ts +++ b/src/v1/network_endpoint_groups_client.ts @@ -454,6 +454,7 @@ export class NetworkEndpointGroupsClient { * @param {string} request.networkEndpointGroup * The name of the network endpoint group where you are attaching network endpoints to. It should comply with RFC1035. * @param {google.cloud.compute.v1.NetworkEndpointGroupsAttachEndpointsRequest} request.networkEndpointGroupsAttachEndpointsRequestResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -675,6 +676,7 @@ export class NetworkEndpointGroupsClient { * @param {string} request.networkEndpointGroup * The name of the network endpoint group where you are removing network endpoints. It should comply with RFC1035. * @param {google.cloud.compute.v1.NetworkEndpointGroupsDetachEndpointsRequest} request.networkEndpointGroupsDetachEndpointsRequestResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -888,6 +890,7 @@ export class NetworkEndpointGroupsClient { * @param {Object} request * The request object that will be sent. * @param {google.cloud.compute.v1.NetworkEndpointGroup} request.networkEndpointGroupResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -1127,6 +1130,7 @@ export class NetworkEndpointGroupsClient { * @param {string} request.networkEndpointGroup * The name of the network endpoint group from which you want to generate a list of included network endpoints. It should comply with RFC1035. * @param {google.cloud.compute.v1.NetworkEndpointGroupsListEndpointsRequest} request.networkEndpointGroupsListEndpointsRequestResource + * The body resource for this request * @param {string} request.orderBy * Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. * @@ -1242,6 +1246,7 @@ export class NetworkEndpointGroupsClient { * @param {string} request.resource * Name or id of the resource for this request. * @param {google.cloud.compute.v1.TestPermissionsRequest} request.testPermissionsRequestResource + * The body resource for this request * @param {string} request.zone * The name of the zone for this request. * @param {object} [options] diff --git a/src/v1/network_endpoint_groups_proto_list.json b/src/v1/network_endpoint_groups_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/network_endpoint_groups_proto_list.json +++ b/src/v1/network_endpoint_groups_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/networks_client.ts b/src/v1/networks_client.ts index c9943ce4..9e35a842 100644 --- a/src/v1/networks_client.ts +++ b/src/v1/networks_client.ts @@ -331,6 +331,7 @@ export class NetworksClient { * @param {string} request.network * Name of the network resource to add peering to. * @param {google.cloud.compute.v1.NetworksAddPeeringRequest} request.networksAddPeeringRequestResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -606,6 +607,7 @@ export class NetworksClient { * @param {Object} request * The request object that will be sent. * @param {google.cloud.compute.v1.Network} request.networkResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -933,6 +935,7 @@ export class NetworksClient { * @param {string} request.network * Name of the network to update. * @param {google.cloud.compute.v1.Network} request.networkResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -1032,6 +1035,7 @@ export class NetworksClient { * @param {string} request.network * Name of the network resource to remove peering from. * @param {google.cloud.compute.v1.NetworksRemovePeeringRequest} request.networksRemovePeeringRequestResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -1239,6 +1243,7 @@ export class NetworksClient { * @param {string} request.network * Name of the network resource which the updated peering is belonging to. * @param {google.cloud.compute.v1.NetworksUpdatePeeringRequest} request.networksUpdatePeeringRequestResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId diff --git a/src/v1/networks_proto_list.json b/src/v1/networks_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/networks_proto_list.json +++ b/src/v1/networks_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/node_groups_client.ts b/src/v1/node_groups_client.ts index 2eb6b650..2d466222 100644 --- a/src/v1/node_groups_client.ts +++ b/src/v1/node_groups_client.ts @@ -334,6 +334,7 @@ export class NodeGroupsClient { * @param {string} request.nodeGroup * Name of the NodeGroup resource. * @param {google.cloud.compute.v1.NodeGroupsAddNodesRequest} request.nodeGroupsAddNodesRequestResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -653,6 +654,7 @@ export class NodeGroupsClient { * @param {string} request.nodeGroup * Name of the NodeGroup resource whose nodes will be deleted. * @param {google.cloud.compute.v1.NodeGroupsDeleteNodesRequest} request.nodeGroupsDeleteNodesRequestResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -940,6 +942,7 @@ export class NodeGroupsClient { * @param {number} request.initialNodeCount * Initial count of nodes in the node group. * @param {google.cloud.compute.v1.NodeGroup} request.nodeGroupResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -1261,6 +1264,7 @@ export class NodeGroupsClient { * @param {string} request.nodeGroup * Name of the NodeGroup resource to update. * @param {google.cloud.compute.v1.NodeGroup} request.nodeGroupResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -1366,6 +1370,7 @@ export class NodeGroupsClient { * @param {string} request.zone * The name of the zone for this request. * @param {google.cloud.compute.v1.ZoneSetPolicyRequest} request.zoneSetPolicyRequestResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. @@ -1462,6 +1467,7 @@ export class NodeGroupsClient { * @param {string} request.nodeGroup * Name of the NodeGroup resource to update. * @param {google.cloud.compute.v1.NodeGroupsSetNodeTemplateRequest} request.nodeGroupsSetNodeTemplateRequestResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -1573,6 +1579,7 @@ export class NodeGroupsClient { * @param {string} request.resource * Name or id of the resource for this request. * @param {google.cloud.compute.v1.TestPermissionsRequest} request.testPermissionsRequestResource + * The body resource for this request * @param {string} request.zone * The name of the zone for this request. * @param {object} [options] diff --git a/src/v1/node_groups_proto_list.json b/src/v1/node_groups_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/node_groups_proto_list.json +++ b/src/v1/node_groups_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/node_templates_client.ts b/src/v1/node_templates_client.ts index 2ec6e9ae..8ba55d2e 100644 --- a/src/v1/node_templates_client.ts +++ b/src/v1/node_templates_client.ts @@ -743,6 +743,7 @@ export class NodeTemplatesClient { * @param {Object} request * The request object that will be sent. * @param {google.cloud.compute.v1.NodeTemplate} request.nodeTemplateResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.region @@ -965,6 +966,7 @@ export class NodeTemplatesClient { * @param {string} request.region * The name of the region for this request. * @param {google.cloud.compute.v1.RegionSetPolicyRequest} request.regionSetPolicyRequestResource + * The body resource for this request * @param {string} request.resource * Name or id of the resource for this request. * @param {object} [options] @@ -1070,6 +1072,7 @@ export class NodeTemplatesClient { * @param {string} request.resource * Name or id of the resource for this request. * @param {google.cloud.compute.v1.TestPermissionsRequest} request.testPermissionsRequestResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. diff --git a/src/v1/node_templates_proto_list.json b/src/v1/node_templates_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/node_templates_proto_list.json +++ b/src/v1/node_templates_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/node_types_proto_list.json b/src/v1/node_types_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/node_types_proto_list.json +++ b/src/v1/node_types_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/packet_mirrorings_client.ts b/src/v1/packet_mirrorings_client.ts index ef50be6d..fbc8562a 100644 --- a/src/v1/packet_mirrorings_client.ts +++ b/src/v1/packet_mirrorings_client.ts @@ -644,6 +644,7 @@ export class PacketMirroringsClient { * @param {Object} request * The request object that will be sent. * @param {google.cloud.compute.v1.PacketMirroring} request.packetMirroringResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.region @@ -861,6 +862,7 @@ export class PacketMirroringsClient { * @param {string} request.packetMirroring * Name of the PacketMirroring resource to patch. * @param {google.cloud.compute.v1.PacketMirroring} request.packetMirroringResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.region @@ -971,6 +973,7 @@ export class PacketMirroringsClient { * @param {string} request.resource * Name or id of the resource for this request. * @param {google.cloud.compute.v1.TestPermissionsRequest} request.testPermissionsRequestResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. diff --git a/src/v1/packet_mirrorings_proto_list.json b/src/v1/packet_mirrorings_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/packet_mirrorings_proto_list.json +++ b/src/v1/packet_mirrorings_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/projects_client.ts b/src/v1/projects_client.ts index 02f4697c..1208312c 100644 --- a/src/v1/projects_client.ts +++ b/src/v1/projects_client.ts @@ -435,6 +435,7 @@ export class ProjectsClient { * @param {string} request.project * Project ID for this request. * @param {google.cloud.compute.v1.ProjectsDisableXpnResourceRequest} request.projectsDisableXpnResourceRequestResource + * The body resource for this request * @param {string} request.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. * @@ -638,6 +639,7 @@ export class ProjectsClient { * @param {string} request.project * Project ID for this request. * @param {google.cloud.compute.v1.ProjectsEnableXpnResourceRequest} request.projectsEnableXpnResourceRequestResource + * The body resource for this request * @param {string} request.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. * @@ -1052,6 +1054,7 @@ export class ProjectsClient { * @param {string} request.project * Project ID for this request. * @param {google.cloud.compute.v1.ProjectsListXpnHostsRequest} request.projectsListXpnHostsRequestResource + * The body resource for this request * @param {boolean} request.returnPartialSuccess * Opt-in for partial success behavior which provides partial results in case of failure. The default value is false and the logic is the same as today. * @param {object} [options] @@ -1141,6 +1144,7 @@ export class ProjectsClient { * @param {Object} request * The request object that will be sent. * @param {google.cloud.compute.v1.DiskMoveRequest} request.diskMoveRequestResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -1238,6 +1242,7 @@ export class ProjectsClient { * @param {Object} request * The request object that will be sent. * @param {google.cloud.compute.v1.InstanceMoveRequest} request.instanceMoveRequestResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -1340,6 +1345,7 @@ export class ProjectsClient { * @param {Object} request * The request object that will be sent. * @param {google.cloud.compute.v1.Metadata} request.metadataResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -1451,6 +1457,7 @@ export class ProjectsClient { * @param {string} request.project * Project ID for this request. * @param {google.cloud.compute.v1.ProjectsSetDefaultNetworkTierRequest} request.projectsSetDefaultNetworkTierRequestResource + * The body resource for this request * @param {string} request.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. * @@ -1562,6 +1569,7 @@ export class ProjectsClient { * * The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * @param {google.cloud.compute.v1.UsageExportLocation} request.usageExportLocationResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. diff --git a/src/v1/projects_proto_list.json b/src/v1/projects_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/projects_proto_list.json +++ b/src/v1/projects_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/region_autoscalers_client.ts b/src/v1/region_autoscalers_client.ts index 3f47ea0d..69c01c79 100644 --- a/src/v1/region_autoscalers_client.ts +++ b/src/v1/region_autoscalers_client.ts @@ -523,6 +523,7 @@ export class RegionAutoscalersClient { * @param {Object} request * The request object that will be sent. * @param {google.cloud.compute.v1.Autoscaler} request.autoscalerResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.region @@ -740,6 +741,7 @@ export class RegionAutoscalersClient { * @param {string} request.autoscaler * Name of the autoscaler to patch. * @param {google.cloud.compute.v1.Autoscaler} request.autoscalerResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.region @@ -843,6 +845,7 @@ export class RegionAutoscalersClient { * @param {string} request.autoscaler * Name of the autoscaler to update. * @param {google.cloud.compute.v1.Autoscaler} request.autoscalerResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.region diff --git a/src/v1/region_autoscalers_proto_list.json b/src/v1/region_autoscalers_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/region_autoscalers_proto_list.json +++ b/src/v1/region_autoscalers_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/region_backend_services_client.ts b/src/v1/region_backend_services_client.ts index 7180ac1b..1d695060 100644 --- a/src/v1/region_backend_services_client.ts +++ b/src/v1/region_backend_services_client.ts @@ -545,6 +545,7 @@ export class RegionBackendServicesClient { * @param {string} request.region * Name of the region scoping this request. * @param {google.cloud.compute.v1.ResourceGroupReference} request.resourceGroupReferenceResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. @@ -642,6 +643,7 @@ export class RegionBackendServicesClient { * @param {Object} request * The request object that will be sent. * @param {google.cloud.compute.v1.BackendService} request.backendServiceResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.region @@ -871,6 +873,7 @@ export class RegionBackendServicesClient { * @param {string} request.backendService * Name of the BackendService resource to patch. * @param {google.cloud.compute.v1.BackendService} request.backendServiceResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.region @@ -980,6 +983,7 @@ export class RegionBackendServicesClient { * @param {string} request.backendService * Name of the BackendService resource to update. * @param {google.cloud.compute.v1.BackendService} request.backendServiceResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.region diff --git a/src/v1/region_backend_services_proto_list.json b/src/v1/region_backend_services_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/region_backend_services_proto_list.json +++ b/src/v1/region_backend_services_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/region_commitments_client.ts b/src/v1/region_commitments_client.ts index e7575ff1..30b86fd0 100644 --- a/src/v1/region_commitments_client.ts +++ b/src/v1/region_commitments_client.ts @@ -539,6 +539,7 @@ export class RegionCommitmentsClient { * @param {Object} request * The request object that will be sent. * @param {google.cloud.compute.v1.Commitment} request.commitmentResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.region diff --git a/src/v1/region_commitments_proto_list.json b/src/v1/region_commitments_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/region_commitments_proto_list.json +++ b/src/v1/region_commitments_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/region_disk_types_proto_list.json b/src/v1/region_disk_types_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/region_disk_types_proto_list.json +++ b/src/v1/region_disk_types_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/region_disks_client.ts b/src/v1/region_disks_client.ts index 54264d34..5f58ff8e 100644 --- a/src/v1/region_disks_client.ts +++ b/src/v1/region_disks_client.ts @@ -340,6 +340,7 @@ export class RegionDisksClient { * @param {string} request.region * The name of the region for this request. * @param {google.cloud.compute.v1.RegionDisksAddResourcePoliciesRequest} request.regionDisksAddResourcePoliciesRequestResource + * The body resource for this request * @param {string} request.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. * @@ -455,6 +456,7 @@ export class RegionDisksClient { * * The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * @param {google.cloud.compute.v1.Snapshot} request.snapshotResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. @@ -839,6 +841,7 @@ export class RegionDisksClient { * @param {Object} request * The request object that will be sent. * @param {google.cloud.compute.v1.Disk} request.diskResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.region @@ -1059,6 +1062,7 @@ export class RegionDisksClient { * @param {string} request.region * The name of the region for this request. * @param {google.cloud.compute.v1.RegionDisksRemoveResourcePoliciesRequest} request.regionDisksRemoveResourcePoliciesRequestResource + * The body resource for this request * @param {string} request.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. * @@ -1169,6 +1173,7 @@ export class RegionDisksClient { * @param {string} request.region * Name of the region for this request. * @param {google.cloud.compute.v1.RegionDisksResizeRequest} request.regionDisksResizeRequestResource + * The body resource for this request * @param {string} request.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. * @@ -1270,6 +1275,7 @@ export class RegionDisksClient { * @param {string} request.region * The name of the region for this request. * @param {google.cloud.compute.v1.RegionSetPolicyRequest} request.regionSetPolicyRequestResource + * The body resource for this request * @param {string} request.resource * Name or id of the resource for this request. * @param {object} [options] @@ -1367,6 +1373,7 @@ export class RegionDisksClient { * @param {string} request.region * The region for this request. * @param {google.cloud.compute.v1.RegionSetLabelsRequest} request.regionSetLabelsRequestResource + * The body resource for this request * @param {string} request.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. * @@ -1475,6 +1482,7 @@ export class RegionDisksClient { * @param {string} request.resource * Name or id of the resource for this request. * @param {google.cloud.compute.v1.TestPermissionsRequest} request.testPermissionsRequestResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. diff --git a/src/v1/region_disks_proto_list.json b/src/v1/region_disks_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/region_disks_proto_list.json +++ b/src/v1/region_disks_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/region_health_check_services_client.ts b/src/v1/region_health_check_services_client.ts index 792e1010..eda40058 100644 --- a/src/v1/region_health_check_services_client.ts +++ b/src/v1/region_health_check_services_client.ts @@ -539,6 +539,7 @@ export class RegionHealthCheckServicesClient { * @param {Object} request * The request object that will be sent. * @param {google.cloud.compute.v1.HealthCheckService} request.healthCheckServiceResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.region @@ -768,6 +769,7 @@ export class RegionHealthCheckServicesClient { * @param {string} request.healthCheckService * Name of the HealthCheckService to update. The name must be 1-63 characters long, and comply with RFC1035. * @param {google.cloud.compute.v1.HealthCheckService} request.healthCheckServiceResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.region diff --git a/src/v1/region_health_check_services_proto_list.json b/src/v1/region_health_check_services_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/region_health_check_services_proto_list.json +++ b/src/v1/region_health_check_services_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/region_health_checks_client.ts b/src/v1/region_health_checks_client.ts index d4562a21..ef5e765f 100644 --- a/src/v1/region_health_checks_client.ts +++ b/src/v1/region_health_checks_client.ts @@ -532,6 +532,7 @@ export class RegionHealthChecksClient { * @param {Object} request * The request object that will be sent. * @param {google.cloud.compute.v1.HealthCheck} request.healthCheckResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.region @@ -752,6 +753,7 @@ export class RegionHealthChecksClient { * @param {string} request.healthCheck * Name of the HealthCheck resource to patch. * @param {google.cloud.compute.v1.HealthCheck} request.healthCheckResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.region @@ -858,6 +860,7 @@ export class RegionHealthChecksClient { * @param {string} request.healthCheck * Name of the HealthCheck resource to update. * @param {google.cloud.compute.v1.HealthCheck} request.healthCheckResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.region diff --git a/src/v1/region_health_checks_proto_list.json b/src/v1/region_health_checks_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/region_health_checks_proto_list.json +++ b/src/v1/region_health_checks_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/region_instance_group_managers_client.ts b/src/v1/region_instance_group_managers_client.ts index 3d0ce64b..aff2fdd0 100644 --- a/src/v1/region_instance_group_managers_client.ts +++ b/src/v1/region_instance_group_managers_client.ts @@ -353,6 +353,7 @@ export class RegionInstanceGroupManagersClient { * @param {string} request.region * Name of the region scoping this request. * @param {google.cloud.compute.v1.RegionInstanceGroupManagersAbandonInstancesRequest} request.regionInstanceGroupManagersAbandonInstancesRequestResource + * The body resource for this request * @param {string} request.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. * @@ -462,6 +463,7 @@ export class RegionInstanceGroupManagersClient { * @param {string} request.region * Name of the region scoping this request, should conform to RFC1035. * @param {google.cloud.compute.v1.RegionInstanceGroupManagersApplyUpdatesRequest} request.regionInstanceGroupManagersApplyUpdatesRequestResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. @@ -569,6 +571,7 @@ export class RegionInstanceGroupManagersClient { * @param {string} request.region * The name of the region where the managed instance group is located. It should conform to RFC1035. * @param {google.cloud.compute.v1.RegionInstanceGroupManagersCreateInstancesRequest} request.regionInstanceGroupManagersCreateInstancesRequestResource + * The body resource for this request * @param {string} request.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. * @@ -790,6 +793,7 @@ export class RegionInstanceGroupManagersClient { * @param {string} request.region * Name of the region scoping this request. * @param {google.cloud.compute.v1.RegionInstanceGroupManagersDeleteInstancesRequest} request.regionInstanceGroupManagersDeleteInstancesRequestResource + * The body resource for this request * @param {string} request.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. * @@ -899,6 +903,7 @@ export class RegionInstanceGroupManagersClient { * @param {string} request.region * Name of the region scoping this request, should conform to RFC1035. * @param {google.cloud.compute.v1.RegionInstanceGroupManagerDeleteInstanceConfigReq} request.regionInstanceGroupManagerDeleteInstanceConfigReqResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. @@ -1104,6 +1109,7 @@ export class RegionInstanceGroupManagersClient { * @param {Object} request * The request object that will be sent. * @param {google.cloud.compute.v1.InstanceGroupManager} request.instanceGroupManagerResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.region @@ -1703,6 +1709,7 @@ export class RegionInstanceGroupManagersClient { * @param {string} request.instanceGroupManager * The name of the instance group manager. * @param {google.cloud.compute.v1.InstanceGroupManager} request.instanceGroupManagerResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.region @@ -1816,6 +1823,7 @@ export class RegionInstanceGroupManagersClient { * @param {string} request.region * Name of the region scoping this request, should conform to RFC1035. * @param {google.cloud.compute.v1.RegionInstanceGroupManagerPatchInstanceConfigReq} request.regionInstanceGroupManagerPatchInstanceConfigReqResource + * The body resource for this request * @param {string} request.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. * @@ -1933,6 +1941,7 @@ export class RegionInstanceGroupManagersClient { * @param {string} request.region * Name of the region scoping this request. * @param {google.cloud.compute.v1.RegionInstanceGroupManagersRecreateRequest} request.regionInstanceGroupManagersRecreateRequestResource + * The body resource for this request * @param {string} request.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. * @@ -2156,6 +2165,7 @@ export class RegionInstanceGroupManagersClient { * @param {string} request.region * Name of the region scoping this request. * @param {google.cloud.compute.v1.RegionInstanceGroupManagersSetTemplateRequest} request.regionInstanceGroupManagersSetTemplateRequestResource + * The body resource for this request * @param {string} request.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. * @@ -2265,6 +2275,7 @@ export class RegionInstanceGroupManagersClient { * @param {string} request.region * Name of the region scoping this request. * @param {google.cloud.compute.v1.RegionInstanceGroupManagersSetTargetPoolsRequest} request.regionInstanceGroupManagersSetTargetPoolsRequestResource + * The body resource for this request * @param {string} request.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. * @@ -2374,6 +2385,7 @@ export class RegionInstanceGroupManagersClient { * @param {string} request.region * Name of the region scoping this request, should conform to RFC1035. * @param {google.cloud.compute.v1.RegionInstanceGroupManagerUpdateInstanceConfigReq} request.regionInstanceGroupManagerUpdateInstanceConfigReqResource + * The body resource for this request * @param {string} request.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. * diff --git a/src/v1/region_instance_group_managers_proto_list.json b/src/v1/region_instance_group_managers_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/region_instance_group_managers_proto_list.json +++ b/src/v1/region_instance_group_managers_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/region_instance_groups_client.ts b/src/v1/region_instance_groups_client.ts index 71ee5004..5d4d88ec 100644 --- a/src/v1/region_instance_groups_client.ts +++ b/src/v1/region_instance_groups_client.ts @@ -566,6 +566,7 @@ export class RegionInstanceGroupsClient { * @param {string} request.region * Name of the region scoping this request. * @param {google.cloud.compute.v1.RegionInstanceGroupsListInstancesRequest} request.regionInstanceGroupsListInstancesRequestResource + * The body resource for this request * @param {boolean} request.returnPartialSuccess * Opt-in for partial success behavior which provides partial results in case of failure. The default value is false and the logic is the same as today. * @param {object} [options] @@ -671,6 +672,7 @@ export class RegionInstanceGroupsClient { * @param {string} request.region * Name of the region scoping this request. * @param {google.cloud.compute.v1.RegionInstanceGroupsSetNamedPortsRequest} request.regionInstanceGroupsSetNamedPortsRequestResource + * The body resource for this request * @param {string} request.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. * diff --git a/src/v1/region_instance_groups_proto_list.json b/src/v1/region_instance_groups_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/region_instance_groups_proto_list.json +++ b/src/v1/region_instance_groups_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/region_network_endpoint_groups_client.ts b/src/v1/region_network_endpoint_groups_client.ts index b1357235..6cdec9ac 100644 --- a/src/v1/region_network_endpoint_groups_client.ts +++ b/src/v1/region_network_endpoint_groups_client.ts @@ -538,6 +538,7 @@ export class RegionNetworkEndpointGroupsClient { * @param {Object} request * The request object that will be sent. * @param {google.cloud.compute.v1.NetworkEndpointGroup} request.networkEndpointGroupResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.region diff --git a/src/v1/region_network_endpoint_groups_proto_list.json b/src/v1/region_network_endpoint_groups_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/region_network_endpoint_groups_proto_list.json +++ b/src/v1/region_network_endpoint_groups_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/region_notification_endpoints_client.ts b/src/v1/region_notification_endpoints_client.ts index fa71e2b3..2dda72bf 100644 --- a/src/v1/region_notification_endpoints_client.ts +++ b/src/v1/region_notification_endpoints_client.ts @@ -538,6 +538,7 @@ export class RegionNotificationEndpointsClient { * @param {Object} request * The request object that will be sent. * @param {google.cloud.compute.v1.NotificationEndpoint} request.notificationEndpointResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.region diff --git a/src/v1/region_notification_endpoints_proto_list.json b/src/v1/region_notification_endpoints_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/region_notification_endpoints_proto_list.json +++ b/src/v1/region_notification_endpoints_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/region_operations_proto_list.json b/src/v1/region_operations_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/region_operations_proto_list.json +++ b/src/v1/region_operations_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/region_ssl_certificates_client.ts b/src/v1/region_ssl_certificates_client.ts index a04d1671..8819e083 100644 --- a/src/v1/region_ssl_certificates_client.ts +++ b/src/v1/region_ssl_certificates_client.ts @@ -547,6 +547,7 @@ export class RegionSslCertificatesClient { * * The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * @param {google.cloud.compute.v1.SslCertificate} request.sslCertificateResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. diff --git a/src/v1/region_ssl_certificates_proto_list.json b/src/v1/region_ssl_certificates_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/region_ssl_certificates_proto_list.json +++ b/src/v1/region_ssl_certificates_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/region_target_http_proxies_client.ts b/src/v1/region_target_http_proxies_client.ts index bdea8411..66525ac5 100644 --- a/src/v1/region_target_http_proxies_client.ts +++ b/src/v1/region_target_http_proxies_client.ts @@ -548,6 +548,7 @@ export class RegionTargetHttpProxiesClient { * * The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * @param {google.cloud.compute.v1.TargetHttpProxy} request.targetHttpProxyResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. @@ -777,6 +778,7 @@ export class RegionTargetHttpProxiesClient { * @param {string} request.targetHttpProxy * Name of the TargetHttpProxy to set a URL map for. * @param {google.cloud.compute.v1.UrlMapReference} request.urlMapReferenceResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. diff --git a/src/v1/region_target_http_proxies_proto_list.json b/src/v1/region_target_http_proxies_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/region_target_http_proxies_proto_list.json +++ b/src/v1/region_target_http_proxies_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/region_target_https_proxies_client.ts b/src/v1/region_target_https_proxies_client.ts index 2471dc3e..3d431c45 100644 --- a/src/v1/region_target_https_proxies_client.ts +++ b/src/v1/region_target_https_proxies_client.ts @@ -550,6 +550,7 @@ export class RegionTargetHttpsProxiesClient { * * The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * @param {google.cloud.compute.v1.TargetHttpsProxy} request.targetHttpsProxyResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. @@ -771,6 +772,7 @@ export class RegionTargetHttpsProxiesClient { * @param {string} request.region * Name of the region scoping this request. * @param {google.cloud.compute.v1.RegionTargetHttpsProxiesSetSslCertificatesRequest} request.regionTargetHttpsProxiesSetSslCertificatesRequestResource + * The body resource for this request * @param {string} request.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. * @@ -888,6 +890,7 @@ export class RegionTargetHttpsProxiesClient { * @param {string} request.targetHttpsProxy * Name of the TargetHttpsProxy to set a URL map for. * @param {google.cloud.compute.v1.UrlMapReference} request.urlMapReferenceResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. diff --git a/src/v1/region_target_https_proxies_proto_list.json b/src/v1/region_target_https_proxies_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/region_target_https_proxies_proto_list.json +++ b/src/v1/region_target_https_proxies_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/region_url_maps_client.ts b/src/v1/region_url_maps_client.ts index c4a2bac5..7a2132cb 100644 --- a/src/v1/region_url_maps_client.ts +++ b/src/v1/region_url_maps_client.ts @@ -520,6 +520,7 @@ export class RegionUrlMapsClient { * @param {string} request.requestId * begin_interface: MixerMutationRequestBuilder Request ID to support idempotency. * @param {google.cloud.compute.v1.UrlMap} request.urlMapResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. @@ -733,6 +734,7 @@ export class RegionUrlMapsClient { * @param {string} request.urlMap * Name of the UrlMap resource to patch. * @param {google.cloud.compute.v1.UrlMap} request.urlMapResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. @@ -832,6 +834,7 @@ export class RegionUrlMapsClient { * @param {string} request.urlMap * Name of the UrlMap resource to update. * @param {google.cloud.compute.v1.UrlMap} request.urlMapResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. @@ -927,6 +930,7 @@ export class RegionUrlMapsClient { * @param {string} request.region * Name of the region scoping this request. * @param {google.cloud.compute.v1.RegionUrlMapsValidateRequest} request.regionUrlMapsValidateRequestResource + * The body resource for this request * @param {string} request.urlMap * Name of the UrlMap resource to be validated as. * @param {object} [options] diff --git a/src/v1/region_url_maps_proto_list.json b/src/v1/region_url_maps_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/region_url_maps_proto_list.json +++ b/src/v1/region_url_maps_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/regions_proto_list.json b/src/v1/regions_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/regions_proto_list.json +++ b/src/v1/regions_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/reservations_client.ts b/src/v1/reservations_client.ts index 1a54b731..992f8ef9 100644 --- a/src/v1/reservations_client.ts +++ b/src/v1/reservations_client.ts @@ -752,6 +752,7 @@ export class ReservationsClient { * * The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * @param {google.cloud.compute.v1.Reservation} request.reservationResource + * The body resource for this request * @param {string} request.zone * Name of the zone for this request. * @param {object} [options] @@ -969,6 +970,7 @@ export class ReservationsClient { * @param {string} request.reservation * Name of the reservation to update. * @param {google.cloud.compute.v1.ReservationsResizeRequest} request.reservationsResizeRequestResource + * The body resource for this request * @param {string} request.zone * Name of the zone for this request. * @param {object} [options] @@ -1071,6 +1073,7 @@ export class ReservationsClient { * @param {string} request.zone * The name of the zone for this request. * @param {google.cloud.compute.v1.ZoneSetPolicyRequest} request.zoneSetPolicyRequestResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. @@ -1172,6 +1175,7 @@ export class ReservationsClient { * @param {string} request.resource * Name or id of the resource for this request. * @param {google.cloud.compute.v1.TestPermissionsRequest} request.testPermissionsRequestResource + * The body resource for this request * @param {string} request.zone * The name of the zone for this request. * @param {object} [options] diff --git a/src/v1/reservations_proto_list.json b/src/v1/reservations_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/reservations_proto_list.json +++ b/src/v1/reservations_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/resource_policies_client.ts b/src/v1/resource_policies_client.ts index 036f5e79..c1f72450 100644 --- a/src/v1/resource_policies_client.ts +++ b/src/v1/resource_policies_client.ts @@ -759,6 +759,7 @@ export class ResourcePoliciesClient { * * The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * @param {google.cloud.compute.v1.ResourcePolicy} request.resourcePolicyResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. @@ -971,6 +972,7 @@ export class ResourcePoliciesClient { * @param {string} request.region * The name of the region for this request. * @param {google.cloud.compute.v1.RegionSetPolicyRequest} request.regionSetPolicyRequestResource + * The body resource for this request * @param {string} request.resource * Name or id of the resource for this request. * @param {object} [options] @@ -1076,6 +1078,7 @@ export class ResourcePoliciesClient { * @param {string} request.resource * Name or id of the resource for this request. * @param {google.cloud.compute.v1.TestPermissionsRequest} request.testPermissionsRequestResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. diff --git a/src/v1/resource_policies_proto_list.json b/src/v1/resource_policies_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/resource_policies_proto_list.json +++ b/src/v1/resource_policies_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/routers_client.ts b/src/v1/routers_client.ts index fdf87dc0..4c5b6231 100644 --- a/src/v1/routers_client.ts +++ b/src/v1/routers_client.ts @@ -851,6 +851,7 @@ export class RoutersClient { * * The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * @param {google.cloud.compute.v1.Router} request.routerResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. @@ -1054,6 +1055,7 @@ export class RoutersClient { * @param {string} request.router * Name of the Router resource to patch. * @param {google.cloud.compute.v1.Router} request.routerResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. @@ -1143,6 +1145,7 @@ export class RoutersClient { * @param {string} request.router * Name of the Router resource to query. * @param {google.cloud.compute.v1.Router} request.routerResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. @@ -1240,6 +1243,7 @@ export class RoutersClient { * @param {string} request.router * Name of the Router resource to update. * @param {google.cloud.compute.v1.Router} request.routerResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. diff --git a/src/v1/routers_proto_list.json b/src/v1/routers_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/routers_proto_list.json +++ b/src/v1/routers_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/routes_client.ts b/src/v1/routes_client.ts index e2a6bb7c..1e0d8b95 100644 --- a/src/v1/routes_client.ts +++ b/src/v1/routes_client.ts @@ -500,6 +500,7 @@ export class RoutesClient { * * The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * @param {google.cloud.compute.v1.Route} request.routeResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. diff --git a/src/v1/routes_proto_list.json b/src/v1/routes_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/routes_proto_list.json +++ b/src/v1/routes_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/security_policies_client.ts b/src/v1/security_policies_client.ts index 0b1a4550..2106a44c 100644 --- a/src/v1/security_policies_client.ts +++ b/src/v1/security_policies_client.ts @@ -333,6 +333,7 @@ export class SecurityPoliciesClient { * @param {string} request.securityPolicy * Name of the security policy to update. * @param {google.cloud.compute.v1.SecurityPolicyRule} request.securityPolicyRuleResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. @@ -722,6 +723,7 @@ export class SecurityPoliciesClient { * * The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * @param {google.cloud.compute.v1.SecurityPolicy} request.securityPolicyResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. @@ -1057,6 +1059,7 @@ export class SecurityPoliciesClient { * @param {string} request.securityPolicy * Name of the security policy to update. * @param {google.cloud.compute.v1.SecurityPolicy} request.securityPolicyResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. @@ -1157,6 +1160,7 @@ export class SecurityPoliciesClient { * @param {string} request.securityPolicy * Name of the security policy to update. * @param {google.cloud.compute.v1.SecurityPolicyRule} request.securityPolicyRuleResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. diff --git a/src/v1/security_policies_proto_list.json b/src/v1/security_policies_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/security_policies_proto_list.json +++ b/src/v1/security_policies_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/snapshots_client.ts b/src/v1/snapshots_client.ts index 9842d27d..6adeac2e 100644 --- a/src/v1/snapshots_client.ts +++ b/src/v1/snapshots_client.ts @@ -710,6 +710,7 @@ export class SnapshotsClient { * @param {Object} request * The request object that will be sent. * @param {google.cloud.compute.v1.GlobalSetPolicyRequest} request.globalSetPolicyRequestResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.resource @@ -805,6 +806,7 @@ export class SnapshotsClient { * @param {Object} request * The request object that will be sent. * @param {google.cloud.compute.v1.GlobalSetLabelsRequest} request.globalSetLabelsRequestResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.resource @@ -907,6 +909,7 @@ export class SnapshotsClient { * @param {string} request.resource * Name or id of the resource for this request. * @param {google.cloud.compute.v1.TestPermissionsRequest} request.testPermissionsRequestResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. diff --git a/src/v1/snapshots_proto_list.json b/src/v1/snapshots_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/snapshots_proto_list.json +++ b/src/v1/snapshots_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/ssl_certificates_client.ts b/src/v1/ssl_certificates_client.ts index 7a3c7dbb..13b4fc23 100644 --- a/src/v1/ssl_certificates_client.ts +++ b/src/v1/ssl_certificates_client.ts @@ -646,6 +646,7 @@ export class SslCertificatesClient { * * The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * @param {google.cloud.compute.v1.SslCertificate} request.sslCertificateResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. diff --git a/src/v1/ssl_certificates_proto_list.json b/src/v1/ssl_certificates_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/ssl_certificates_proto_list.json +++ b/src/v1/ssl_certificates_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/ssl_policies_client.ts b/src/v1/ssl_policies_client.ts index fb4ff20b..aecaf971 100644 --- a/src/v1/ssl_policies_client.ts +++ b/src/v1/ssl_policies_client.ts @@ -511,6 +511,7 @@ export class SslPoliciesClient { * * The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * @param {google.cloud.compute.v1.SslPolicy} request.sslPolicyResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. @@ -830,6 +831,7 @@ export class SslPoliciesClient { * @param {string} request.sslPolicy * Name of the SSL policy to update. The name must be 1-63 characters long, and comply with RFC1035. * @param {google.cloud.compute.v1.SslPolicy} request.sslPolicyResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. diff --git a/src/v1/ssl_policies_proto_list.json b/src/v1/ssl_policies_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/ssl_policies_proto_list.json +++ b/src/v1/ssl_policies_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/subnetworks_client.ts b/src/v1/subnetworks_client.ts index a2ceaf13..87812014 100644 --- a/src/v1/subnetworks_client.ts +++ b/src/v1/subnetworks_client.ts @@ -568,6 +568,7 @@ export class SubnetworksClient { * @param {string} request.subnetwork * Name of the Subnetwork resource to update. * @param {google.cloud.compute.v1.SubnetworksExpandIpCidrRangeRequest} request.subnetworksExpandIpCidrRangeRequestResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. @@ -860,6 +861,7 @@ export class SubnetworksClient { * * The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * @param {google.cloud.compute.v1.Subnetwork} request.subnetworkResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. @@ -1181,6 +1183,7 @@ export class SubnetworksClient { * @param {string} request.subnetwork * Name of the Subnetwork resource to patch. * @param {google.cloud.compute.v1.Subnetwork} request.subnetworkResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. @@ -1274,6 +1277,7 @@ export class SubnetworksClient { * @param {string} request.region * The name of the region for this request. * @param {google.cloud.compute.v1.RegionSetPolicyRequest} request.regionSetPolicyRequestResource + * The body resource for this request * @param {string} request.resource * Name or id of the resource for this request. * @param {object} [options] @@ -1382,6 +1386,7 @@ export class SubnetworksClient { * @param {string} request.subnetwork * Name of the Subnetwork resource. * @param {google.cloud.compute.v1.SubnetworksSetPrivateIpGoogleAccessRequest} request.subnetworksSetPrivateIpGoogleAccessRequestResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. @@ -1489,6 +1494,7 @@ export class SubnetworksClient { * @param {string} request.resource * Name or id of the resource for this request. * @param {google.cloud.compute.v1.TestPermissionsRequest} request.testPermissionsRequestResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. diff --git a/src/v1/subnetworks_proto_list.json b/src/v1/subnetworks_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/subnetworks_proto_list.json +++ b/src/v1/subnetworks_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/target_grpc_proxies_client.ts b/src/v1/target_grpc_proxies_client.ts index 1fceb0e6..1e66c6ed 100644 --- a/src/v1/target_grpc_proxies_client.ts +++ b/src/v1/target_grpc_proxies_client.ts @@ -526,6 +526,7 @@ export class TargetGrpcProxiesClient { * * The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * @param {google.cloud.compute.v1.TargetGrpcProxy} request.targetGrpcProxyResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. @@ -739,6 +740,7 @@ export class TargetGrpcProxiesClient { * @param {string} request.targetGrpcProxy * Name of the TargetGrpcProxy resource to patch. * @param {google.cloud.compute.v1.TargetGrpcProxy} request.targetGrpcProxyResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. diff --git a/src/v1/target_grpc_proxies_proto_list.json b/src/v1/target_grpc_proxies_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/target_grpc_proxies_proto_list.json +++ b/src/v1/target_grpc_proxies_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/target_http_proxies_client.ts b/src/v1/target_http_proxies_client.ts index 8dd6cdf2..18ad47d2 100644 --- a/src/v1/target_http_proxies_client.ts +++ b/src/v1/target_http_proxies_client.ts @@ -648,6 +648,7 @@ export class TargetHttpProxiesClient { * * The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * @param {google.cloud.compute.v1.TargetHttpProxy} request.targetHttpProxyResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. @@ -861,6 +862,7 @@ export class TargetHttpProxiesClient { * @param {string} request.targetHttpProxy * Name of the TargetHttpProxy resource to patch. * @param {google.cloud.compute.v1.TargetHttpProxy} request.targetHttpProxyResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. @@ -965,6 +967,7 @@ export class TargetHttpProxiesClient { * @param {string} request.targetHttpProxy * Name of the TargetHttpProxy to set a URL map for. * @param {google.cloud.compute.v1.UrlMapReference} request.urlMapReferenceResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. diff --git a/src/v1/target_http_proxies_proto_list.json b/src/v1/target_http_proxies_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/target_http_proxies_proto_list.json +++ b/src/v1/target_http_proxies_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/target_https_proxies_client.ts b/src/v1/target_https_proxies_client.ts index 4c91a99a..00ac7c99 100644 --- a/src/v1/target_https_proxies_client.ts +++ b/src/v1/target_https_proxies_client.ts @@ -650,6 +650,7 @@ export class TargetHttpsProxiesClient { * * The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * @param {google.cloud.compute.v1.TargetHttpsProxy} request.targetHttpsProxyResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. @@ -864,6 +865,7 @@ export class TargetHttpsProxiesClient { * * The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * @param {google.cloud.compute.v1.TargetHttpsProxiesSetQuicOverrideRequest} request.targetHttpsProxiesSetQuicOverrideRequestResource + * The body resource for this request * @param {string} request.targetHttpsProxy * Name of the TargetHttpsProxy resource to set the QUIC override policy for. The name should conform to RFC1035. * @param {object} [options] @@ -971,6 +973,7 @@ export class TargetHttpsProxiesClient { * * The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * @param {google.cloud.compute.v1.TargetHttpsProxiesSetSslCertificatesRequest} request.targetHttpsProxiesSetSslCertificatesRequestResource + * The body resource for this request * @param {string} request.targetHttpsProxy * Name of the TargetHttpsProxy resource to set an SslCertificates resource for. * @param {object} [options] @@ -1078,6 +1081,7 @@ export class TargetHttpsProxiesClient { * * The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * @param {google.cloud.compute.v1.SslPolicyReference} request.sslPolicyReferenceResource + * The body resource for this request * @param {string} request.targetHttpsProxy * Name of the TargetHttpsProxy resource whose SSL policy is to be set. The name must be 1-63 characters long, and comply with RFC1035. * @param {object} [options] @@ -1187,6 +1191,7 @@ export class TargetHttpsProxiesClient { * @param {string} request.targetHttpsProxy * Name of the TargetHttpsProxy resource whose URL map is to be set. * @param {google.cloud.compute.v1.UrlMapReference} request.urlMapReferenceResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. diff --git a/src/v1/target_https_proxies_proto_list.json b/src/v1/target_https_proxies_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/target_https_proxies_proto_list.json +++ b/src/v1/target_https_proxies_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/target_instances_client.ts b/src/v1/target_instances_client.ts index 0117a210..38d83a9c 100644 --- a/src/v1/target_instances_client.ts +++ b/src/v1/target_instances_client.ts @@ -650,6 +650,7 @@ export class TargetInstancesClient { * * The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * @param {google.cloud.compute.v1.TargetInstance} request.targetInstanceResource + * The body resource for this request * @param {string} request.zone * Name of the zone scoping this request. * @param {object} [options] diff --git a/src/v1/target_instances_proto_list.json b/src/v1/target_instances_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/target_instances_proto_list.json +++ b/src/v1/target_instances_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/target_pools_client.ts b/src/v1/target_pools_client.ts index 2cb6212e..564b05b6 100644 --- a/src/v1/target_pools_client.ts +++ b/src/v1/target_pools_client.ts @@ -345,6 +345,7 @@ export class TargetPoolsClient { * @param {string} request.targetPool * Name of the target pool to add a health check to. * @param {google.cloud.compute.v1.TargetPoolsAddHealthCheckRequest} request.targetPoolsAddHealthCheckRequestResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. @@ -451,6 +452,7 @@ export class TargetPoolsClient { * @param {string} request.targetPool * Name of the TargetPool resource to add instances to. * @param {google.cloud.compute.v1.TargetPoolsAddInstanceRequest} request.targetPoolsAddInstanceRequestResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. @@ -854,6 +856,7 @@ export class TargetPoolsClient { * @param {Object} request * The request object that will be sent. * @param {google.cloud.compute.v1.InstanceReference} request.instanceReferenceResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.region @@ -961,6 +964,7 @@ export class TargetPoolsClient { * * The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * @param {google.cloud.compute.v1.TargetPool} request.targetPoolResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. @@ -1175,6 +1179,7 @@ export class TargetPoolsClient { * @param {string} request.targetPool * Name of the target pool to remove health checks from. * @param {google.cloud.compute.v1.TargetPoolsRemoveHealthCheckRequest} request.targetPoolsRemoveHealthCheckRequestResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. @@ -1284,6 +1289,7 @@ export class TargetPoolsClient { * @param {string} request.targetPool * Name of the TargetPool resource to remove instances from. * @param {google.cloud.compute.v1.TargetPoolsRemoveInstanceRequest} request.targetPoolsRemoveInstanceRequestResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. @@ -1392,6 +1398,7 @@ export class TargetPoolsClient { * @param {string} request.targetPool * Name of the TargetPool resource to set a backup pool for. * @param {google.cloud.compute.v1.TargetReference} request.targetReferenceResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. diff --git a/src/v1/target_pools_proto_list.json b/src/v1/target_pools_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/target_pools_proto_list.json +++ b/src/v1/target_pools_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/target_ssl_proxies_client.ts b/src/v1/target_ssl_proxies_client.ts index f78e858e..14f12906 100644 --- a/src/v1/target_ssl_proxies_client.ts +++ b/src/v1/target_ssl_proxies_client.ts @@ -529,6 +529,7 @@ export class TargetSslProxiesClient { * * The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * @param {google.cloud.compute.v1.TargetSslProxy} request.targetSslProxyResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. @@ -743,6 +744,7 @@ export class TargetSslProxiesClient { * * The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * @param {google.cloud.compute.v1.TargetSslProxiesSetBackendServiceRequest} request.targetSslProxiesSetBackendServiceRequestResource + * The body resource for this request * @param {string} request.targetSslProxy * Name of the TargetSslProxy resource whose BackendService resource is to be set. * @param {object} [options] @@ -850,6 +852,7 @@ export class TargetSslProxiesClient { * * The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * @param {google.cloud.compute.v1.TargetSslProxiesSetProxyHeaderRequest} request.targetSslProxiesSetProxyHeaderRequestResource + * The body resource for this request * @param {string} request.targetSslProxy * Name of the TargetSslProxy resource whose ProxyHeader is to be set. * @param {object} [options] @@ -957,6 +960,7 @@ export class TargetSslProxiesClient { * * The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * @param {google.cloud.compute.v1.TargetSslProxiesSetSslCertificatesRequest} request.targetSslProxiesSetSslCertificatesRequestResource + * The body resource for this request * @param {string} request.targetSslProxy * Name of the TargetSslProxy resource whose SslCertificate resource is to be set. * @param {object} [options] @@ -1064,6 +1068,7 @@ export class TargetSslProxiesClient { * * The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * @param {google.cloud.compute.v1.SslPolicyReference} request.sslPolicyReferenceResource + * The body resource for this request * @param {string} request.targetSslProxy * Name of the TargetSslProxy resource whose SSL policy is to be set. The name must be 1-63 characters long, and comply with RFC1035. * @param {object} [options] diff --git a/src/v1/target_ssl_proxies_proto_list.json b/src/v1/target_ssl_proxies_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/target_ssl_proxies_proto_list.json +++ b/src/v1/target_ssl_proxies_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/target_tcp_proxies_client.ts b/src/v1/target_tcp_proxies_client.ts index 886ee4d8..48c3d81a 100644 --- a/src/v1/target_tcp_proxies_client.ts +++ b/src/v1/target_tcp_proxies_client.ts @@ -527,6 +527,7 @@ export class TargetTcpProxiesClient { * * The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * @param {google.cloud.compute.v1.TargetTcpProxy} request.targetTcpProxyResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. @@ -741,6 +742,7 @@ export class TargetTcpProxiesClient { * * The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * @param {google.cloud.compute.v1.TargetTcpProxiesSetBackendServiceRequest} request.targetTcpProxiesSetBackendServiceRequestResource + * The body resource for this request * @param {string} request.targetTcpProxy * Name of the TargetTcpProxy resource whose BackendService resource is to be set. * @param {object} [options] @@ -848,6 +850,7 @@ export class TargetTcpProxiesClient { * * The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * @param {google.cloud.compute.v1.TargetTcpProxiesSetProxyHeaderRequest} request.targetTcpProxiesSetProxyHeaderRequestResource + * The body resource for this request * @param {string} request.targetTcpProxy * Name of the TargetTcpProxy resource whose ProxyHeader is to be set. * @param {object} [options] diff --git a/src/v1/target_tcp_proxies_proto_list.json b/src/v1/target_tcp_proxies_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/target_tcp_proxies_proto_list.json +++ b/src/v1/target_tcp_proxies_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/target_vpn_gateways_client.ts b/src/v1/target_vpn_gateways_client.ts index 1a0f4ad8..e6945c5e 100644 --- a/src/v1/target_vpn_gateways_client.ts +++ b/src/v1/target_vpn_gateways_client.ts @@ -652,6 +652,7 @@ export class TargetVpnGatewaysClient { * * The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * @param {google.cloud.compute.v1.TargetVpnGateway} request.targetVpnGatewayResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. diff --git a/src/v1/target_vpn_gateways_proto_list.json b/src/v1/target_vpn_gateways_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/target_vpn_gateways_proto_list.json +++ b/src/v1/target_vpn_gateways_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/url_maps_client.ts b/src/v1/url_maps_client.ts index 848f6c38..324a38b6 100644 --- a/src/v1/url_maps_client.ts +++ b/src/v1/url_maps_client.ts @@ -626,6 +626,7 @@ export class UrlMapsClient { * * The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * @param {google.cloud.compute.v1.UrlMap} request.urlMapResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. @@ -717,6 +718,7 @@ export class UrlMapsClient { * @param {Object} request * The request object that will be sent. * @param {google.cloud.compute.v1.CacheInvalidationRule} request.cacheInvalidationRuleResource + * The body resource for this request * @param {string} request.project * Project ID for this request. * @param {string} request.requestId @@ -928,6 +930,7 @@ export class UrlMapsClient { * @param {string} request.urlMap * Name of the UrlMap resource to patch. * @param {google.cloud.compute.v1.UrlMap} request.urlMapResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. @@ -1021,6 +1024,7 @@ export class UrlMapsClient { * @param {string} request.urlMap * Name of the UrlMap resource to update. * @param {google.cloud.compute.v1.UrlMap} request.urlMapResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. @@ -1110,6 +1114,7 @@ export class UrlMapsClient { * @param {string} request.urlMap * Name of the UrlMap resource to be validated as. * @param {google.cloud.compute.v1.UrlMapsValidateRequest} request.urlMapsValidateRequestResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. diff --git a/src/v1/url_maps_proto_list.json b/src/v1/url_maps_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/url_maps_proto_list.json +++ b/src/v1/url_maps_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/vpn_gateways_client.ts b/src/v1/vpn_gateways_client.ts index 9415d75a..da8c4b2d 100644 --- a/src/v1/vpn_gateways_client.ts +++ b/src/v1/vpn_gateways_client.ts @@ -745,6 +745,7 @@ export class VpnGatewaysClient { * * The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * @param {google.cloud.compute.v1.VpnGateway} request.vpnGatewayResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. @@ -948,6 +949,7 @@ export class VpnGatewaysClient { * @param {string} request.region * The region for this request. * @param {google.cloud.compute.v1.RegionSetLabelsRequest} request.regionSetLabelsRequestResource + * The body resource for this request * @param {string} request.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. * @@ -1056,6 +1058,7 @@ export class VpnGatewaysClient { * @param {string} request.resource * Name or id of the resource for this request. * @param {google.cloud.compute.v1.TestPermissionsRequest} request.testPermissionsRequestResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. diff --git a/src/v1/vpn_gateways_proto_list.json b/src/v1/vpn_gateways_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/vpn_gateways_proto_list.json +++ b/src/v1/vpn_gateways_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/vpn_tunnels_client.ts b/src/v1/vpn_tunnels_client.ts index eb980fd2..0e24392f 100644 --- a/src/v1/vpn_tunnels_client.ts +++ b/src/v1/vpn_tunnels_client.ts @@ -636,6 +636,7 @@ export class VpnTunnelsClient { * * The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * @param {google.cloud.compute.v1.VpnTunnel} request.vpnTunnelResource + * The body resource for this request * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. diff --git a/src/v1/vpn_tunnels_proto_list.json b/src/v1/vpn_tunnels_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/vpn_tunnels_proto_list.json +++ b/src/v1/vpn_tunnels_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/zone_operations_proto_list.json b/src/v1/zone_operations_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/zone_operations_proto_list.json +++ b/src/v1/zone_operations_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/v1/zones_proto_list.json b/src/v1/zones_proto_list.json index 752616ed..4ad01aef 100644 --- a/src/v1/zones_proto_list.json +++ b/src/v1/zones_proto_list.json @@ -1 +1,3 @@ -['../../protos/google/cloud/compute/v1/compute.proto'] +[ + "../../protos/google/cloud/compute/v1/compute.proto" +] diff --git a/src/zone.js b/src/zone.js deleted file mode 100644 index b4e5f45a..00000000 --- a/src/zone.js +++ /dev/null @@ -1,1678 +0,0 @@ -/*! - * Copyright 2015 Google Inc. All Rights Reserved. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -'use strict'; - -const arrify = require('arrify'); -const async = require('async'); -const common = require('@google-cloud/common'); -const extend = require('extend'); -const format = require('string-format-obj'); -const {GCEImages} = require('gce-images'); -const is = require('is'); -const {promisifyAll} = require('@google-cloud/promisify'); -const {paginator} = require('@google-cloud/paginator'); - -const Autoscaler = require('./autoscaler.js'); -const Disk = require('./disk.js'); -const InstanceGroup = require('./instance-group.js'); -const InstanceGroupManager = require('./instance-group-manager.js'); -const MachineType = require('./machine-type.js'); -const Operation = require('./operation.js'); -const VM = require('./vm.js'); - -/** - * A Zone object allows you to interact with a Google Compute Engine zone. - * - * @see [Regions & Zones Overview]{@link https://cloud.google.com/compute/docs/zones} - * @see [Zone Resource]{@link https://cloud.google.com/compute/docs/reference/v1/zones} - * - * @class - * @param {Compute} compute - Compute object this zone belongs to. - * @param {string} name - Name of the zone. - * - * @example - * const Compute = require('@google-cloud/compute'); - * const compute = new Compute(); - * const zone = compute.zone('us-central1-a'); - */ -class Zone extends common.ServiceObject { - constructor(compute, name) { - const methods = { - /** - * Check if the zone exists. - * - * @method Zone#exists - * @param {function} callback - The callback function. - * @param {?error} callback.err - An error returned while making this - * request. - * @param {boolean} callback.exists - Whether the zone exists or not. - * - * @example - * const Compute = require('@google-cloud/compute'); - * const compute = new Compute(); - * const zone = compute.zone('us-central1-a'); - * - * zone.exists(function(err, exists) {}); - * - * //- - * // If the callback is omitted, we'll return a Promise. - * //- - * zone.exists().then(function(data) { - * const exists = data[0]; - * }); - */ - exists: true, - /** - * Get a zone. - * - * @method Zone#get - * - * @example - * const Compute = require('@google-cloud/compute'); - * const compute = new Compute(); - * const zone = compute.zone('us-central1-a'); - * - * zone.get(function(err, zone, apiResponse) { - * // `zone` is a Zone object. - * }); - * - * //- - * // If the callback is omitted, we'll return a Promise. - * //- - * zone.get().then(function(data) { - * const zone = data[0]; - * const apiResponse = data[1]; - * }); - */ - get: true, - /** - * Get the zone's metadata. - * - * @see [Zone Resource]{@link https://cloud.google.com/compute/docs/reference/v1/zones} - * @see [Zones: get API Documentation]{@link https://cloud.google.com/compute/docs/reference/v1/zones/get} - * - * @method Zone#getMetadata - * @param {function=} callback - The callback function. - * @param {?error} callback.err - An error returned while making this - * request. - * @param {object} callback.metadata - The zone's metadata. - * @param {object} callback.apiResponse - The full API response. - * - * @example - * const Compute = require('@google-cloud/compute'); - * const compute = new Compute(); - * const zone = compute.zone('us-central1-a'); - * - * zone.getMetadata(function(err, metadata, apiResponse) {}); - * - * //- - * // If the callback is omitted, we'll return a Promise. - * //- - * zone.getMetadata().then(function(data) { - * const metadata = data[0]; - * const apiResponse = data[1]; - * }); - */ - getMetadata: true, - }; - super({ - parent: compute, - baseUrl: '/zones', - /** - * @name Zone#id - * @type {string} - */ - id: name, - methods: methods, - pollIntervalMs: compute.pollIntervalMs, - }); - /** - * The parent {@link Compute} instance of this {@link Zone} instance. - * @name Zone#compute - * @type {Compute} - */ - this.compute = compute; - /** - * @name Zone#name - * @type {string} - */ - this.name = name; - this.gceImages = new GCEImages({ - authClient: compute.authClient, - }); - } - /** - * Get a reference to a Google Compute Engine autoscaler in this zone. - * - * @param {string} name - Name of the autoscaler. - * @returns {Autoscaler} - * - * @example - * const Compute = require('@google-cloud/compute'); - * const compute = new Compute(); - * const zone = compute.zone('us-central1-a'); - * - * const autoscaler = zone.autoscaler('autoscaler-name'); - */ - autoscaler(name) { - return new Autoscaler(this, name); - } - /** - * Create an autoscaler in this zone. - * - * @see [Load Balancing and Scaling]{@link https://cloud.google.com/compute/docs/load-balancing-and-autoscaling} - * @see [Autoscaler Resource]{@link https://cloud.google.com/compute/docs/reference/v1/autoscalers} - * @see [Autoscalers: insert API Documentation]{@link https://cloud.google.com/compute/docs/reference/v1/autoscalers/insert} - * - * @throws {Error} If `config.target` is not provided. - * - * @param {string} name - Name of the autoscaler. - * @param {object} config - See an - * [Autoscaler resource](https://cloud.google.com/compute/docs/reference/v1/autoscalers). - * @param {number} config.coolDown - The number of seconds that the autoscaler - * should wait before it starts collecting information from a new instance. - * Alias for `config.autoscalingPolicy.coolDownPeriodSec`. - * @param {number} config.cpu - The target CPU utilization that the autoscaler - * should maintain, between 1 - 100. Alias for - * `config.autoscalingPolicy.cpuUtilization.utilizationTarget`. - * @param {number} config.loadBalance - Backend capacity utilization that - * autoscaler should maintain, between 1 - 100. Alias for - * `config.autoscalingPolicy.loadBalancingUtilization.utilizationTarget`. - * @param {number} config.maxReplicas - The maximum number of instances that the - * autoscaler can scale up to. Alias for - * `config.autoscalingPolicy.maxNumReplicas`. - * @param {number} config.minReplicas - The minimum number of replicas that the - * autoscaler can scale down to. Alias for - * `config.autoscalingPolicy.minNumReplicas`. - * @param {string} config.target - The name of the managed instance group that - * this autoscaler will scale. - * @param {function} callback - The callback function. - * @param {?error} callback.err - An error returned while making this request. - * @param {Autoscaler} callback.autoscaler - The created - * Autoscaler object. - * @param {Operation} callback.operation - An operation object - * that can be used to check the status of the request. - * @param {object} callback.apiResponse - The full API response. - * - * @example - * const Compute = require('@google-cloud/compute'); - * const compute = new Compute(); - * const zone = compute.zone('us-central1-a'); - * - * const config = { - * coolDown: 30, - * cpu: 80, - * loadBalance: 40, - * maxReplicas: 5, - * minReplicas: 0, - * target: 'instance-group-manager-1' - * }; - * - * function callback(err, autoscaler, operation, apiResponse) { - * // `autoscaler` is an Autoscaler object. - * - * // `operation` is an Operation object that can be used to check the status - * // of the request. - * } - * - * zone.createAutoscaler('name', config, callback); - * - * //- - * // If the callback is omitted, we'll return a Promise. - * //- - * zone.createAutoscaler('name', config).then(function(data) { - * const autoscaler = data[0]; - * const operation = data[1]; - * const apiResponse = data[2]; - * }); - */ - createAutoscaler(name, config, callback) { - const self = this; - if (!config.target) { - throw new Error('Cannot create an autoscaler without a target.'); - } - const json = extend(true, {}, config, { - name: name, - autoscalingPolicy: {}, - }); - if (!/^https*:/.test(json.target)) { - json.target = [ - 'https://content.googleapis.com/compute/v1/projects/', - this.compute.projectId, - '/zones/', - this.name, - '/instanceGroupManagers/', - json.target, - ].join(''); - } - if (is.defined(json.coolDown)) { - json.autoscalingPolicy.coolDownPeriodSec = json.coolDown; - delete json.coolDown; - } - if (is.defined(json.cpu)) { - json.autoscalingPolicy.cpuUtilization = { - utilizationTarget: json.cpu / 100, - }; - delete json.cpu; - } - if (is.defined(json.loadBalance)) { - json.autoscalingPolicy.loadBalancingUtilization = { - utilizationTarget: json.loadBalance / 100, - }; - delete json.loadBalance; - } - if (is.defined(json.maxReplicas)) { - json.autoscalingPolicy.maxNumReplicas = json.maxReplicas; - delete json.maxReplicas; - } - if (is.defined(json.minReplicas)) { - json.autoscalingPolicy.minNumReplicas = json.minReplicas; - delete json.minReplicas; - } - this.request( - { - method: 'POST', - uri: '/autoscalers', - json: json, - }, - (err, resp) => { - if (err) { - callback(err, null, null, resp); - return; - } - const autoscaler = self.autoscaler(name); - const operation = self.operation(resp.name); - operation.metadata = resp; - callback(null, autoscaler, operation, resp); - } - ); - } - /** - * Create a persistent disk in this zone. - * - * @see [Disk Resource]{@link https://cloud.google.com/compute/docs/reference/v1/disks} - * @see [Disks: insert API Documentation]{@link https://cloud.google.com/compute/docs/reference/v1/disks/insert} - * - * @param {string} name - Name of the disk. - * @param {object} config - See a - * [Disk resource](https://cloud.google.com/compute/docs/reference/v1/disks). - * @param {string=} config.os - Specify the name of an OS, and we will use the - * latest version as the source image of a new boot disk. See - * [this list of accepted OS names](https://github.com/stephenplusplus/gce-images#accepted-os-names). - * @param {function} callback - The callback function. - * @param {?error} callback.err - An error returned while making this request. - * @param {Disk} callback.disk - The created Disk object. - * @param {Operation} callback.operation - An operation object - * that can be used to check the status of the request. - * @param {object} callback.apiResponse - The full API response. - * - * @example - * const Compute = require('@google-cloud/compute'); - * const compute = new Compute(); - * const zone = compute.zone('us-central1-a'); - * - * //- - * // Create a persistent disk using the latest Ubuntu version - * // as the source image. - * //- - * const config = { - * os: 'ubuntu', - * sizeGb: 10 - * }; - * - * //- - * // Create a persistent disk using the latest Ubuntu version from your project - * // as the source image. - * //- - * const config = { - * os: 'your-project-id-or-name/ubuntu', - * sizeGb: 10 - * }; - * - * zone.createDisk('name', config, function(err, disk, operation, apiResponse) { - * // `disk` is a Disk object. - * - * // `operation` is an Operation object that can be used to check the status - * // of the request. - * }); - * - * //- - * // If the callback is omitted, we'll return a Promise. - * //- - * zone.createDisk('name', config).then(function(data) { - * const disk = data[0]; - * const operation = data[1]; - * const apiResponse = data[2]; - * }); - */ - createDisk(name, config, callback) { - const self = this; - const query = {}; - const body = Object.assign({}, config, { - name: name, - }); - if (body.image) { - query.sourceImage = body.image; - delete body.image; - } - if (body.os) { - this.gceImages.getLatest(body.os, (err, image) => { - if (err) { - callback(err); - return; - } - delete body.os; - body.sourceImage = image.selfLink; - self.createDisk(name, body, callback); - }); - return; - } - this.request( - { - method: 'POST', - uri: '/disks', - qs: query, - json: body, - }, - (err, resp) => { - if (err) { - callback(err, null, null, resp); - return; - } - const disk = self.disk(name); - const operation = self.operation(resp.name); - operation.metadata = resp; - callback(null, disk, operation, resp); - } - ); - } - /** - * Create an instance group in this zone. - * - * @see [InstanceGroup Resource]{@link https://cloud.google.com/compute/docs/reference/v1/instanceGroups#resource} - * @see [InstanceGroups: insert API Documentation]{@link https://cloud.google.com/compute/docs/reference/v1/instanceGroups/insert} - * - * @param {string} name - Name of the instance group. - * @param {object} options - See an - * [InstanceGroup resource](https://cloud.google.com/compute/docs/reference/v1/instanceGroups#resource). - * @param {object} options.ports - A map of names to ports. The key should be - * the name, and the value the port number. Maps to `options.namedPorts`. - * @param {function} callback - The callback function. - * @param {?error} callback.err - An error returned while making this request. - * @param {InstanceGroup} callback.instanceGroup - The created - * InstanceGroup object. - * @param {Operation} callback.operation - An operation object - * that can be used to check the status of the request. - * @param {object} callback.apiResponse - The full API response. - * - * @example - * const Compute = require('@google-cloud/compute'); - * const compute = new Compute(); - * const zone = compute.zone('us-central1-a'); - * - * function onCreated(err, instanceGroup, operation, apiResponse) { - * // `instanceGroup` is an InstanceGroup object. - * - * // `operation` is an Operation object that can be used to check the status - * // of the request. - * } - * - * zone.createInstanceGroup('instance-group-name', onCreated); - * - * //- - * // If the callback is omitted, we'll return a Promise. - * //- - * zone.createInstanceGroup('instance-group-name', config).then(function(data) { - * const instanceGroup = data[0]; - * const operation = data[1]; - * const apiResponse = data[2]; - * }); - */ - createInstanceGroup(name, options, callback) { - const self = this; - if (is.fn(options)) { - callback = options; - options = {}; - } - const body = Object.assign({}, options, { - name: name, - }); - if (body.ports) { - body.namedPorts = InstanceGroup.formatPorts_(body.ports); - delete body.ports; - } - this.request( - { - method: 'POST', - uri: '/instanceGroups', - json: body, - }, - (err, resp) => { - if (err) { - callback(err, null, null, resp); - return; - } - const instanceGroup = self.instanceGroup(name); - const operation = self.operation(resp.name); - operation.metadata = resp; - callback(null, instanceGroup, operation, resp); - } - ); - } - /** - * Create a virtual machine in this zone. - * - * @see [Instance Resource]{@link https://cloud.google.com/compute/docs/reference/v1/instances} - * @see [Instances: insert API Documentation]{@link https://cloud.google.com/compute/docs/reference/v1/instances/insert} - * - * @param {string} name - Name of the instance. - * @param {object} config - See an - * [Instance resource](https://cloud.google.com/compute/docs/reference/v1/instances). - * @param {?object[]} config.disks - See - * [disks object](https://cloud.google.com/compute/docs/reference/rest/v1/instances/insert). - * @param {boolean=} config.http - Allow HTTP traffic. Default: `false` - * @param {boolean=} config.https - Allow HTTPS traffic. Default: `false` - * @param {?object[]} config.networkInterfaces - An array of configurations for - * this interface. This specifies how this interface should interact with - * other network services, such as connecting to the internet. Default: - * `[ { network: 'global/networks/default' } ]` - * @param {string=} config.machineType - The machine type resource to use. - * Provide only the name of the machine, e.g. `n1-standard-16`. Refer to - * [Available Machine Types](https://goo.gl/jrHEbo). Default: - * `n1-standard-1` - * @param {string=} config.os - Specify the name of an OS, and we will use the - * latest version as the source image of a new boot disk. See - * [this list of accepted OS names](https://github.com/stephenplusplus/gce-images#accepted-os-names). - * @param {?string[]} config.tags - An array of tags. - * @param {function} callback - The callback function. - * @param {?error} callback.err - An error returned while making this request. - * @param {VM} callback.vm - The created VM object. - * @param {Operation} callback.operation - An operation object - * that can be used to check the status of the request. - * @param {object} callback.apiResponse - The full API response. - * - * @example - * const Compute = require('@google-cloud/compute'); - * const compute = new Compute(); - * const zone = compute.zone('us-central1-a'); - * - * //- - * // Create a new instance using the latest Debian version from your project - * // as the source image for a new boot disk. - * //- - * const config = { - * os: 'your-project-id-or-name/debian', - * http: true, - * tags: ['debian-server'] - * }; - * - * //- - * // Create a new instance using the latest Debian version as the source image - * // for a new boot disk. - * //- - * const config = { - * os: 'debian', - * http: true, - * tags: ['debian-server'] - * }; - * - * //- - * // The above object will auto-expand behind the scenes to something like the - * // following. The Debian version may be different when you run the command. - * //- - * const config = { - * machineType: 'n1-standard-1', - * disks: [ - * { - * boot: true, - * initializeParams: { - * sourceImage: - * 'https://www.googleapis.com/compute/v1/projects' + - * '/debian-cloud/global/images/debian-7-wheezy-v20150710' - * } - * } - * ], - * networkInterfaces: [ - * { - * network: 'global/networks/default' - * } - * ], - * tags: [ - * { - * items: [ - * 'debian-server', - * 'http-server' - * ] - * } - * ] - * }; - * - * function callback(err, vm, operation, apiResponse) { - * // `vm` is a VM object. - * - * // `operation` is an Operation object that can be used to check the status - * // of the request. - * } - * - * zone.createVM('new-vm-name', config, callback); - * - * //- - * // If the callback is omitted, we'll return a Promise. - * //- - * zone.createVM('new-vm-name', config).then(function(data) { - * const vm = data[0]; - * const operation = data[1]; - * const apiResponse = data[2]; - * }); - */ - createVM(name, config, callback) { - const self = this; - const query = {}; - const body = Object.assign({name}, config); - if (body.template) { - query.sourceInstanceTemplate = body.template; - delete body.template; - } - if (!is.defined(query.sourceInstanceTemplate)) { - body.machineType = body.machineType || 'n1-standard-1'; - body.networkInterfaces = body.networkInterfaces || [ - {network: 'global/networks/default'}, - ]; - } - if (body.machineType && body.machineType.indexOf('/') === -1) { - // The specified machineType is only a partial name, e.g. 'n1-standard-1'. - body.machineType = format('zones/{zoneName}/machineTypes/{machineType}', { - zoneName: this.name, - machineType: body.machineType, - }); - } - if (is.array(body.tags)) { - body.tags = { - items: body.tags, - }; - } - if (body.http || body.https) { - // We will add tags to the created instance (http-server and/or - // https-server), and create the appropriate firewall rules to allow - // connections on the necessary ports to these tags. - const createFirewallMethods = []; - body.networkInterfaces[0].accessConfigs = [ - { - type: 'ONE_TO_ONE_NAT', - }, - ]; - body.tags = body.tags || {}; - body.tags.items = body.tags.items || []; - if (body.http) { - delete body.http; - createFirewallMethods.push(this.createHttpServerFirewall_.bind(this)); - if (body.tags.items.indexOf('http-server') === -1) { - body.tags.items.push('http-server'); - } - } - if (body.https) { - delete body.https; - createFirewallMethods.push(this.createHttpsServerFirewall_.bind(this)); - if (body.tags.items.indexOf('https-server') === -1) { - body.tags.items.push('https-server'); - } - } - // We have to make sure the firewall rules exist to allow HTTP/S traffic. - async.parallel(createFirewallMethods, err => { - if (err) { - callback(err); - return; - } - self.createVM(name, body, callback); - }); - return; - } - if (body.os) { - this.gceImages.getLatest(body.os, (err, image) => { - if (err) { - callback(err); - return; - } - delete body.os; - body.disks = body.disks || []; - body.disks.push({ - autoDelete: true, - boot: true, - initializeParams: { - sourceImage: image.selfLink, - }, - }); - self.createVM(name, body, callback); - }); - return; - } - this.request( - { - method: 'POST', - uri: '/instances', - qs: query, - json: body, - }, - (err, resp) => { - if (err) { - callback(err, null, null, resp); - return; - } - const vm = self.vm(name); - const operation = self.operation(resp.name); - operation.metadata = resp; - callback(null, vm, operation, resp); - } - ); - } - /** - * Get a reference to a Google Compute Engine disk in this zone. - * - * @see [Disks Overview]{@link https://cloud.google.com/compute/docs/disks} - * - * @param {string} name - Name of the disk. - * @returns {Disk} - * - * @example - * const Compute = require('@google-cloud/compute'); - * const compute = new Compute(); - * const zone = compute.zone('us-central1-a'); - * - * const disk = zone.disk('disk1'); - */ - disk(name) { - return new Disk(this, name); - } - /** - * Get a list of autoscalers from this zone. - * - * @see [Managing Autoscalers]{@link https://cloud.google.com/compute/docs/autoscaler/managing-autoscalers} - * @see [Understanding Autoscaler Decisions]{@link https://cloud.google.com/compute/docs/autoscaler/understanding-autoscaler-decisions} - * @see [Autoscalers: aggregatedList API Documentation]{@link https://cloud.google.com/compute/docs/reference/v1/autoscalers/list} - * - * @param {object=} options - Autoscaler search options. - * @param {boolean} options.autoPaginate - Have pagination handled - * automatically. Default: true. - * @param {string} options.filter - Search filter in the format of - * `{name} {comparison} {filterString}`. - * - **`name`**: the name of the field to compare - * - **`comparison`**: the comparison operator, `eq` (equal) or `ne` - * (not equal) - * - **`filterString`**: the string to filter to. For string fields, this - * can be a regular expression. - * @param {number} options.maxApiCalls - Maximum number of API calls to make. - * @param {number} options.maxResults - Maximum number of autoscalers to return. - * @param {string} options.pageToken - A previously-returned page token - * representing part of the larger set of results to view. - * @param {function} callback - The callback function. - * @param {?error} callback.err - An error returned while making this request. - * @param {Autoscaler[]} callback.autoscalers - Autoscaler - * objects from your project. - * @param {object} callback.apiResponse - The full API response. - * - * @example - * const Compute = require('@google-cloud/compute'); - * const compute = new Compute(); - * const zone = compute.zone('us-central1-a'); - * - * zone.getAutoscalers(function(err, autoscalers) { - * // autoscalers is an array of `Autoscaler` objects. - * }); - * - * //- - * // To control how many API requests are made and page through the results - * // manually, set `autoPaginate` to `false`. - * //- - * function callback(err, autoscalers, nextQuery, apiResponse) { - * if (nextQuery) { - * // More results exist. - * zone.getAutoscalers(nextQuery, callback); - * } - * } - * - * zone.getAutoscalers({ - * autoPaginate: false - * }, callback); - * - * //- - * // If the callback is omitted, we'll return a Promise. - * //- - * zone.getAutoscalers().then(function(data) { - * const autoscalers = data[0]; - * }); - */ - getAutoscalers(options, callback) { - const self = this; - if (is.fn(options)) { - callback = options; - options = {}; - } - options = options || {}; - this.request( - { - uri: '/autoscalers', - qs: options, - }, - (err, resp) => { - if (err) { - callback(err, null, null, resp); - return; - } - let nextQuery = null; - if (resp.nextPageToken) { - nextQuery = Object.assign({}, options, { - pageToken: resp.nextPageToken, - }); - } - const autoscalers = arrify(resp.items).map(autoscaler => { - const autoscalerInstance = self.autoscaler(autoscaler.name); - autoscalerInstance.metadata = autoscaler; - return autoscalerInstance; - }); - callback(null, autoscalers, nextQuery, resp); - } - ); - } - /** - * Get a list of disks in this zone. - * - * @see [Disks Overview]{@link https://cloud.google.com/compute/docs/disks} - * @see [Disks: list API Documentation]{@link https://cloud.google.com/compute/docs/reference/v1/disks/list} - * - * @param {object=} options - Disk search options. - * @param {boolean} options.autoPaginate - Have pagination handled - * automatically. Default: true. - * @param {string} options.filter - Search filter in the format of - * `{name} {comparison} {filterString}`. - * - **`name`**: the name of the field to compare - * - **`comparison`**: the comparison operator, `eq` (equal) or `ne` - * (not equal) - * - **`filterString`**: the string to filter to. For string fields, this - * can be a regular expression. - * @param {number} options.maxApiCalls - Maximum number of API calls to make. - * @param {number} options.maxResults - Maximum number of disks to return. - * @param {string} options.pageToken - A previously-returned page token - * representing part of the larger set of results to view. - * @param {function} callback - The callback function. - * @param {?error} callback.err - An error returned while making this request. - * @param {Disk[]} callback.disks - Disk objects from this zone. - * @param {object} callback.apiResponse - The full API response. - * - * @example - * const Compute = require('@google-cloud/compute'); - * const compute = new Compute(); - * const zone = compute.zone('us-central1-a'); - * - * zone.getDisks(function(err, disks) { - * // `disks` is an array of `Disk` objects. - * }); - * - * //- - * // To control how many API requests are made and page through the results - * // manually, set `autoPaginate` to `false`. - * //- - * function callback(err, disks, nextQuery, apiResponse) { - * if (nextQuery) { - * // More results exist. - * zone.getDisks(nextQuery, callback); - * } - * } - * - * zone.getDisks({ - * autoPaginate: false - * }, callback); - * - * //- - * // If the callback is omitted, we'll return a Promise. - * //- - * zone.getDisks().then(function(data) { - * const disks = data[0]; - * }); - */ - getDisks(options, callback) { - const self = this; - if (is.fn(options)) { - callback = options; - options = {}; - } - options = options || {}; - this.request( - { - uri: '/disks', - qs: options, - }, - (err, resp) => { - if (err) { - callback(err, null, null, resp); - return; - } - let nextQuery = null; - if (resp.nextPageToken) { - nextQuery = Object.assign({}, options, { - pageToken: resp.nextPageToken, - }); - } - const disks = (resp.items || []).map(disk => { - const diskInstance = self.disk(disk.name); - diskInstance.metadata = disk; - return diskInstance; - }); - callback(null, disks, nextQuery, resp); - } - ); - } - /** - * Get a list of instance groups for this zone. - * - * @see [InstanceGroups Overview]{@link https://cloud.google.com/compute/docs/reference/v1/instanceGroups} - * @see [InstanceGroups: list API Documentation]{@link https://cloud.google.com/compute/docs/reference/v1/instanceGroups/list} - * - * @param {object=} options - Instance group search options. - * @param {boolean} options.autoPaginate - Have pagination handled - * automatically. Default: true. - * @param {string} options.filter - Search filter in the format of - * `{name} {comparison} {filterString}`. - * - **`name`**: the name of the field to compare - * - **`comparison`**: the comparison operator, `eq` (equal) or `ne` - * (not equal) - * - **`filterString`**: the string to filter to. For string fields, this - * can be a regular expression. - * @param {number} options.maxApiCalls - Maximum number of API calls to make. - * @param {number} options.maxResults - Maximum number of instance groups to - * return. - * @param {string} options.pageToken - A previously-returned page token - * representing part of the larger set of results to view. - * @param {function} callback - The callback function. - * @param {?error} callback.err - An error returned while making this request. - * @param {InstanceGroup[]} callback.instanceGroups - - * InstanceGroup objects from this zone. - * @param {object} callback.apiResponse - The full API response. - * - * @example - * const Compute = require('@google-cloud/compute'); - * const compute = new Compute(); - * const zone = compute.zone('us-central1-a'); - * - * zone.getInstanceGroups(function(err, instanceGroups) { - * // `instanceGroups` is an array of `InstanceGroup` objects. - * }); - * - * //- - * // To control how many API requests are made and page through the results - * // manually, set `autoPaginate` to `false`. - * //- - * function callback(err, instanceGroups, nextQuery, apiResponse) { - * if (nextQuery) { - * // More results exist. - * zone.getInstanceGroups(nextQuery, callback); - * } - * } - * - * zone.getInstanceGroups({ - * autoPaginate: false - * }, callback); - * - * //- - * // If the callback is omitted, we'll return a Promise. - * //- - * zone.getInstanceGroups().then(function(data) { - * const instanceGroups = data[0]; - * }); - */ - getInstanceGroups(options, callback) { - const self = this; - if (is.fn(options)) { - callback = options; - options = {}; - } - options = options || {}; - this.request( - { - uri: '/instanceGroups', - qs: options, - }, - (err, resp) => { - if (err) { - callback(err, null, null, resp); - return; - } - let nextQuery = null; - if (resp.nextPageToken) { - nextQuery = Object.assign({}, options, { - pageToken: resp.nextPageToken, - }); - } - const instanceGroups = (resp.items || []).map(instanceGroup => { - const instanceGroupInstance = self.instanceGroup(instanceGroup.name); - instanceGroupInstance.metadata = instanceGroup; - return instanceGroupInstance; - }); - callback(null, instanceGroups, nextQuery, resp); - } - ); - } - /** - * Get a list of instance group managers for this zone. - * - * @see [InstanceGroupManagers Overview]{@link https://cloud.google.com/compute/docs/reference/v1/instanceGroupManagers} - * @see [InstanceGroupManagers: list API Documentation]{@link https://cloud.google.com/compute/docs/reference/v1/instanceGroupManagers/list} - * - * @param {object=} options - Instance group manager search options. - * @param {boolean} options.autoPaginate - Have pagination handled - * automatically. Default: true. - * @param {string} options.filter - Search filter in the format of - * `{name} {comparison} {filterString}`. - * - **`name`**: the name of the field to compare - * - **`comparison`**: the comparison operator, `eq` (equal) or `ne` - * (not equal) - * - **`filterString`**: the string to filter to. For string fields, this - * can be a regular expression. - * @param {number} options.maxApiCalls - Maximum number of API calls to make. - * @param {number} options.maxResults - Maximum number of instance groups to - * return. - * @param {string} options.pageToken - A previously-returned page token - * representing part of the larger set of results to view. - * @param {function} callback - The callback function. - * @param {?error} callback.err - An error returned while making this request. - * @param {InstanceGroupManager[]} callback.instanceGroupManagers - - * InstanceGroupManager objects from this zone. - * @param {object} callback.apiResponse - The full API response. - * - * @example - * const Compute = require('@google-cloud/compute'); - * const compute = new Compute(); - * const zone = compute.zone('us-central1-a'); - * - * zone.getInstanceGroupManagers(function(err, instanceGroupManagers) { - * // `instanceGroupManagers` is an array of `InstanceGroupManager` objects. - * }); - * - * //- - * // To control how many API requests are made and page through the results - * // manually, set `autoPaginate` to `false`. - * //- - * function callback(err, instanceGroupManagers, nextQuery, apiResponse) { - * if (nextQuery) { - * // More results exist. - * zone.getInstanceGroupManagers(nextQuery, callback); - * } - * } - * - * zone.getInstanceGroupManagers({ - * autoPaginate: false - * }, callback); - * - * //- - * // If the callback is omitted, we'll return a Promise. - * //- - * zone.getInstanceGroupManagers().then(function(data) { - * const instanceGroupManagerss = data[0]; - * }); - */ - getInstanceGroupManagers(options, callback) { - const self = this; - if (is.fn(options)) { - callback = options; - options = {}; - } - options = options || {}; - this.request( - { - uri: '/instanceGroupManagers', - qs: options, - }, - (err, resp) => { - if (err) { - callback(err, null, null, resp); - return; - } - let nextQuery = null; - if (resp.nextPageToken) { - nextQuery = Object.assign({}, options, { - pageToken: resp.nextPageToken, - }); - } - const instanceGroupManagers = (resp.items || []).map( - instanceGroupManager => { - const instanceGroupManagerInstance = self.instanceGroupManager( - instanceGroupManager.name - ); - instanceGroupManagerInstance.metadata = instanceGroupManager; - return instanceGroupManagerInstance; - } - ); - callback(null, instanceGroupManagers, nextQuery, resp); - } - ); - } - /** - * Get a list of machine types for this zone. - * - * @see [MachineTypes: list API Documentation]{@link https://cloud.google.com/compute/docs/reference/v1/machineTypes/list} - * @see [Machine Types Overview]{@link https://cloud.google.com/compute/docs/machine-types} - * @see [MachineType Resource]{@link https://cloud.google.com/compute/docs/reference/v1/machineTypes} - * - * @param {object=} options - Machine type search options. - * @param {boolean} options.autoPaginate - Have pagination handled - * automatically. Default: true. - * @param {number} options.maxApiCalls - Maximum number of API calls to make. - * @param {number} options.maxResults - Maximum number of machineTypes - * to return. - * @param {string} options.pageToken - A previously-returned page token - * representing part of the larger set of results to view. - * @param {function} callback - The callback function. - * @param {?error} callback.err - An error returned while making this request. - * @param {MachineType[]} callback.machineTypes - MachineType - * objects from this zone. - * @param {object} callback.apiResponse - The full API response. - * - * @example - * const Compute = require('@google-cloud/compute'); - * const compute = new Compute(); - * const zone = compute.zone('us-central1-a'); - * - * zone.getMachineTypes(function(err, machineTypes) { - * // `machineTypes` is an array of `MachineType` objects. - * }); - * - * //- - * // To control how many API requests are made and page through the results - * // manually, set `autoPaginate` to `false`. - * //- - * function callback(err, machineTypes, nextQuery, apiResponse) { - * if (nextQuery) { - * // More results exist. - * zone.getMachineTypes(nextQuery, callback); - * } - * } - * - * zone.getMachineTypes({ - * autoPaginate: false - * }, callback); - * - * //- - * // If the callback is omitted, we'll return a Promise. - * //- - * zone.getMachineTypes().then(function(data) { - * const machineTypes = data[0]; - * }); - */ - getMachineTypes(options, callback) { - if (is.fn(options)) { - callback = options; - options = {}; - } - options = Object.assign({}, options, { - filter: 'zone eq .*' + this.name, - }); - return this.compute.getMachineTypes(options, callback); - } - /** - * Get a list of operations for this zone. - * - * @see [Zone Operation Overview]{@link https://cloud.google.com/compute/docs/reference/v1/zoneOperations} - * @see [ZoneOperations: list API Documentation]{@link https://cloud.google.com/compute/docs/reference/v1/zoneOperations/list} - * - * @param {object=} options - Operation search options. - * @param {boolean} options.autoPaginate - Have pagination handled - * automatically. Default: true. - * @param {string} options.filter - Search filter in the format of - * `{name} {comparison} {filterString}`. - * - **`name`**: the name of the field to compare - * - **`comparison`**: the comparison operator, `eq` (equal) or `ne` - * (not equal) - * - **`filterString`**: the string to filter to. For string fields, this - * can be a regular expression. - * @param {number} options.maxApiCalls - Maximum number of API calls to make. - * @param {number} options.maxResults - Maximum number of operations to return. - * @param {string} options.pageToken - A previously-returned page token - * representing part of the larger set of results to view. - * @param {function} callback - The callback function. - * @param {?error} callback.err - An error returned while making this request. - * @param {Operation[]} callback.operations - Operation objects - * from this zone. - * @param {object} callback.apiResponse - The full API response. - * - * @example - * const Compute = require('@google-cloud/compute'); - * const compute = new Compute(); - * const zone = compute.zone('us-central1-a'); - * - * zone.getOperations(function(err, operations) { - * // `operations` is an array of `Operation` objects. - * }); - * - * //- - * // To control how many API requests are made and page through the results - * // manually, set `autoPaginate` to `false`. - * //- - * function callback(err, operations, nextQuery, apiResponse) { - * if (nextQuery) { - * // More results exist. - * zone.getOperations(nextQuery, callback); - * } - * } - * - * zone.getOperations({ - * autoPaginate: false - * }, callback); - * - * //- - * // If the callback is omitted, we'll return a Promise. - * //- - * zone.getOperations().then(function(data) { - * const operations = data[0]; - * }); - */ - getOperations(options, callback) { - const self = this; - if (is.fn(options)) { - callback = options; - options = {}; - } - options = options || {}; - this.request( - { - uri: '/operations', - qs: options, - }, - (err, resp) => { - if (err) { - callback(err, null, null, resp); - return; - } - let nextQuery = null; - if (resp.nextPageToken) { - nextQuery = Object.assign({}, options, { - pageToken: resp.nextPageToken, - }); - } - const operations = (resp.items || []).map(operation => { - const operationInstance = self.operation(operation.name); - operationInstance.metadata = operation; - return operationInstance; - }); - callback(null, operations, nextQuery, resp); - } - ); - } - /** - * Get a list of VM instances in this zone. - * - * @see [Instances and Networks]{@link https://cloud.google.com/compute/docs/instances-and-network} - * @see [Instances: list API Documentation]{@link https://cloud.google.com/compute/docs/reference/v1/instances/list} - * - * @param {object=} options - Instance search options. - * @param {boolean} options.autoPaginate - Have pagination handled - * automatically. Default: true. - * @param {string} options.filter - Search filter in the format of - * `{name} {comparison} {filterString}`. - * - **`name`**: the name of the field to compare - * - **`comparison`**: the comparison operator, `eq` (equal) or `ne` - * (not equal) - * - **`filterString`**: the string to filter to. For string fields, this - * can be a regular expression. - * @param {string} options.pageToken - A previously-returned page token - * representing part of the larger set of results to view. - * @param {function} callback - The callback function. - * @param {?error} callback.err - An error returned while making this request. - * @param {VM[]} callback.vms - VM objects from this zone. - * @param {object} callback.apiResponse - The full API response. - * - * @example - * const Compute = require('@google-cloud/compute'); - * const compute = new Compute(); - * const zone = compute.zone('us-central1-a'); - * - * zone.getVMs(function(err, vms) { - * // `vms` is an array of `VM` objects. - * }); - * - * //- - * // To control how many API requests are made and page through the results - * // manually, set `autoPaginate` to `false`. - * //- - * function callback(err, vms, nextQuery, apiResponse) { - * if (nextQuery) { - * // More results exist. - * zone.getVMs(nextQuery, callback); - * } - * } - * - * zone.getVMs({ - * autoPaginate: false - * }, callback); - * - * //- - * // If the callback is omitted, we'll return a Promise. - * //- - * zone.getVMs().then(function(data) { - * const vms = data[0]; - * }); - */ - getVMs(options, callback) { - const self = this; - if (is.fn(options)) { - callback = options; - options = {}; - } - options = options || {}; - this.request( - { - uri: '/instances', - qs: options, - }, - (err, resp) => { - if (err) { - callback(err, null, null, resp); - return; - } - let nextQuery = null; - if (resp.nextPageToken) { - nextQuery = Object.assign({}, options, { - pageToken: resp.nextPageToken, - }); - } - const vms = (resp.items || []).map(instance => { - const vmInstance = self.vm(instance.name); - vmInstance.metadata = instance; - return vmInstance; - }); - callback(null, vms, nextQuery, resp); - } - ); - } - /** - * Get a reference to a Google Compute Engine instance group. - * - * @see [InstanceGroups Overview]{@link https://cloud.google.com/compute/docs/reference/v1/instanceGroups} - * - * @param {string} name - Name of the existing instance group. - * @returns {InstanceGroup} - * - * @example - * const Compute = require('@google-cloud/compute'); - * const compute = new Compute(); - * const zone = compute.zone('us-central1-a'); - * - * const instanceGroup = zone.instanceGroup('my-instance-group'); - */ - instanceGroup(name) { - return new InstanceGroup(this, name); - } - /** - * Get a reference to a Google Compute Engine instance group manager. - * - * @see [InstanceGroupManagers Overview]{@link https://cloud.google.com/compute/docs/reference/v1/instanceGroupManagers} - * - * @param {string} name - Name of the existing instance group manager. - * @returns {InstanceGroupManager} - * - * @example - * const Compute = require('@google-cloud/compute'); - * const compute = new Compute(); - * const zone = compute.zone('us-central1-a'); - * - * const instanceGroupManager = zone.instanceGroupManager('my-instance-group-manager'); - */ - instanceGroupManager(name) { - return new InstanceGroupManager(this, name); - } - /** - * Get a reference to a Google Compute Engine machine type. - * - * @see [Machine Types Overview]{@link https://cloud.google.com/compute/docs/machine-types} - * @see [MachineType Resource]{@link https://cloud.google.com/compute/docs/reference/v1/machineTypes} - * - * @param {string} name - Name of the existing machine type. - * @returns {MachineType} - * - * @example - * const Compute = require('@google-cloud/compute'); - * const compute = new Compute(); - * const zone = compute.zone('us-central1-a'); - * - * const machineType = zone.machineType('g1-small'); - */ - machineType(name) { - return new MachineType(this, name); - } - /** - * Get a reference to a Google Compute Engine zone operation. - * - * @see [Zone Operation Overview]{@link https://cloud.google.com/compute/docs/reference/v1/zoneOperations} - * - * @param {string} name - Name of the existing operation. - * @returns {Operation} - * - * @example - * const Compute = require('@google-cloud/compute'); - * const compute = new Compute(); - * const zone = compute.zone('us-central1-a'); - * - * const operation = zone.operation('operation-1445532685163-8b137d2a-1822afe7'); - */ - operation(name) { - return new Operation(this, name); - } - /** - * Get a reference to a Google Compute Engine virtual machine instance. - * - * @see [Instances and Networks]{@link https://cloud.google.com/compute/docs/instances-and-network} - * - * @param {string} name - Name of the virtual machine. - * @returns {VM} - * - * @example - * const Compute = require('@google-cloud/compute'); - * const compute = new Compute(); - * const zone = compute.zone('us-central1-a'); - * - * const vm = zone.vm('vm-name'); - */ - vm(name) { - return new VM(this, name); - } - /** - * This method attempts to create a firewall rule to allow tcp:80 connections. - * - * @private - * - * @param {function} callback - The callback function. - * @param {?error} callback.err - If the firewall couldn't be created and it - * didn't already exist. - */ - createHttpServerFirewall_(callback) { - this.compute.createFirewall( - 'default-allow-http', - { - protocols: { - tcp: [80], - }, - ranges: ['0.0.0.0/0'], - tags: ['http-server'], - }, - err => { - // If it already exists, we're all good. - callback(err && err.code !== 409 ? err : null); - } - ); - } - /** - * This method attempts to create a firewall rule to allow tcp:443 connections. - * - * @private - * - * @param {function} callback - The callback function. - * @param {?error} callback.err - If the firewall couldn't be created and it - * didn't already exist. - */ - createHttpsServerFirewall_(callback) { - this.compute.createFirewall( - 'default-allow-https', - { - protocols: { - tcp: [443], - }, - ranges: ['0.0.0.0/0'], - tags: ['https-server'], - }, - err => { - // If it already exists, we're all good. - callback(err && err.code !== 409 ? err : null); - } - ); - } -} - -/** - * Get a list of {@link Autoscaler} objects from this zone as a - * readable object stream. - * - * @param {object=} options - Configuration object. See - * {@link Zone#getAutoscalers} for a complete list of options. - * @returns {stream} - * - * @example - * const Compute = require('@google-cloud/compute'); - * const compute = new Compute(); - * const zone = compute.zone('us-central1-a'); - * - * zone.getAutoscalersStream() - * .on('error', console.error) - * .on('data', function(autoscaler) { - * // `autoscaler` is an `Autoscaler` object. - * }) - * .on('end', function() { - * // All autoscalers retrieved. - * }); - * - * //- - * // If you anticipate many results, you can end a stream early to prevent - * // unnecessary processing and API requests. - * //- - * zone.getAutoscalersStream() - * .on('data', function(autoscaler) { - * this.end(); - * }); - */ -Zone.prototype.getAutoscalersStream = paginator.streamify('getAutoscalers'); - -/** - * Get a list of {@link Disk} objects in this zone as a readable object - * stream. - * - * @param {object=} options - Configuration object. See - * {@link Zone#getDisks} for a complete list of options. - * @returns {stream} - * - * @example - * const Compute = require('@google-cloud/compute'); - * const compute = new Compute(); - * const zone = compute.zone('us-central1-a'); - * - * zone.getDisksStream() - * .on('error', console.error) - * .on('data', function(disk) { - * // `disk` is a `Disk` object. - * }) - * .on('end', function() { - * // All disks retrieved. - * }); - * - * //- - * // If you anticipate many results, you can end a stream early to prevent - * // unnecessary processing and API requests. - * //- - * zone.getDisksStream() - * .on('data', function(disk) { - * this.end(); - * }); - */ -Zone.prototype.getDisksStream = paginator.streamify('getDisks'); - -/** - * Get a list of {@link InstanceGroup} objects for this zone as a - * readable object stream. - * - * @param {object=} options - Configuration object. See - * {@link Zone#getInstanceGroups} for a complete list of options. - * @returns {stream} - * - * @example - * const Compute = require('@google-cloud/compute'); - * const compute = new Compute(); - * const zone = compute.zone('us-central1-a'); - * - * zone.getInstanceGroupsStream() - * .on('error', console.error) - * .on('data', function(instanceGroup) { - * // `instanceGroup` is an `InstanceGroup` object. - * }) - * .on('end', function() { - * // All instance groups retrieved. - * }); - * - * //- - * // If you anticipate many results, you can end a stream early to prevent - * // unnecessary processing and API requests. - * //- - * zone.getInstanceGroupsStream() - * .on('data', function(instanceGroup) { - * this.end(); - * }); - */ -Zone.prototype.getInstanceGroupsStream = paginator.streamify( - 'getInstanceGroups' -); - -/** - * Get a list of {@link MachineType} objects for this zone as a - * readable object stream. - * - * @param {object=} options - Configuration object. See - * {@link Zone#getMachineTypes} for a complete list of options. - * @returns {stream} - * - * @example - * const Compute = require('@google-cloud/compute'); - * const compute = new Compute(); - * const zone = compute.zone('us-central1-a'); - * - * zone.getMachineTypesStream() - * .on('error', console.error) - * .on('data', function(machineType) { - * // `machineType` is a `MachineType` object. - * }) - * .on('end', function() { - * // All machine types retrieved. - * }); - * - * //- - * // If you anticipate many results, you can end a stream early to prevent - * // unnecessary processing and API requests. - * //- - * zone.getMachineTypesStream() - * .on('data', function(machineType) { - * this.end(); - * }); - */ -Zone.prototype.getMachineTypesStream = paginator.streamify('getMachineTypes'); - -/** - * Get a list of {@link Operation} objects for this zone as a readable - * object stream. - * - * @param {object=} options - Configuration object. See - * {@link Zone#getOperations} for a complete list of options. - * @returns {stream} - * - * @example - * const Compute = require('@google-cloud/compute'); - * const compute = new Compute(); - * const zone = compute.zone('us-central1-a'); - * - * zone.getOperationsStream() - * .on('error', console.error) - * .on('data', function(operation) { - * // `operation` is an `Operation` object. - * }) - * .on('end', function() { - * // All operations retrieved. - * }); - * - * //- - * // If you anticipate many results, you can end a stream early to prevent - * // unnecessary processing and API requests. - * //- - * zone.getOperationsStream() - * .on('data', function(operation) { - * this.end(); - * }); - */ -Zone.prototype.getOperationsStream = paginator.streamify('getOperations'); - -/** - * Get a list of {@link VM} instances in this zone as a readable object - * stream. - * - * @param {object=} options - Configuration object. See - * {@link Zone#getVMs} for a complete list of options. - * @returns {stream} - * - * @example - * const Compute = require('@google-cloud/compute'); - * const compute = new Compute(); - * const zone = compute.zone('us-central1-a'); - * - * zone.getVMsStream() - * .on('error', console.error) - * .on('data', function(vm) { - * // `vm` is a `VM` object. - * }) - * .on('end', function() { - * // All instances retrieved. - * }); - * - * //- - * // If you anticipate many results, you can end a stream early to prevent - * // unnecessary processing and API requests. - * //- - * zone.getVMsStream() - * .on('data', function(vm) { - * this.end(); - * }); - */ -Zone.prototype.getVMsStream = paginator.streamify('getVMs'); - -/*! Developer Documentation - * - * These methods can be auto-paginated. - */ -paginator.extend(Zone, [ - 'getAutoscalers', - 'getDisks', - 'getInstanceGroups', - 'getInstanceGroupManagers', - 'getMachineTypes', - 'getOperations', - 'getVMs', -]); - -/*! Developer Documentation - * - * All async methods (except for streams) will return a Promise in the event - * that a callback is omitted. - */ -promisifyAll(Zone, { - exclude: [ - 'autoscaler', - 'disk', - 'instanceGroup', - 'instanceGroupManager', - 'machineType', - 'operation', - 'vm', - ], -}); - -/** - * Reference to the {@link Zone} class. - * @name module:@google-cloud/compute.Zone - * @see Zone - */ -module.exports = Zone; diff --git a/synth.metadata b/synth.metadata new file mode 100644 index 00000000..29f8847b --- /dev/null +++ b/synth.metadata @@ -0,0 +1,36 @@ +{ + "sources": [ + { + "git": { + "name": ".", + "remote": "git@github.com:googleapis/nodejs-compute.git", + "sha": "5a163c2d9f861f8c36c18caad02c2d6ff84fea8c" + } + }, + { + "git": { + "name": "googleapis-discovery", + "remote": "https://github.com/googleapis/googleapis-discovery.git", + "sha": "ed8fe29ede4a8c5117c955bf0972e6b751800e41" + } + }, + { + "git": { + "name": "synthtool", + "remote": "https://github.com/googleapis/synthtool.git", + "sha": "16ec872dd898d7de6e1822badfac32484b5d9031" + } + } + ], + "destinations": [ + { + "client": { + "source": "googleapis-discovery", + "apiName": "compute", + "apiVersion": "v1", + "language": "nodejs", + "generator": "bazel" + } + } + ] +} \ No newline at end of file diff --git a/synth.py b/synth.py new file mode 100644 index 00000000..d315d0ec --- /dev/null +++ b/synth.py @@ -0,0 +1,45 @@ +# Copyright 2020 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""This script is used to synthesize generated parts of this library.""" + +import synthtool as s +import synthtool.gcp as gcp +import synthtool.languages.node as node +import logging + +logging.basicConfig(level=logging.DEBUG) + +AUTOSYNTH_MULTIPLE_COMMITS = True + + +gapic = gcp.GAPICBazel() +common_templates = gcp.CommonTemplates() + +versions = ['v1'] +name = 'compute' + +for version in versions: + library = gapic.node_library(name, version, diregapic=True) + + # skip index, protos, package.json, and README.md + s.copy( + library, + excludes=['package.json', 'src/index.ts', 'linkinator.config.json'] + ) + +templates = common_templates.node_library(source_location='build/src') +s.copy(templates, excludes=['linkinator.config.json']) + +node.postprocess_gapic_library() diff --git a/test/run.ts b/test/run.ts new file mode 100644 index 00000000..58fce557 --- /dev/null +++ b/test/run.ts @@ -0,0 +1,70 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// Simple test runner for unit tests - there are so many generated unit tests +// they don't fit into one mocha invocation + +import {readdir} from 'fs'; +import {join} from 'path'; +import {spawn} from 'child_process'; +import {promisify} from 'util'; +const readdirp = promisify(readdir); + +function spawnp(command: string, parameters: string[]) { + return new Promise((resolve, reject) => { + const proc = spawn(command, parameters, { + stdio: ['inherit', 'inherit', 'inherit'], + }); + proc.on('exit', code => { + if (code === 0) { + resolve(); + } + reject(); + }); + }); +} + +const testDir = join('.', 'build', 'test'); +const runCommand = 'node'; +const runParameters = ['./node_modules/mocha/bin/mocha']; +const batchSize = 2; + +async function runBatch(batch: string[]) { + const parameters = [...runParameters, ...batch]; + console.log(`${runCommand} ${parameters.join(' ')}`); + await spawnp(runCommand, parameters); +} + +async function main() { + const files = await readdirp(testDir); + const jsFiles = files.filter(fn => fn.match(/^gapic_.*\.js$/)); + + const batch: string[] = []; + for (const file of jsFiles) { + batch.push(join(testDir, file)); + if (batch.length >= batchSize) { + await runBatch(batch); + batch.splice(0); + } + } + + if (batch.length > 0) { + await runBatch(batch); + batch.splice(0); + } +} + +main().catch(() => { + process.exitCode = 1; +}); diff --git a/test/zone.js b/test/zone.js deleted file mode 100644 index 728c6b7b..00000000 --- a/test/zone.js +++ /dev/null @@ -1,1951 +0,0 @@ -// Copyright 2015 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -'use strict'; - -const arrify = require('arrify'); -const assert = require('assert'); -const {GCEImages} = require('gce-images'); -const proxyquire = require('proxyquire'); -const {ServiceObject, util} = require('@google-cloud/common'); -const promisify = require('@google-cloud/promisify'); - -let promisified = false; -const fakePromisify = Object.assign({}, promisify, { - promisifyAll: function (Class, options) { - if (Class.name !== 'Zone') { - return; - } - - promisified = true; - assert.deepStrictEqual(options.exclude, [ - 'autoscaler', - 'disk', - 'instanceGroup', - 'instanceGroupManager', - 'machineType', - 'operation', - 'vm', - ]); - }, -}); - -function FakeAutoscaler() { - this.calledWith_ = [].slice.call(arguments); -} - -function FakeDisk() { - this.calledWith_ = [].slice.call(arguments); -} - -let formatPortsOverride; -FakeInstanceGroup.formatPorts_ = function () { - return (formatPortsOverride || util.noop).apply(null, arguments); -}; - -function FakeInstanceGroup() { - this.calledWith_ = [].slice.call(arguments); -} - -function FakeInstanceGroupManager() { - this.calledWith_ = [].slice.call(arguments); -} - -function FakeMachineType() { - this.calledWith_ = [].slice.call(arguments); -} - -function FakeOperation() { - this.calledWith_ = [].slice.call(arguments); -} - -function FakeVM() { - this.calledWith_ = [].slice.call(arguments); -} - -class FakeServiceObject extends ServiceObject { - constructor(config) { - super(config); - this.calledWith_ = arguments; - } -} - -let extended = false; -const fakePaginator = { - paginator: { - extend: function (Class, methods) { - if (Class.name !== 'Zone') { - return; - } - - extended = true; - methods = arrify(methods); - assert.strictEqual(Class.name, 'Zone'); - assert.deepStrictEqual(methods, [ - 'getAutoscalers', - 'getDisks', - 'getInstanceGroups', - 'getInstanceGroupManagers', - 'getMachineTypes', - 'getOperations', - 'getVMs', - ]); - }, - streamify: function (methodName) { - return methodName; - }, - }, -}; - -describe('Zone', () => { - let Zone; - let zone; - - const COMPUTE = { - authClient: {}, - projectId: 'project-id', - }; - const ZONE_NAME = 'us-central1-a'; - - before(() => { - Zone = proxyquire('../src/zone.js', { - '@google-cloud/common': { - ServiceObject: FakeServiceObject, - }, - '@google-cloud/paginator': fakePaginator, - '@google-cloud/promisify': fakePromisify, - './autoscaler.js': FakeAutoscaler, - './disk.js': FakeDisk, - './instance-group.js': FakeInstanceGroup, - './instance-group-manager.js': FakeInstanceGroupManager, - './machine-type.js': FakeMachineType, - './operation.js': FakeOperation, - './vm.js': FakeVM, - }); - }); - - beforeEach(() => { - formatPortsOverride = null; - zone = new Zone(COMPUTE, ZONE_NAME); - }); - - describe('instantiation', () => { - it('should extend the correct methods', () => { - assert(extended); // See `fakePaginator.extend` - }); - - it('should promisify all the things', () => { - assert(promisified); - }); - - it('should streamify the correct methods', () => { - assert.strictEqual(zone.getAutoscalersStream, 'getAutoscalers'); - assert.strictEqual(zone.getDisksStream, 'getDisks'); - assert.strictEqual(zone.getInstanceGroupsStream, 'getInstanceGroups'); - assert.strictEqual(zone.getMachineTypesStream, 'getMachineTypes'); - assert.strictEqual(zone.getOperationsStream, 'getOperations'); - assert.strictEqual(zone.getVMsStream, 'getVMs'); - }); - - it('should localize the compute instance', () => { - assert.strictEqual(zone.compute, COMPUTE); - }); - - it('should localize the name', () => { - assert.strictEqual(zone.name, ZONE_NAME); - }); - - it('should create a gceImages instance', () => { - const newZone = new Zone(COMPUTE, ZONE_NAME); - assert(newZone.gceImages instanceof GCEImages); - assert.strictEqual(newZone.gceImages._auth, COMPUTE.authClient); - }); - - it('should inherit from ServiceObject', () => { - assert(zone instanceof ServiceObject); - - const calledWith = zone.calledWith_[0]; - - assert.strictEqual(calledWith.parent, COMPUTE); - assert.strictEqual(calledWith.baseUrl, '/zones'); - assert.strictEqual(calledWith.id, ZONE_NAME); - assert.deepStrictEqual(calledWith.methods, { - exists: true, - get: true, - getMetadata: true, - }); - }); - }); - - describe('autoscaler', () => { - const NAME = 'autoscaler-name'; - - it('should return an Autoscaler object', () => { - const autoscaler = zone.autoscaler(NAME); - assert(autoscaler instanceof FakeAutoscaler); - assert.strictEqual(autoscaler.calledWith_[0], zone); - assert.strictEqual(autoscaler.calledWith_[1], NAME); - }); - }); - - describe('createAutoscaler', () => { - const NAME = 'autoscaler-name'; - const TARGET = 'target'; - - beforeEach(() => { - zone.request = util.noop; - }); - - it('should throw if a target is not provided', () => { - assert.throws(() => { - zone.createAutoscaler(NAME, {}, assert.ifError); - }, /Cannot create an autoscaler without a target\./); - }); - - it('should make the correct request', done => { - const config = { - target: TARGET, - }; - - zone.request = function (reqOpts) { - assert.strictEqual(reqOpts.json.name, NAME); - done(); - }; - - zone.createAutoscaler(NAME, config, assert.ifError); - }); - - it('should use a provided autoscalingPolicy', done => { - const config = { - autoscalingPolicy: { - a: 'b', - c: 'd', - }, - target: TARGET, - }; - - zone.request = function (reqOpts) { - const policy = reqOpts.json.autoscalingPolicy; - assert.deepStrictEqual(policy, config.autoscalingPolicy); - done(); - }; - - zone.createAutoscaler(NAME, config, assert.ifError); - }); - - describe('config.target', () => { - it('should use a provided http target', done => { - const config = { - target: 'http://my-target', - }; - - zone.request = function (reqOpts) { - assert.strictEqual(reqOpts.json.target, config.target); - done(); - }; - - zone.createAutoscaler(NAME, config, assert.ifError); - }); - - it('should use a provided https target', done => { - const config = { - target: 'https://my-target', - }; - - zone.request = function (reqOpts) { - assert.strictEqual(reqOpts.json.target, config.target); - done(); - }; - - zone.createAutoscaler(NAME, config, assert.ifError); - }); - - it('should create a full target URL', done => { - const config = { - target: 'my-target', - }; - - zone.request = function (reqOpts) { - const expectedTarget = [ - 'https://content.googleapis.com/compute/v1/projects/', - COMPUTE.projectId, - '/zones/', - zone.name, - '/instanceGroupManagers/', - config.target, - ].join(''); - - assert.strictEqual(reqOpts.json.target, expectedTarget); - - done(); - }; - - zone.createAutoscaler(NAME, config, assert.ifError); - }); - }); - - describe('config.coolDown', () => { - it('should set coolDownPeriodSec', done => { - const config = { - coolDown: 80, - target: TARGET, - }; - - zone.request = function (reqOpts) { - const policy = reqOpts.json.autoscalingPolicy; - assert.strictEqual(policy.coolDownPeriodSec, config.coolDown); - assert.strictEqual(reqOpts.coolDown, undefined); - done(); - }; - - zone.createAutoscaler(NAME, config, assert.ifError); - }); - }); - - describe('config.cpu', () => { - it('should set cpuUtilization', done => { - const config = { - cpu: 80, - target: TARGET, - }; - - zone.request = function (reqOpts) { - const policy = reqOpts.json.autoscalingPolicy; - const cpu = policy.cpuUtilization; - assert.strictEqual(cpu.utilizationTarget, config.cpu / 100); - assert.strictEqual(reqOpts.cpu, undefined); - done(); - }; - - zone.createAutoscaler(NAME, config, assert.ifError); - }); - }); - - describe('config.loadBalance', () => { - it('should set loadBalancingUtilization', done => { - const config = { - loadBalance: 80, - target: TARGET, - }; - - zone.request = function (reqOpts) { - const policy = reqOpts.json.autoscalingPolicy; - const lb = policy.loadBalancingUtilization; - assert.strictEqual(lb.utilizationTarget, config.loadBalance / 100); - assert.strictEqual(reqOpts.loadBalance, undefined); - done(); - }; - - zone.createAutoscaler(NAME, config, assert.ifError); - }); - }); - - describe('config.maxReplicas', () => { - it('should set maxNumReplicas', done => { - const config = { - maxReplicas: 10, - target: TARGET, - }; - - zone.request = function (reqOpts) { - const policy = reqOpts.json.autoscalingPolicy; - assert.strictEqual(policy.maxNumReplicas, config.maxReplicas); - assert.strictEqual(reqOpts.maxReplicas, undefined); - done(); - }; - - zone.createAutoscaler(NAME, config, assert.ifError); - }); - }); - - describe('config.minReplicas', () => { - it('should set minNumReplicas', done => { - const config = { - minReplicas: 10, - target: TARGET, - }; - - zone.request = function (reqOpts) { - const policy = reqOpts.json.autoscalingPolicy; - assert.strictEqual(policy.minNumReplicas, config.minReplicas); - assert.strictEqual(reqOpts.minReplicas, undefined); - done(); - }; - - zone.createAutoscaler(NAME, config, assert.ifError); - }); - }); - - describe('API request', () => { - const CONFIG = { - a: 'b', - c: 'd', - target: 'http://target', - }; - - const expectedBody = { - name: NAME, - target: 'http://target', - autoscalingPolicy: {}, - a: 'b', - c: 'd', - }; - - it('should make the correct API request', done => { - zone.request = function (reqOpts) { - assert.strictEqual(reqOpts.method, 'POST'); - assert.strictEqual(reqOpts.uri, '/autoscalers'); - assert.deepStrictEqual(reqOpts.json, expectedBody); - - done(); - }; - - zone.createAutoscaler(NAME, CONFIG, assert.ifError); - }); - - describe('error', () => { - const error = new Error('Error.'); - const apiResponse = {a: 'b', c: 'd'}; - - beforeEach(() => { - zone.request = function (reqOpts, callback) { - callback(error, apiResponse); - }; - }); - - it('should execute callback with error & API response', done => { - zone.createAutoscaler(NAME, CONFIG, (err, as, op, apiResp) => { - assert.strictEqual(err, error); - assert.strictEqual(as, null); - assert.strictEqual(op, null); - assert.strictEqual(apiResp, apiResponse); - done(); - }); - }); - }); - - describe('success', () => { - const apiResponse = {name: 'operation-name'}; - - beforeEach(() => { - zone.request = function (reqOpts, callback) { - callback(null, apiResponse); - }; - }); - - it('should exec callback with AutoS, Op & apiResponse', done => { - const autoscaler = {}; - const operation = {}; - - zone.autoscaler = function (name) { - assert.strictEqual(name, NAME); - return autoscaler; - }; - - zone.operation = function (name) { - assert.strictEqual(name, apiResponse.name); - return operation; - }; - - zone.createAutoscaler(NAME, CONFIG, (err, as, op, apiResp) => { - assert.ifError(err); - - assert.strictEqual(as, autoscaler); - - assert.strictEqual(op, operation); - assert.strictEqual(op.metadata, apiResp); - - assert.strictEqual(apiResp, apiResponse); - done(); - }); - }); - }); - }); - }); - - describe('createDisk', () => { - const NAME = 'disk-name'; - - beforeEach(() => { - zone.request = util.noop; - }); - - it('should use the image property as qs.sourceImages', done => { - const config = { - image: 'abc', - }; - - zone.request = function (reqOpts) { - assert.strictEqual(reqOpts.qs.sourceImage, config.image); - done(); - }; - - zone.createDisk(NAME, config, assert.ifError); - }); - - describe('config.os', () => { - const CONFIG = { - os: 'os-name', - }; - - it('should get the latest image', done => { - zone.gceImages.getLatest = function (os) { - assert.strictEqual(os, CONFIG.os); - done(); - }; - - zone.createDisk(NAME, CONFIG, assert.ifError); - }); - - describe('error', () => { - const error = new Error('Error.'); - - beforeEach(() => { - zone.gceImages.getLatest = function (os, callback) { - callback(error); - }; - }); - - it('should execute callback with error', done => { - zone.createDisk(NAME, CONFIG, err => { - assert.strictEqual(err, error); - done(); - }); - }); - }); - - describe('success', () => { - const gceImagesResp = { - selfLink: 'http://selflink', - }; - - const expectedConfig = { - name: NAME, - sourceImage: gceImagesResp.selfLink, - }; - - it('should call createDisk with the correct config', done => { - zone.gceImages.getLatest = function (os, callback) { - zone.createDisk = function (name, config, callback) { - assert.strictEqual(name, NAME); - assert.deepStrictEqual(config, expectedConfig); - callback(); - }; - - callback(null, gceImagesResp); - }; - - zone.createDisk(NAME, CONFIG, done); - }); - }); - }); - - describe('API request', () => { - const CONFIG = { - a: 'b', - c: 'd', - }; - - const expectedBody = { - name: NAME, - a: 'b', - c: 'd', - }; - - it('should make the correct API request', done => { - zone.request = function (reqOpts) { - assert.strictEqual(reqOpts.method, 'POST'); - assert.strictEqual(reqOpts.uri, '/disks'); - assert.deepStrictEqual(reqOpts.qs, {}); - assert.deepStrictEqual(reqOpts.json, expectedBody); - - done(); - }; - - zone.createDisk(NAME, CONFIG, assert.ifError); - }); - - describe('error', () => { - const error = new Error('Error.'); - const apiResponse = {a: 'b', c: 'd'}; - - beforeEach(() => { - zone.request = function (reqOpts, callback) { - callback(error, apiResponse); - }; - }); - - it('should execute callback with error & API response', done => { - zone.createDisk(NAME, CONFIG, (err, disk, op, apiResp) => { - assert.strictEqual(err, error); - assert.strictEqual(disk, null); - assert.strictEqual(op, null); - assert.strictEqual(apiResp, apiResponse); - done(); - }); - }); - }); - - describe('success', () => { - const apiResponse = {name: 'operation-name'}; - - beforeEach(() => { - zone.request = function (reqOpts, callback) { - callback(null, apiResponse); - }; - }); - - it('should exec callback with Disk, Op & apiResponse', done => { - const disk = {}; - const operation = {}; - - zone.disk = function (name) { - assert.strictEqual(name, NAME); - return disk; - }; - - zone.operation = function (name) { - assert.strictEqual(name, apiResponse.name); - return operation; - }; - - zone.createDisk(NAME, CONFIG, (err, disk_, op, apiResp) => { - assert.ifError(err); - - assert.strictEqual(disk_, disk); - - assert.strictEqual(op, operation); - assert.strictEqual(op.metadata, apiResp); - - assert.strictEqual(apiResp, apiResponse); - done(); - }); - }); - }); - }); - }); - - describe('createInstanceGroup', () => { - const NAME = 'instance-group'; - - beforeEach(() => { - zone.request = util.noop; - }); - - describe('options.ports', () => { - const PORTS = { - http: 80, - https: 443, - }; - - it('should format named ports', done => { - const expectedNamedPorts = []; - - formatPortsOverride = function (ports) { - assert.strictEqual(ports, PORTS); - return expectedNamedPorts; - }; - - zone.request = function (reqOpts) { - assert.strictEqual(reqOpts.json.namedPorts, expectedNamedPorts); - assert.strictEqual(reqOpts.json.ports, undefined); - done(); - }; - - zone.createInstanceGroup(NAME, {ports: PORTS}, assert.ifError); - }); - }); - - describe('API request', () => { - const OPTIONS = { - a: 'b', - c: 'd', - }; - - const expectedBody = { - name: NAME, - a: 'b', - c: 'd', - }; - - it('should make the correct API request', done => { - zone.request = function (reqOpts) { - assert.strictEqual(reqOpts.method, 'POST'); - assert.strictEqual(reqOpts.uri, '/instanceGroups'); - assert.deepStrictEqual(reqOpts.json, expectedBody); - - done(); - }; - - zone.createInstanceGroup(NAME, OPTIONS, assert.ifError); - }); - - it('should not require options', done => { - zone.request = function (reqOpts) { - assert.deepStrictEqual(reqOpts.json, {name: NAME}); - done(); - }; - - zone.createInstanceGroup(NAME, assert.ifError); - }); - - describe('error', () => { - const error = new Error('Error.'); - const apiResponse = {a: 'b', c: 'd'}; - - beforeEach(() => { - zone.request = function (reqOpts, callback) { - callback(error, apiResponse); - }; - }); - - it('should execute callback with error & API response', done => { - zone.createInstanceGroup(NAME, OPTIONS, (err, ig, op, resp) => { - assert.strictEqual(err, error); - assert.strictEqual(ig, null); - assert.strictEqual(op, null); - assert.strictEqual(resp, apiResponse); - done(); - }); - }); - }); - - describe('success', () => { - const apiResponse = {name: 'operation-name'}; - - beforeEach(() => { - zone.request = function (reqOpts, callback) { - callback(null, apiResponse); - }; - }); - - it('should exec callback with Group, Op & apiResponse', done => { - const instanceGroup = {}; - const operation = {}; - - zone.instanceGroup = function (name) { - assert.strictEqual(name, NAME); - return instanceGroup; - }; - - zone.operation = function (name) { - assert.strictEqual(name, apiResponse.name); - return operation; - }; - - zone.createInstanceGroup(NAME, OPTIONS, (err, ig, op, resp) => { - assert.ifError(err); - - assert.strictEqual(ig, instanceGroup); - - assert.strictEqual(op, operation); - assert.strictEqual(op.metadata, resp); - - assert.strictEqual(resp, apiResponse); - done(); - }); - }); - }); - }); - }); - - describe('createVM', () => { - const NAME = 'new-vm'; - - const CONFIG = {}; - - const EXPECTED_CONFIG = { - name: NAME, - machineType: 'zones/' + ZONE_NAME + '/machineTypes/n1-standard-1', - networkInterfaces: [ - { - network: 'global/networks/default', - }, - ], - }; - - describe('config.template', () => { - const CONFIG = { - template: '/path/to/template', - }; - - it('should define sourceInstanceTemplate', done => { - zone.request = function (reqOpts) { - assert.strictEqual( - reqOpts.qs.sourceInstanceTemplate, - CONFIG.template - ); - done(); - }; - - zone.createVM(NAME, CONFIG, assert.ifError); - }); - - it('should not set default value for machineType', done => { - zone.request = function (reqOpts) { - assert.strictEqual(typeof reqOpts.json.machineType, 'undefined'); - done(); - }; - - zone.createVM(NAME, CONFIG, assert.ifError); - }); - - it('should not set default value for network', done => { - zone.request = function (reqOpts) { - assert.strictEqual( - typeof reqOpts.json.networkInterfaces, - 'undefined' - ); - done(); - }; - - zone.createVM(NAME, CONFIG, assert.ifError); - }); - }); - - describe('config.machineType', () => { - const CONFIG = { - machineType: 'f1-micro', - }; - - it('should format a given machine type', done => { - zone.request = function (reqOpts) { - assert.strictEqual( - reqOpts.json.machineType, - 'zones/' + ZONE_NAME + '/machineTypes/' + CONFIG.machineType - ); - done(); - }; - - zone.createVM(NAME, CONFIG, assert.ifError); - }); - }); - - describe('config.tags', () => { - const CONFIG = { - tags: ['a', 'b'], - }; - - it('should accept an array of tags', done => { - zone.request = function (reqOpts) { - assert.deepStrictEqual(reqOpts.json.tags.items, CONFIG.tags); - done(); - }; - - zone.createVM(NAME, CONFIG, assert.ifError); - }); - }); - - describe('config.http', () => { - const CONFIG = { - http: true, - }; - - beforeEach(() => { - zone.createHttpServerFirewall_ = function (callback) { - callback(); - }; - }); - - it('should execute cb with error from creating firewall', done => { - const error = new Error('Error.'); - - zone.createHttpServerFirewall_ = function (callback) { - callback(error); - }; - - zone.createVM(NAME, CONFIG, err => { - assert.strictEqual(err, error); - done(); - }); - }); - - it('should create a firewall rule', done => { - zone.createHttpServerFirewall_ = function () { - done(); - }; - - zone.createVM(NAME, CONFIG, assert.ifError); - }); - - it('should add a network interface accessConfig', done => { - zone.request = function (reqOpts) { - assert.deepStrictEqual( - reqOpts.json.networkInterfaces[0].accessConfigs[0], - { - type: 'ONE_TO_ONE_NAT', - } - ); - done(); - }; - - zone.createVM(NAME, CONFIG, assert.ifError); - }); - - it('should add an http tag', done => { - zone.request = function (reqOpts) { - assert(reqOpts.json.tags.items.indexOf('http-server') > -1); - done(); - }; - - zone.createVM(NAME, CONFIG, assert.ifError); - }); - - it('should not overwrite existing tags', done => { - const config = { - http: true, - tags: { - items: ['a', 'b'], - }, - }; - - const expectedTags = ['a', 'b', 'http-server']; - - zone.request = function (reqOpts) { - assert.deepStrictEqual(reqOpts.json.tags.items, expectedTags); - done(); - }; - - zone.createVM(NAME, config, assert.ifError); - }); - - it('should delete the https property', done => { - zone.request = function (reqOpts) { - assert.strictEqual(reqOpts.json.https, undefined); - done(); - }; - - zone.createVM(NAME, CONFIG, assert.ifError); - }); - }); - - describe('config.https', () => { - const CONFIG = { - https: true, - }; - - beforeEach(() => { - zone.createHttpsServerFirewall_ = function (callback) { - callback(); - }; - }); - - it('should execute cb with error from creating firewall', done => { - const error = new Error('Error.'); - - zone.createHttpsServerFirewall_ = function (callback) { - callback(error); - }; - - zone.createVM(NAME, CONFIG, err => { - assert.strictEqual(err, error); - done(); - }); - }); - - it('should create a firewall rule', done => { - zone.createHttpsServerFirewall_ = function () { - done(); - }; - - zone.createVM(NAME, CONFIG, assert.ifError); - }); - - it('should add a network interface accessConfig', done => { - zone.request = function (reqOpts) { - assert.deepStrictEqual( - reqOpts.json.networkInterfaces[0].accessConfigs[0], - { - type: 'ONE_TO_ONE_NAT', - } - ); - done(); - }; - - zone.createVM(NAME, CONFIG, assert.ifError); - }); - - it('should add an https tag', done => { - zone.request = function (reqOpts) { - assert(reqOpts.json.tags.items.indexOf('https-server') > -1); - done(); - }; - - zone.createVM(NAME, CONFIG, assert.ifError); - }); - - it('should not overwrite existing tags', done => { - const config = { - https: true, - tags: { - items: ['a', 'b'], - }, - }; - - const expectedTags = ['a', 'b', 'https-server']; - - zone.request = function (reqOpts) { - assert.deepStrictEqual(reqOpts.json.tags.items, expectedTags); - done(); - }; - - zone.createVM(NAME, config, assert.ifError); - }); - - it('should delete the https property', done => { - zone.request = function (reqOpts) { - assert.strictEqual(reqOpts.json.https, undefined); - done(); - }; - - zone.createVM(NAME, CONFIG, assert.ifError); - }); - }); - - describe('config.os', () => { - const CONFIG = { - os: 'os-name', - }; - - it('should get the latest image', done => { - zone.gceImages.getLatest = function (os) { - assert.strictEqual(os, CONFIG.os); - done(); - }; - - zone.createVM(NAME, CONFIG, assert.ifError); - }); - - describe('error', () => { - const error = new Error('Error.'); - - beforeEach(() => { - zone.gceImages.getLatest = function (os, callback) { - callback(error); - }; - }); - - it('should execute callback with error', done => { - zone.createVM(NAME, CONFIG, err => { - assert.strictEqual(err, error); - done(); - }); - }); - }); - - describe('success', () => { - const gceImagesResp = { - selfLink: 'http://selflink', - }; - - const expectedConfig = Object.assign({}, EXPECTED_CONFIG, { - disks: [ - { - autoDelete: true, - boot: true, - initializeParams: { - sourceImage: gceImagesResp.selfLink, - }, - }, - ], - }); - - it('should call createVM with the correct config', done => { - zone.gceImages.getLatest = function (os, callback) { - zone.createVM = function (name, config, callback) { - assert.strictEqual(name, NAME); - assert.deepStrictEqual(config, expectedConfig); - callback(); - }; - - callback(null, gceImagesResp); - }; - - zone.createVM(NAME, CONFIG, done); - }); - }); - }); - - describe('API request', () => { - it('should make the correct API request', done => { - zone.request = function (reqOpts) { - assert.strictEqual(reqOpts.method, 'POST'); - assert.strictEqual(reqOpts.uri, '/instances'); - assert.deepStrictEqual(reqOpts.json, EXPECTED_CONFIG); - - done(); - }; - - zone.createVM(NAME, CONFIG, assert.ifError); - }); - - describe('error', () => { - const error = new Error('Error.'); - const apiResponse = {a: 'b', c: 'd'}; - - beforeEach(() => { - zone.request = function (reqOpts, callback) { - callback(error, apiResponse); - }; - }); - - it('should execute callback with error & API response', done => { - zone.createVM(NAME, CONFIG, (err, vm, op, apiResp) => { - assert.strictEqual(err, error); - assert.strictEqual(vm, null); - assert.strictEqual(op, null); - assert.strictEqual(apiResp, apiResponse); - done(); - }); - }); - }); - - describe('success', () => { - const apiResponse = {name: 'operation-name'}; - - beforeEach(() => { - zone.request = function (reqOpts, callback) { - callback(null, apiResponse); - }; - }); - - it('should exec callback with Disk, Op & apiResponse', done => { - const vm = {}; - const operation = {}; - - zone.vm = function (name) { - assert.strictEqual(name, NAME); - return vm; - }; - - zone.operation = function (name) { - assert.strictEqual(name, apiResponse.name); - return operation; - }; - - zone.createVM(NAME, CONFIG, (err, vm_, op, apiResp) => { - assert.ifError(err); - - assert.strictEqual(vm_, vm); - - assert.strictEqual(op, operation); - assert.strictEqual(op.metadata, apiResp); - - assert.strictEqual(apiResp, apiResponse); - done(); - }); - }); - }); - }); - }); - - describe('disk', () => { - const NAME = 'disk-name'; - - it('should return a Disk object', () => { - const disk = zone.disk(NAME); - assert(disk instanceof FakeDisk); - assert.strictEqual(disk.calledWith_[0], zone); - assert.strictEqual(disk.calledWith_[1], NAME); - }); - }); - - describe('getAutoscalers', () => { - it('should accept only a callback', done => { - zone.request = function (reqOpts) { - assert.deepStrictEqual(reqOpts.qs, {}); - done(); - }; - - zone.getAutoscalers(assert.ifError); - }); - - it('should make the correct API request', done => { - const query = {a: 'b', c: 'd'}; - - zone.request = function (reqOpts) { - assert.strictEqual(reqOpts.uri, '/autoscalers'); - assert.strictEqual(reqOpts.qs, query); - - done(); - }; - - zone.getAutoscalers(query, assert.ifError); - }); - - describe('error', () => { - const error = new Error('Error.'); - const apiResponse = {a: 'b', c: 'd'}; - - beforeEach(() => { - zone.request = function (reqOpts, callback) { - callback(error, apiResponse); - }; - }); - - it('should execute callback with error & API response', done => { - zone.getAutoscalers({}, (err, autoscalers, nextQuery, apiResp) => { - assert.strictEqual(err, error); - assert.strictEqual(autoscalers, null); - assert.strictEqual(nextQuery, null); - assert.strictEqual(apiResp, apiResponse); - done(); - }); - }); - }); - - describe('success', () => { - const apiResponse = { - items: [{name: 'autoscaler-name'}], - }; - - beforeEach(() => { - zone.request = function (reqOpts, callback) { - callback(null, apiResponse); - }; - }); - - it('should build a nextQuery if necessary', done => { - const nextPageToken = 'next-page-token'; - const apiResponseWithNextPageToken = Object.assign({}, apiResponse, { - nextPageToken: nextPageToken, - }); - const expectedNextQuery = { - pageToken: nextPageToken, - }; - - zone.request = function (reqOpts, callback) { - callback(null, apiResponseWithNextPageToken); - }; - - zone.getAutoscalers({}, (err, disks, nextQuery) => { - assert.ifError(err); - - assert.deepStrictEqual(nextQuery, expectedNextQuery); - - done(); - }); - }); - - it('should execute callback with Autoscalers & API resp', done => { - const autoscaler = {}; - - zone.autoscaler = function (name) { - assert.strictEqual(name, apiResponse.items[0].name); - return autoscaler; - }; - - zone.getAutoscalers({}, (err, autoscalers, nextQuery, apiResp) => { - assert.ifError(err); - - assert.strictEqual(autoscalers[0], autoscaler); - assert.strictEqual(autoscalers[0].metadata, apiResponse.items[0]); - - assert.strictEqual(apiResp, apiResponse); - - done(); - }); - }); - }); - }); - - describe('getDisks', () => { - it('should accept only a callback', done => { - zone.request = function (reqOpts) { - assert.deepStrictEqual(reqOpts.qs, {}); - done(); - }; - - zone.getDisks(assert.ifError); - }); - - it('should make the correct API request', done => { - const query = {a: 'b', c: 'd'}; - - zone.request = function (reqOpts) { - assert.strictEqual(reqOpts.uri, '/disks'); - assert.strictEqual(reqOpts.qs, query); - - done(); - }; - - zone.getDisks(query, assert.ifError); - }); - - describe('error', () => { - const error = new Error('Error.'); - const apiResponse = {a: 'b', c: 'd'}; - - beforeEach(() => { - zone.request = function (reqOpts, callback) { - callback(error, apiResponse); - }; - }); - - it('should execute callback with error & API response', done => { - zone.getDisks({}, (err, disks, nextQuery, apiResp) => { - assert.strictEqual(err, error); - assert.strictEqual(disks, null); - assert.strictEqual(nextQuery, null); - assert.strictEqual(apiResp, apiResponse); - done(); - }); - }); - }); - - describe('success', () => { - const apiResponse = { - items: [{name: 'disk-name'}], - }; - - beforeEach(() => { - zone.request = function (reqOpts, callback) { - callback(null, apiResponse); - }; - }); - - it('should build a nextQuery if necessary', done => { - const nextPageToken = 'next-page-token'; - const apiResponseWithNextPageToken = Object.assign({}, apiResponse, { - nextPageToken: nextPageToken, - }); - const expectedNextQuery = { - pageToken: nextPageToken, - }; - - zone.request = function (reqOpts, callback) { - callback(null, apiResponseWithNextPageToken); - }; - - zone.getDisks({}, (err, disks, nextQuery) => { - assert.ifError(err); - - assert.deepStrictEqual(nextQuery, expectedNextQuery); - - done(); - }); - }); - - it('should execute callback with Disks & API resp', done => { - const disk = {}; - - zone.disk = function (name) { - assert.strictEqual(name, apiResponse.items[0].name); - return disk; - }; - - zone.getDisks({}, (err, disks, nextQuery, apiResp) => { - assert.ifError(err); - - assert.strictEqual(disks[0], disk); - assert.strictEqual(disks[0].metadata, apiResponse.items[0]); - - assert.strictEqual(apiResp, apiResponse); - - done(); - }); - }); - }); - }); - - describe('getInstanceGroups', () => { - it('should accept only a callback', done => { - zone.request = function (reqOpts) { - assert.deepStrictEqual(reqOpts.qs, {}); - done(); - }; - - zone.getInstanceGroups(assert.ifError); - }); - - it('should make the correct API request', done => { - const query = {a: 'b', c: 'd'}; - - zone.request = function (reqOpts) { - assert.strictEqual(reqOpts.uri, '/instanceGroups'); - assert.strictEqual(reqOpts.qs, query); - - done(); - }; - - zone.getInstanceGroups(query, assert.ifError); - }); - - describe('error', () => { - const error = new Error('Error.'); - const apiResponse = {a: 'b', c: 'd'}; - - beforeEach(() => { - zone.request = function (reqOpts, callback) { - callback(error, apiResponse); - }; - }); - - it('should execute callback with error & API response', done => { - zone.getInstanceGroups({}, (err, groups, nextQuery, apiResp) => { - assert.strictEqual(err, error); - assert.strictEqual(groups, null); - assert.strictEqual(nextQuery, null); - assert.strictEqual(apiResp, apiResponse); - done(); - }); - }); - }); - - describe('success', () => { - const apiResponse = { - items: [{name: 'operation-name'}], - }; - - beforeEach(() => { - zone.request = function (reqOpts, callback) { - callback(null, apiResponse); - }; - }); - - it('should build a nextQuery if necessary', done => { - const nextPageToken = 'next-page-token'; - const apiResponseWithNextPageToken = Object.assign({}, apiResponse, { - nextPageToken: nextPageToken, - }); - const expectedNextQuery = { - pageToken: nextPageToken, - }; - - zone.request = function (reqOpts, callback) { - callback(null, apiResponseWithNextPageToken); - }; - - zone.getInstanceGroups({}, (err, groups, nextQuery) => { - assert.ifError(err); - - assert.deepStrictEqual(nextQuery, expectedNextQuery); - - done(); - }); - }); - - it('should execute callback with Groups & API resp', done => { - const group = {}; - - zone.instanceGroup = function (name) { - assert.strictEqual(name, apiResponse.items[0].name); - return group; - }; - - zone.getInstanceGroups({}, (err, groups, nextQuery, apiResp) => { - assert.ifError(err); - - assert.strictEqual(groups[0], group); - assert.strictEqual(groups[0].metadata, apiResponse.items[0]); - - assert.strictEqual(apiResp, apiResponse); - - done(); - }); - }); - }); - }); - - describe('getInstanceGroupManagers', () => { - it('should accept only a callback', done => { - zone.request = function (reqOpts) { - assert.deepStrictEqual(reqOpts.qs, {}); - done(); - }; - - zone.getInstanceGroupManagers(assert.ifError); - }); - - it('should make the correct API request', done => { - const query = {a: 'b', c: 'd'}; - - zone.request = function (reqOpts) { - assert.strictEqual(reqOpts.uri, '/instanceGroupManagers'); - assert.strictEqual(reqOpts.qs, query); - - done(); - }; - - zone.getInstanceGroupManagers(query, assert.ifError); - }); - - describe('error', () => { - const error = new Error('Error.'); - const apiResponse = {a: 'b', c: 'd'}; - - beforeEach(() => { - zone.request = function (reqOpts, callback) { - callback(error, apiResponse); - }; - }); - - it('should execute callback with error & API response', done => { - zone.getInstanceGroupManagers({}, (err, groups, nextQuery, apiResp) => { - assert.strictEqual(err, error); - assert.strictEqual(groups, null); - assert.strictEqual(nextQuery, null); - assert.strictEqual(apiResp, apiResponse); - done(); - }); - }); - }); - - describe('success', () => { - const apiResponse = { - items: [{name: 'operation-name'}], - }; - - beforeEach(() => { - zone.request = function (reqOpts, callback) { - callback(null, apiResponse); - }; - }); - - it('should build a nextQuery if necessary', done => { - const nextPageToken = 'next-page-token'; - const apiResponseWithNextPageToken = Object.assign({}, apiResponse, { - nextPageToken: nextPageToken, - }); - const expectedNextQuery = { - pageToken: nextPageToken, - }; - - zone.request = function (reqOpts, callback) { - callback(null, apiResponseWithNextPageToken); - }; - - zone.getInstanceGroupManagers({}, (err, groups, nextQuery) => { - assert.ifError(err); - - assert.deepStrictEqual(nextQuery, expectedNextQuery); - - done(); - }); - }); - - it('should execute callback with Groups & API resp', done => { - const group = {}; - - zone.instanceGroupManager = function (name) { - assert.strictEqual(name, apiResponse.items[0].name); - return group; - }; - - zone.getInstanceGroupManagers({}, (err, groups, nextQuery, apiResp) => { - assert.ifError(err); - - assert.strictEqual(groups[0], group); - assert.strictEqual(groups[0].metadata, apiResponse.items[0]); - - assert.strictEqual(apiResp, apiResponse); - - done(); - }); - }); - }); - }); - - describe('getMachineTypes', () => { - it('should make the correct call to Compute', done => { - const options = {a: 'b', c: 'd'}; - const expectedOptions = Object.assign({}, options, { - filter: 'zone eq .*' + zone.name, - }); - - zone.compute.getMachineTypes = function (options, callback) { - assert.deepStrictEqual(options, expectedOptions); - callback(); - }; - - zone.getMachineTypes(options, done); - }); - - it('should not require options', done => { - zone.compute.getMachineTypes = function (options, callback) { - callback(); - }; - - zone.getMachineTypes(done); - }); - - it('should not require any arguments', done => { - zone.compute.getMachineTypes = function (options, callback) { - assert.deepStrictEqual(options, { - filter: 'zone eq .*' + zone.name, - }); - assert.strictEqual(typeof callback, 'undefined'); - done(); - }; - - zone.getMachineTypes(); - }); - - it('should return the result of compute.getMachineTypes', () => { - const resultOfGetMachineTypes = {}; - - zone.compute.getMachineTypes = function () { - return resultOfGetMachineTypes; - }; - - assert.strictEqual(zone.getMachineTypes(), resultOfGetMachineTypes); - }); - }); - - describe('getOperations', () => { - it('should accept only a callback', done => { - zone.request = function (reqOpts) { - assert.deepStrictEqual(reqOpts.qs, {}); - done(); - }; - - zone.getOperations(assert.ifError); - }); - - it('should make the correct API request', done => { - const query = {a: 'b', c: 'd'}; - - zone.request = function (reqOpts) { - assert.strictEqual(reqOpts.uri, '/operations'); - assert.strictEqual(reqOpts.qs, query); - - done(); - }; - - zone.getOperations(query, assert.ifError); - }); - - describe('error', () => { - const error = new Error('Error.'); - const apiResponse = {a: 'b', c: 'd'}; - - beforeEach(() => { - zone.request = function (reqOpts, callback) { - callback(error, apiResponse); - }; - }); - - it('should execute callback with error & API response', done => { - zone.getOperations({}, (err, operations, nextQuery, apiResp) => { - assert.strictEqual(err, error); - assert.strictEqual(nextQuery, null); - assert.strictEqual(apiResp, apiResponse); - done(); - }); - }); - }); - - describe('success', () => { - const apiResponse = { - items: [{name: 'operation-name'}], - }; - - beforeEach(() => { - zone.request = function (reqOpts, callback) { - callback(null, apiResponse); - }; - }); - - it('should build a nextQuery if necessary', done => { - const nextPageToken = 'next-page-token'; - const apiResponseWithNextPageToken = Object.assign({}, apiResponse, { - nextPageToken: nextPageToken, - }); - const expectedNextQuery = { - pageToken: nextPageToken, - }; - - zone.request = function (reqOpts, callback) { - callback(null, apiResponseWithNextPageToken); - }; - - zone.getOperations({}, (err, operations, nextQuery) => { - assert.ifError(err); - - assert.deepStrictEqual(nextQuery, expectedNextQuery); - - done(); - }); - }); - - it('should execute callback with Operations & API resp', done => { - const operation = {}; - - zone.operation = function (name) { - assert.strictEqual(name, apiResponse.items[0].name); - return operation; - }; - - zone.getOperations({}, (err, operations, nextQuery, apiResp) => { - assert.ifError(err); - - assert.strictEqual(operations[0], operation); - assert.strictEqual(operations[0].metadata, apiResponse.items[0]); - - assert.strictEqual(apiResp, apiResponse); - - done(); - }); - }); - }); - }); - - describe('getVMs', () => { - it('should accept only a callback', done => { - zone.request = function (reqOpts) { - assert.deepStrictEqual(reqOpts.qs, {}); - done(); - }; - - zone.getVMs(assert.ifError); - }); - - it('should make the correct API request', done => { - const query = {a: 'b', c: 'd'}; - - zone.request = function (reqOpts) { - assert.strictEqual(reqOpts.uri, '/instances'); - assert.strictEqual(reqOpts.qs, query); - - done(); - }; - - zone.getVMs(query, assert.ifError); - }); - - describe('error', () => { - const error = new Error('Error.'); - const apiResponse = {a: 'b', c: 'd'}; - - beforeEach(() => { - zone.request = function (reqOpts, callback) { - callback(error, apiResponse); - }; - }); - - it('should execute callback with error & API response', done => { - zone.getVMs({}, (err, vms, nextQuery, apiResponse_) => { - assert.strictEqual(err, error); - assert.strictEqual(nextQuery, null); - assert.strictEqual(apiResponse_, apiResponse); - done(); - }); - }); - }); - - describe('success', () => { - const apiResponse = { - items: [{name: 'vm-name'}], - }; - - beforeEach(() => { - zone.request = function (reqOpts, callback) { - callback(null, apiResponse); - }; - }); - - it('should build a nextQuery if necessary', done => { - const nextPageToken = 'next-page-token'; - const apiResponseWithNextPageToken = Object.assign({}, apiResponse, { - nextPageToken: nextPageToken, - }); - const expectedNextQuery = { - pageToken: nextPageToken, - }; - - zone.request = function (reqOpts, callback) { - callback(null, apiResponseWithNextPageToken); - }; - - zone.getVMs({}, (err, vms, nextQuery) => { - assert.ifError(err); - - assert.deepStrictEqual(nextQuery, expectedNextQuery); - - done(); - }); - }); - - it('should execute callback with VMs & API response', done => { - const vm = {}; - - zone.vm = function (name) { - assert.strictEqual(name, apiResponse.items[0].name); - return vm; - }; - - zone.getVMs({}, (err, vms, nextQuery, apiResponse_) => { - assert.ifError(err); - - assert.strictEqual(vms[0], vm); - assert.strictEqual(vms[0].metadata, apiResponse.items[0]); - - assert.strictEqual(apiResponse_, apiResponse); - - done(); - }); - }); - }); - }); - - describe('instanceGroup', () => { - const NAME = 'instance-group'; - - it('should return an InstanceGroup object', () => { - const instanceGroup = zone.instanceGroup(NAME); - assert(instanceGroup instanceof FakeInstanceGroup); - assert.strictEqual(instanceGroup.calledWith_[0], zone); - assert.strictEqual(instanceGroup.calledWith_[1], NAME); - }); - }); - - describe('instanceGroupManager', () => { - const NAME = 'instance-group-manager'; - - it('should return an InstanceGroupManager object', () => { - const instanceGroupManager = zone.instanceGroupManager(NAME); - assert(instanceGroupManager instanceof FakeInstanceGroupManager); - assert.strictEqual(instanceGroupManager.calledWith_[0], zone); - assert.strictEqual(instanceGroupManager.calledWith_[1], NAME); - }); - }); - - describe('machineType', () => { - const NAME = 'machine-name'; - - it('should return a MachineType object', () => { - const machineType = zone.machineType(NAME); - - assert(machineType instanceof FakeMachineType); - assert.strictEqual(machineType.calledWith_[0], zone); - assert.strictEqual(machineType.calledWith_[1], NAME); - }); - }); - - describe('operation', () => { - const NAME = 'operation-name'; - - it('should return an Operation object', () => { - const operation = zone.operation(NAME); - assert(operation instanceof FakeOperation); - assert.strictEqual(operation.calledWith_[0], zone); - assert.strictEqual(operation.calledWith_[1], NAME); - }); - }); - - describe('vm', () => { - const NAME = 'vm-name'; - - it('should return a VM object', () => { - const vm = zone.vm(NAME); - assert(vm instanceof FakeVM); - assert.strictEqual(vm.calledWith_[0], zone); - assert.strictEqual(vm.calledWith_[1], NAME); - }); - }); - - describe('createHttpServerFirewall_', () => { - it('should create a firewall rule', done => { - zone.compute.createFirewall = function (name, config) { - assert.strictEqual(name, 'default-allow-http'); - assert.deepStrictEqual(config, { - protocols: { - tcp: [80], - }, - ranges: ['0.0.0.0/0'], - tags: ['http-server'], - }); - - done(); - }; - - zone.createHttpServerFirewall_(assert.ifError); - }); - - it('should execute callback with error & API response', done => { - const error = new Error('Error.'); - - zone.compute.createFirewall = function (name, config, callback) { - callback(error); - }; - - zone.createHttpServerFirewall_(err => { - assert.strictEqual(err, error); - done(); - }); - }); - - it('should not execute callback with error if 409', done => { - const error = new Error('Error.'); - error.code = 409; - - const apiResponse = {}; - - zone.compute.createFirewall = function (name, config, callback) { - callback(error, null, apiResponse); - }; - - zone.createHttpServerFirewall_(err => { - assert.strictEqual(err, null); - done(); - }); - }); - }); - - describe('createHttpsServerFirewall_', () => { - it('should create a firewall rule', done => { - zone.compute.createFirewall = function (name, config) { - assert.strictEqual(name, 'default-allow-https'); - assert.deepStrictEqual(config, { - protocols: { - tcp: [443], - }, - ranges: ['0.0.0.0/0'], - tags: ['https-server'], - }); - - done(); - }; - - zone.createHttpsServerFirewall_(assert.ifError); - }); - - it('should execute callback with error & API response', done => { - const error = new Error('Error.'); - - zone.compute.createFirewall = function (name, config, callback) { - callback(error); - }; - - zone.createHttpsServerFirewall_(err => { - assert.strictEqual(err, error); - done(); - }); - }); - - it('should not execute callback with error if 409', done => { - const error = new Error('Error.'); - error.code = 409; - - zone.compute.createFirewall = function (name, config, callback) { - callback(error); - }; - - zone.createHttpsServerFirewall_(err => { - assert.strictEqual(err, null); - done(); - }); - }); - }); -});