google-apis-appengine_v1beta5 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.yardopts +13 -0
- data/CHANGELOG.md +7 -0
- data/LICENSE.md +202 -0
- data/OVERVIEW.md +96 -0
- data/lib/google-apis-appengine_v1beta5.rb +15 -0
- data/lib/google/apis/appengine_v1beta5.rb +42 -0
- data/lib/google/apis/appengine_v1beta5/classes.rb +2241 -0
- data/lib/google/apis/appengine_v1beta5/gem_version.rb +28 -0
- data/lib/google/apis/appengine_v1beta5/representations.rb +854 -0
- data/lib/google/apis/appengine_v1beta5/service.rb +878 -0
- metadata +76 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 619da750a407c162fae52630606c0948021811bb96017719f59be3bfe1c693c4
|
4
|
+
data.tar.gz: 61225b6bcabcfbd92595369b9f5b202ea5139a8a3fdc4e68d0cb035e73724802
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: a930f67fce088c24d5d581fb0035cb3e9404f548116150107fb70829da28b18580309d7746da3c898b021ea6045adb40e95e6059ca51378c2a86405717dafbac
|
7
|
+
data.tar.gz: 99eb3b76e04ee73fb1431a2901135335b403e2e1ea4a77295faabe7b1661a553fcf67fc17004f91550532bfda7f29c0768b36c971e422bf24a4a9cd8f1a877c0
|
data/.yardopts
ADDED
@@ -0,0 +1,13 @@
|
|
1
|
+
--hide-void-return
|
2
|
+
--no-private
|
3
|
+
--verbose
|
4
|
+
--title=google-apis-appengine_v1beta5
|
5
|
+
--markup-provider=redcarpet
|
6
|
+
--markup=markdown
|
7
|
+
--main OVERVIEW.md
|
8
|
+
lib/google/apis/appengine_v1beta5/*.rb
|
9
|
+
lib/google/apis/appengine_v1beta5.rb
|
10
|
+
-
|
11
|
+
OVERVIEW.md
|
12
|
+
CHANGELOG.md
|
13
|
+
LICENSE.md
|
data/CHANGELOG.md
ADDED
data/LICENSE.md
ADDED
@@ -0,0 +1,202 @@
|
|
1
|
+
|
2
|
+
Apache License
|
3
|
+
Version 2.0, January 2004
|
4
|
+
http://www.apache.org/licenses/
|
5
|
+
|
6
|
+
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
7
|
+
|
8
|
+
1. Definitions.
|
9
|
+
|
10
|
+
"License" shall mean the terms and conditions for use, reproduction,
|
11
|
+
and distribution as defined by Sections 1 through 9 of this document.
|
12
|
+
|
13
|
+
"Licensor" shall mean the copyright owner or entity authorized by
|
14
|
+
the copyright owner that is granting the License.
|
15
|
+
|
16
|
+
"Legal Entity" shall mean the union of the acting entity and all
|
17
|
+
other entities that control, are controlled by, or are under common
|
18
|
+
control with that entity. For the purposes of this definition,
|
19
|
+
"control" means (i) the power, direct or indirect, to cause the
|
20
|
+
direction or management of such entity, whether by contract or
|
21
|
+
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
22
|
+
outstanding shares, or (iii) beneficial ownership of such entity.
|
23
|
+
|
24
|
+
"You" (or "Your") shall mean an individual or Legal Entity
|
25
|
+
exercising permissions granted by this License.
|
26
|
+
|
27
|
+
"Source" form shall mean the preferred form for making modifications,
|
28
|
+
including but not limited to software source code, documentation
|
29
|
+
source, and configuration files.
|
30
|
+
|
31
|
+
"Object" form shall mean any form resulting from mechanical
|
32
|
+
transformation or translation of a Source form, including but
|
33
|
+
not limited to compiled object code, generated documentation,
|
34
|
+
and conversions to other media types.
|
35
|
+
|
36
|
+
"Work" shall mean the work of authorship, whether in Source or
|
37
|
+
Object form, made available under the License, as indicated by a
|
38
|
+
copyright notice that is included in or attached to the work
|
39
|
+
(an example is provided in the Appendix below).
|
40
|
+
|
41
|
+
"Derivative Works" shall mean any work, whether in Source or Object
|
42
|
+
form, that is based on (or derived from) the Work and for which the
|
43
|
+
editorial revisions, annotations, elaborations, or other modifications
|
44
|
+
represent, as a whole, an original work of authorship. For the purposes
|
45
|
+
of this License, Derivative Works shall not include works that remain
|
46
|
+
separable from, or merely link (or bind by name) to the interfaces of,
|
47
|
+
the Work and Derivative Works thereof.
|
48
|
+
|
49
|
+
"Contribution" shall mean any work of authorship, including
|
50
|
+
the original version of the Work and any modifications or additions
|
51
|
+
to that Work or Derivative Works thereof, that is intentionally
|
52
|
+
submitted to Licensor for inclusion in the Work by the copyright owner
|
53
|
+
or by an individual or Legal Entity authorized to submit on behalf of
|
54
|
+
the copyright owner. For the purposes of this definition, "submitted"
|
55
|
+
means any form of electronic, verbal, or written communication sent
|
56
|
+
to the Licensor or its representatives, including but not limited to
|
57
|
+
communication on electronic mailing lists, source code control systems,
|
58
|
+
and issue tracking systems that are managed by, or on behalf of, the
|
59
|
+
Licensor for the purpose of discussing and improving the Work, but
|
60
|
+
excluding communication that is conspicuously marked or otherwise
|
61
|
+
designated in writing by the copyright owner as "Not a Contribution."
|
62
|
+
|
63
|
+
"Contributor" shall mean Licensor and any individual or Legal Entity
|
64
|
+
on behalf of whom a Contribution has been received by Licensor and
|
65
|
+
subsequently incorporated within the Work.
|
66
|
+
|
67
|
+
2. Grant of Copyright License. Subject to the terms and conditions of
|
68
|
+
this License, each Contributor hereby grants to You a perpetual,
|
69
|
+
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
70
|
+
copyright license to reproduce, prepare Derivative Works of,
|
71
|
+
publicly display, publicly perform, sublicense, and distribute the
|
72
|
+
Work and such Derivative Works in Source or Object form.
|
73
|
+
|
74
|
+
3. Grant of Patent License. Subject to the terms and conditions of
|
75
|
+
this License, each Contributor hereby grants to You a perpetual,
|
76
|
+
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
77
|
+
(except as stated in this section) patent license to make, have made,
|
78
|
+
use, offer to sell, sell, import, and otherwise transfer the Work,
|
79
|
+
where such license applies only to those patent claims licensable
|
80
|
+
by such Contributor that are necessarily infringed by their
|
81
|
+
Contribution(s) alone or by combination of their Contribution(s)
|
82
|
+
with the Work to which such Contribution(s) was submitted. If You
|
83
|
+
institute patent litigation against any entity (including a
|
84
|
+
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
85
|
+
or a Contribution incorporated within the Work constitutes direct
|
86
|
+
or contributory patent infringement, then any patent licenses
|
87
|
+
granted to You under this License for that Work shall terminate
|
88
|
+
as of the date such litigation is filed.
|
89
|
+
|
90
|
+
4. Redistribution. You may reproduce and distribute copies of the
|
91
|
+
Work or Derivative Works thereof in any medium, with or without
|
92
|
+
modifications, and in Source or Object form, provided that You
|
93
|
+
meet the following conditions:
|
94
|
+
|
95
|
+
(a) You must give any other recipients of the Work or
|
96
|
+
Derivative Works a copy of this License; and
|
97
|
+
|
98
|
+
(b) You must cause any modified files to carry prominent notices
|
99
|
+
stating that You changed the files; and
|
100
|
+
|
101
|
+
(c) You must retain, in the Source form of any Derivative Works
|
102
|
+
that You distribute, all copyright, patent, trademark, and
|
103
|
+
attribution notices from the Source form of the Work,
|
104
|
+
excluding those notices that do not pertain to any part of
|
105
|
+
the Derivative Works; and
|
106
|
+
|
107
|
+
(d) If the Work includes a "NOTICE" text file as part of its
|
108
|
+
distribution, then any Derivative Works that You distribute must
|
109
|
+
include a readable copy of the attribution notices contained
|
110
|
+
within such NOTICE file, excluding those notices that do not
|
111
|
+
pertain to any part of the Derivative Works, in at least one
|
112
|
+
of the following places: within a NOTICE text file distributed
|
113
|
+
as part of the Derivative Works; within the Source form or
|
114
|
+
documentation, if provided along with the Derivative Works; or,
|
115
|
+
within a display generated by the Derivative Works, if and
|
116
|
+
wherever such third-party notices normally appear. The contents
|
117
|
+
of the NOTICE file are for informational purposes only and
|
118
|
+
do not modify the License. You may add Your own attribution
|
119
|
+
notices within Derivative Works that You distribute, alongside
|
120
|
+
or as an addendum to the NOTICE text from the Work, provided
|
121
|
+
that such additional attribution notices cannot be construed
|
122
|
+
as modifying the License.
|
123
|
+
|
124
|
+
You may add Your own copyright statement to Your modifications and
|
125
|
+
may provide additional or different license terms and conditions
|
126
|
+
for use, reproduction, or distribution of Your modifications, or
|
127
|
+
for any such Derivative Works as a whole, provided Your use,
|
128
|
+
reproduction, and distribution of the Work otherwise complies with
|
129
|
+
the conditions stated in this License.
|
130
|
+
|
131
|
+
5. Submission of Contributions. Unless You explicitly state otherwise,
|
132
|
+
any Contribution intentionally submitted for inclusion in the Work
|
133
|
+
by You to the Licensor shall be under the terms and conditions of
|
134
|
+
this License, without any additional terms or conditions.
|
135
|
+
Notwithstanding the above, nothing herein shall supersede or modify
|
136
|
+
the terms of any separate license agreement you may have executed
|
137
|
+
with Licensor regarding such Contributions.
|
138
|
+
|
139
|
+
6. Trademarks. This License does not grant permission to use the trade
|
140
|
+
names, trademarks, service marks, or product names of the Licensor,
|
141
|
+
except as required for reasonable and customary use in describing the
|
142
|
+
origin of the Work and reproducing the content of the NOTICE file.
|
143
|
+
|
144
|
+
7. Disclaimer of Warranty. Unless required by applicable law or
|
145
|
+
agreed to in writing, Licensor provides the Work (and each
|
146
|
+
Contributor provides its Contributions) on an "AS IS" BASIS,
|
147
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
148
|
+
implied, including, without limitation, any warranties or conditions
|
149
|
+
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
150
|
+
PARTICULAR PURPOSE. You are solely responsible for determining the
|
151
|
+
appropriateness of using or redistributing the Work and assume any
|
152
|
+
risks associated with Your exercise of permissions under this License.
|
153
|
+
|
154
|
+
8. Limitation of Liability. In no event and under no legal theory,
|
155
|
+
whether in tort (including negligence), contract, or otherwise,
|
156
|
+
unless required by applicable law (such as deliberate and grossly
|
157
|
+
negligent acts) or agreed to in writing, shall any Contributor be
|
158
|
+
liable to You for damages, including any direct, indirect, special,
|
159
|
+
incidental, or consequential damages of any character arising as a
|
160
|
+
result of this License or out of the use or inability to use the
|
161
|
+
Work (including but not limited to damages for loss of goodwill,
|
162
|
+
work stoppage, computer failure or malfunction, or any and all
|
163
|
+
other commercial damages or losses), even if such Contributor
|
164
|
+
has been advised of the possibility of such damages.
|
165
|
+
|
166
|
+
9. Accepting Warranty or Additional Liability. While redistributing
|
167
|
+
the Work or Derivative Works thereof, You may choose to offer,
|
168
|
+
and charge a fee for, acceptance of support, warranty, indemnity,
|
169
|
+
or other liability obligations and/or rights consistent with this
|
170
|
+
License. However, in accepting such obligations, You may act only
|
171
|
+
on Your own behalf and on Your sole responsibility, not on behalf
|
172
|
+
of any other Contributor, and only if You agree to indemnify,
|
173
|
+
defend, and hold each Contributor harmless for any liability
|
174
|
+
incurred by, or claims asserted against, such Contributor by reason
|
175
|
+
of your accepting any such warranty or additional liability.
|
176
|
+
|
177
|
+
END OF TERMS AND CONDITIONS
|
178
|
+
|
179
|
+
APPENDIX: How to apply the Apache License to your work.
|
180
|
+
|
181
|
+
To apply the Apache License to your work, attach the following
|
182
|
+
boilerplate notice, with the fields enclosed by brackets "[]"
|
183
|
+
replaced with your own identifying information. (Don't include
|
184
|
+
the brackets!) The text should be enclosed in the appropriate
|
185
|
+
comment syntax for the file format. We also recommend that a
|
186
|
+
file or class name and description of purpose be included on the
|
187
|
+
same "printed page" as the copyright notice for easier
|
188
|
+
identification within third-party archives.
|
189
|
+
|
190
|
+
Copyright [yyyy] [name of copyright owner]
|
191
|
+
|
192
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
193
|
+
you may not use this file except in compliance with the License.
|
194
|
+
You may obtain a copy of the License at
|
195
|
+
|
196
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
197
|
+
|
198
|
+
Unless required by applicable law or agreed to in writing, software
|
199
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
200
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
201
|
+
See the License for the specific language governing permissions and
|
202
|
+
limitations under the License.
|
data/OVERVIEW.md
ADDED
@@ -0,0 +1,96 @@
|
|
1
|
+
# Simple REST client for version V1beta5 of the App Engine Admin API
|
2
|
+
|
3
|
+
This is a simple client library for version V1beta5 of the App Engine Admin API. It provides:
|
4
|
+
|
5
|
+
* A client object that connects to the HTTP/JSON REST endpoint for the service.
|
6
|
+
* Ruby objects for data structures related to the service.
|
7
|
+
* Integration with the googleauth gem for authentication using OAuth, API keys, and service accounts.
|
8
|
+
* Control of retry, pagination, and timeouts.
|
9
|
+
|
10
|
+
Note that although this client library is supported and will continue to be updated to track changes to the service, it is otherwise considered complete and not under active development. Many Google services, especially Google Cloud Platform services, may provide a more modern client that is under more active development and improvement. See the section below titled *Which client should I use?* for more information.
|
11
|
+
|
12
|
+
## Getting started
|
13
|
+
|
14
|
+
### Before you begin
|
15
|
+
|
16
|
+
There are a few setup steps you need to complete before you can use this library:
|
17
|
+
|
18
|
+
1. If you don't already have a Google account, [sign up](https://www.google.com/accounts).
|
19
|
+
2. If you have never created a Google APIs Console project, read about [Managing Projects](https://cloud.google.com/resource-manager/docs/creating-managing-projects) and create a project in the [Google API Console](https://console.cloud.google.com/).
|
20
|
+
3. Most APIs need to be enabled for your project. [Enable it](https://console.cloud.google.com/apis/library/appengine.googleapis.com) in the console.
|
21
|
+
|
22
|
+
### Installation
|
23
|
+
|
24
|
+
Add this line to your application's Gemfile:
|
25
|
+
|
26
|
+
```ruby
|
27
|
+
gem 'google-apis-appengine_v1beta5', '~> 0.1'
|
28
|
+
```
|
29
|
+
|
30
|
+
And then execute:
|
31
|
+
|
32
|
+
```
|
33
|
+
$ bundle
|
34
|
+
```
|
35
|
+
|
36
|
+
Or install it yourself as:
|
37
|
+
|
38
|
+
```
|
39
|
+
$ gem install google-apis-appengine_v1beta5
|
40
|
+
```
|
41
|
+
|
42
|
+
### Creating a client object
|
43
|
+
|
44
|
+
Once the gem is installed, you can load the client code and instantiate a client.
|
45
|
+
|
46
|
+
```ruby
|
47
|
+
# Load the client
|
48
|
+
require "google/apis/appengine_v1beta5"
|
49
|
+
|
50
|
+
# Create a client object
|
51
|
+
client = Google::Apis::AppengineV1beta5::AppengineService.new
|
52
|
+
|
53
|
+
# Authenticate calls
|
54
|
+
client.authentication = # ... use the googleauth gem to create credentials
|
55
|
+
```
|
56
|
+
|
57
|
+
See the class reference docs for information on the methods you can call from a client.
|
58
|
+
|
59
|
+
## Documentation
|
60
|
+
|
61
|
+
More detailed descriptions of the Google simple REST clients are available in two documents.
|
62
|
+
|
63
|
+
* The [Usage Guide](https://github.com/googleapis/google-api-ruby-client/blob/master/docs/usage-guide.md) discusses how to make API calls, how to use the provided data structures, and how to work the various features of the client library, including media upload and download, error handling, retries, pagination, and logging.
|
64
|
+
* The [Auth Guide](https://github.com/googleapis/google-api-ruby-client/blob/master/docs/auth-guide.md) discusses authentication in the client libraries, including API keys, OAuth 2.0, service accounts, and environment variables.
|
65
|
+
|
66
|
+
(Note: the above documents are written for the simple REST clients in general, and their examples may not reflect the Appengine service in particular.)
|
67
|
+
|
68
|
+
For reference information on specific calls in the App Engine Admin API, see the {Google::Apis::AppengineV1beta5::AppengineService class reference docs}.
|
69
|
+
|
70
|
+
## Which client should I use?
|
71
|
+
|
72
|
+
Google provides two types of Ruby API client libraries: **simple REST clients** and **modern clients**.
|
73
|
+
|
74
|
+
This library, `google-apis-appengine_v1beta5`, is a simple REST client. You can identify these clients by their gem names, which are always in the form `google-apis-<servicename>_<serviceversion>`. The simple REST clients connect to HTTP/JSON REST endpoints and are automatically generated from service discovery documents. They support most API functionality, but their class interfaces are sometimes awkward.
|
75
|
+
|
76
|
+
Modern clients are produced by a modern code generator, sometimes combined with hand-crafted functionality. Most modern clients connect to high-performance gRPC endpoints, although a few are backed by REST services. Modern clients are available for many Google services, especially Google Cloud Platform services, but do not yet support all the services covered by the simple clients.
|
77
|
+
|
78
|
+
Gem names for modern clients are often of the form `google-cloud-<service_name>`. (For example, [google-cloud-pubsub](https://rubygems.org/gems/google-cloud-pubsub).) Note that most modern clients also have corresponding "versioned" gems with names like `google-cloud-<service_name>-<version>`. (For example, [google-cloud-pubsub-v1](https://rubygems.org/gems/google-cloud-pubsub-v1).) The "versioned" gems can be used directly, but often provide lower-level interfaces. In most cases, the main gem is recommended.
|
79
|
+
|
80
|
+
**For most users, we recommend the modern client, if one is available.** Compared with simple clients, modern clients are generally much easier to use and more Ruby-like, support more advanced features such as streaming and long-running operations, and often provide much better performance. You may consider using a simple client instead, if a modern client is not yet available for the service you want to use, or if you are not able to use gRPC on your infrastructure.
|
81
|
+
|
82
|
+
The [product documentation](https://cloud.google.com/appengine/docs/admin-api/) may provide guidance regarding the preferred client library to use.
|
83
|
+
|
84
|
+
## Supported Ruby versions
|
85
|
+
|
86
|
+
This library is supported on Ruby 2.5+.
|
87
|
+
|
88
|
+
Google provides official support for Ruby versions that are actively supported by Ruby Core -- that is, Ruby versions that are either in normal maintenance or in security maintenance, and not end of life. Currently, this means Ruby 2.5 and later. Older versions of Ruby _may_ still work, but are unsupported and not recommended. See https://www.ruby-lang.org/en/downloads/branches/ for details about the Ruby support schedule.
|
89
|
+
|
90
|
+
## License
|
91
|
+
|
92
|
+
This library is licensed under Apache 2.0. Full license text is available in the {file:LICENSE.md LICENSE}.
|
93
|
+
|
94
|
+
## Support
|
95
|
+
|
96
|
+
Please [report bugs at the project on Github](https://github.com/google/google-api-ruby-client/issues). Don't hesitate to [ask questions](http://stackoverflow.com/questions/tagged/google-api-ruby-client) about the client or APIs on [StackOverflow](http://stackoverflow.com).
|
@@ -0,0 +1,15 @@
|
|
1
|
+
# Copyright 2020 Google LLC
|
2
|
+
#
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
4
|
+
# you may not use this file except in compliance with the License.
|
5
|
+
# You may obtain a copy of the License at
|
6
|
+
#
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
8
|
+
#
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
+
# See the License for the specific language governing permissions and
|
13
|
+
# limitations under the License.
|
14
|
+
|
15
|
+
require "google/apis/appengine_v1beta5"
|
@@ -0,0 +1,42 @@
|
|
1
|
+
# Copyright 2020 Google LLC
|
2
|
+
#
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
4
|
+
# you may not use this file except in compliance with the License.
|
5
|
+
# You may obtain a copy of the License at
|
6
|
+
#
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
8
|
+
#
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
+
# See the License for the specific language governing permissions and
|
13
|
+
# limitations under the License.
|
14
|
+
|
15
|
+
require 'google/apis/appengine_v1beta5/service.rb'
|
16
|
+
require 'google/apis/appengine_v1beta5/classes.rb'
|
17
|
+
require 'google/apis/appengine_v1beta5/representations.rb'
|
18
|
+
require 'google/apis/appengine_v1beta5/gem_version.rb'
|
19
|
+
|
20
|
+
module Google
|
21
|
+
module Apis
|
22
|
+
# App Engine Admin API
|
23
|
+
#
|
24
|
+
# Provisions and manages developers' App Engine applications.
|
25
|
+
#
|
26
|
+
# @see https://cloud.google.com/appengine/docs/admin-api/
|
27
|
+
module AppengineV1beta5
|
28
|
+
# Version of the App Engine Admin API this client connects to.
|
29
|
+
# This is NOT the gem version.
|
30
|
+
VERSION = 'V1beta5'
|
31
|
+
|
32
|
+
# View and manage your applications deployed on Google App Engine
|
33
|
+
AUTH_APPENGINE_ADMIN = 'https://www.googleapis.com/auth/appengine.admin'
|
34
|
+
|
35
|
+
# View and manage your data across Google Cloud Platform services
|
36
|
+
AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
|
37
|
+
|
38
|
+
# View your data across Google Cloud Platform services
|
39
|
+
AUTH_CLOUD_PLATFORM_READ_ONLY = 'https://www.googleapis.com/auth/cloud-platform.read-only'
|
40
|
+
end
|
41
|
+
end
|
42
|
+
end
|
@@ -0,0 +1,2241 @@
|
|
1
|
+
# Copyright 2020 Google LLC
|
2
|
+
#
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
4
|
+
# you may not use this file except in compliance with the License.
|
5
|
+
# You may obtain a copy of the License at
|
6
|
+
#
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
8
|
+
#
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
+
# See the License for the specific language governing permissions and
|
13
|
+
# limitations under the License.
|
14
|
+
|
15
|
+
require 'date'
|
16
|
+
require 'google/apis/core/base_service'
|
17
|
+
require 'google/apis/core/json_representation'
|
18
|
+
require 'google/apis/core/hashable'
|
19
|
+
require 'google/apis/errors'
|
20
|
+
|
21
|
+
module Google
|
22
|
+
module Apis
|
23
|
+
module AppengineV1beta5
|
24
|
+
|
25
|
+
# Google Cloud Endpoints (https://cloud.google.com/appengine/docs/python/
|
26
|
+
# endpoints/) configuration for API handlers.
|
27
|
+
class ApiConfigHandler
|
28
|
+
include Google::Apis::Core::Hashable
|
29
|
+
|
30
|
+
# Action to take when users access resources that require authentication.
|
31
|
+
# Defaults to redirect.
|
32
|
+
# Corresponds to the JSON property `authFailAction`
|
33
|
+
# @return [String]
|
34
|
+
attr_accessor :auth_fail_action
|
35
|
+
|
36
|
+
# Level of login required to access this resource. Defaults to optional.
|
37
|
+
# Corresponds to the JSON property `login`
|
38
|
+
# @return [String]
|
39
|
+
attr_accessor :login
|
40
|
+
|
41
|
+
# Path to the script from the application root directory.
|
42
|
+
# Corresponds to the JSON property `script`
|
43
|
+
# @return [String]
|
44
|
+
attr_accessor :script
|
45
|
+
|
46
|
+
# Security (HTTPS) enforcement for this URL.
|
47
|
+
# Corresponds to the JSON property `securityLevel`
|
48
|
+
# @return [String]
|
49
|
+
attr_accessor :security_level
|
50
|
+
|
51
|
+
# URL to serve the endpoint at.
|
52
|
+
# Corresponds to the JSON property `url`
|
53
|
+
# @return [String]
|
54
|
+
attr_accessor :url
|
55
|
+
|
56
|
+
def initialize(**args)
|
57
|
+
update!(**args)
|
58
|
+
end
|
59
|
+
|
60
|
+
# Update properties of this object
|
61
|
+
def update!(**args)
|
62
|
+
@auth_fail_action = args[:auth_fail_action] if args.key?(:auth_fail_action)
|
63
|
+
@login = args[:login] if args.key?(:login)
|
64
|
+
@script = args[:script] if args.key?(:script)
|
65
|
+
@security_level = args[:security_level] if args.key?(:security_level)
|
66
|
+
@url = args[:url] if args.key?(:url)
|
67
|
+
end
|
68
|
+
end
|
69
|
+
|
70
|
+
# Uses Google Cloud Endpoints to handle requests.
|
71
|
+
class ApiEndpointHandler
|
72
|
+
include Google::Apis::Core::Hashable
|
73
|
+
|
74
|
+
# Path to the script from the application root directory.
|
75
|
+
# Corresponds to the JSON property `scriptPath`
|
76
|
+
# @return [String]
|
77
|
+
attr_accessor :script_path
|
78
|
+
|
79
|
+
def initialize(**args)
|
80
|
+
update!(**args)
|
81
|
+
end
|
82
|
+
|
83
|
+
# Update properties of this object
|
84
|
+
def update!(**args)
|
85
|
+
@script_path = args[:script_path] if args.key?(:script_path)
|
86
|
+
end
|
87
|
+
end
|
88
|
+
|
89
|
+
# An Application resource contains the top-level configuration of an App Engine
|
90
|
+
# application.
|
91
|
+
class Application
|
92
|
+
include Google::Apis::Core::Hashable
|
93
|
+
|
94
|
+
# Google Apps authentication domain that controls which users can access this
|
95
|
+
# application.Defaults to open access for any Google Account.
|
96
|
+
# Corresponds to the JSON property `authDomain`
|
97
|
+
# @return [String]
|
98
|
+
attr_accessor :auth_domain
|
99
|
+
|
100
|
+
# A Google Cloud Storage bucket that can be used for storing files associated
|
101
|
+
# with this application. This bucket is associated with the application and can
|
102
|
+
# be used by the gcloud deployment commands.@OutputOnly
|
103
|
+
# Corresponds to the JSON property `codeBucket`
|
104
|
+
# @return [String]
|
105
|
+
attr_accessor :code_bucket
|
106
|
+
|
107
|
+
# A Google Cloud Storage bucket that can be used by the application to store
|
108
|
+
# content.@OutputOnly
|
109
|
+
# Corresponds to the JSON property `defaultBucket`
|
110
|
+
# @return [String]
|
111
|
+
attr_accessor :default_bucket
|
112
|
+
|
113
|
+
# Cookie expiration policy for this application.
|
114
|
+
# Corresponds to the JSON property `defaultCookieExpiration`
|
115
|
+
# @return [String]
|
116
|
+
attr_accessor :default_cookie_expiration
|
117
|
+
|
118
|
+
# Hostname used to reach the application, as resolved by App Engine.@OutputOnly
|
119
|
+
# Corresponds to the JSON property `defaultHostname`
|
120
|
+
# @return [String]
|
121
|
+
attr_accessor :default_hostname
|
122
|
+
|
123
|
+
# HTTP path dispatch rules for requests to the application that do not
|
124
|
+
# explicitly target a service or version. Rules are order-dependent.@OutputOnly
|
125
|
+
# Corresponds to the JSON property `dispatchRules`
|
126
|
+
# @return [Array<Google::Apis::AppengineV1beta5::UrlDispatchRule>]
|
127
|
+
attr_accessor :dispatch_rules
|
128
|
+
|
129
|
+
# Identity-Aware Proxy
|
130
|
+
# Corresponds to the JSON property `iap`
|
131
|
+
# @return [Google::Apis::AppengineV1beta5::IdentityAwareProxy]
|
132
|
+
attr_accessor :iap
|
133
|
+
|
134
|
+
# Identifier of the Application resource. This identifier is equivalent to the
|
135
|
+
# project ID of the Google Cloud Platform project where you want to deploy your
|
136
|
+
# application. Example: myapp.
|
137
|
+
# Corresponds to the JSON property `id`
|
138
|
+
# @return [String]
|
139
|
+
attr_accessor :id
|
140
|
+
|
141
|
+
# Location from which this application will be run. Application instances will
|
142
|
+
# run out of data centers in the chosen location, which is also where all of the
|
143
|
+
# application's end user content is stored.Defaults to us-central.Options are:us-
|
144
|
+
# central - Central USeurope-west - Western Europeus-east1 - Eastern US
|
145
|
+
# Corresponds to the JSON property `location`
|
146
|
+
# @return [String]
|
147
|
+
attr_accessor :location
|
148
|
+
|
149
|
+
# Full path to the Application resource in the API. Example: apps/myapp.@
|
150
|
+
# OutputOnly
|
151
|
+
# Corresponds to the JSON property `name`
|
152
|
+
# @return [String]
|
153
|
+
attr_accessor :name
|
154
|
+
|
155
|
+
def initialize(**args)
|
156
|
+
update!(**args)
|
157
|
+
end
|
158
|
+
|
159
|
+
# Update properties of this object
|
160
|
+
def update!(**args)
|
161
|
+
@auth_domain = args[:auth_domain] if args.key?(:auth_domain)
|
162
|
+
@code_bucket = args[:code_bucket] if args.key?(:code_bucket)
|
163
|
+
@default_bucket = args[:default_bucket] if args.key?(:default_bucket)
|
164
|
+
@default_cookie_expiration = args[:default_cookie_expiration] if args.key?(:default_cookie_expiration)
|
165
|
+
@default_hostname = args[:default_hostname] if args.key?(:default_hostname)
|
166
|
+
@dispatch_rules = args[:dispatch_rules] if args.key?(:dispatch_rules)
|
167
|
+
@iap = args[:iap] if args.key?(:iap)
|
168
|
+
@id = args[:id] if args.key?(:id)
|
169
|
+
@location = args[:location] if args.key?(:location)
|
170
|
+
@name = args[:name] if args.key?(:name)
|
171
|
+
end
|
172
|
+
end
|
173
|
+
|
174
|
+
# Automatic scaling is based on request rate, response latencies, and other
|
175
|
+
# application metrics.
|
176
|
+
class AutomaticScaling
|
177
|
+
include Google::Apis::Core::Hashable
|
178
|
+
|
179
|
+
# The time period that the Autoscaler (https://cloud.google.com/compute/docs/
|
180
|
+
# autoscaler/) should wait before it starts collecting information from a new
|
181
|
+
# instance. This prevents the autoscaler from collecting information when the
|
182
|
+
# instance is initializing, during which the collected usage would not be
|
183
|
+
# reliable. Only applicable in the App Engine flexible environment.
|
184
|
+
# Corresponds to the JSON property `coolDownPeriod`
|
185
|
+
# @return [String]
|
186
|
+
attr_accessor :cool_down_period
|
187
|
+
|
188
|
+
# Target scaling by CPU usage.
|
189
|
+
# Corresponds to the JSON property `cpuUtilization`
|
190
|
+
# @return [Google::Apis::AppengineV1beta5::CpuUtilization]
|
191
|
+
attr_accessor :cpu_utilization
|
192
|
+
|
193
|
+
# Target scaling by disk usage. Only applicable for VM runtimes.
|
194
|
+
# Corresponds to the JSON property `diskUtilization`
|
195
|
+
# @return [Google::Apis::AppengineV1beta5::DiskUtilization]
|
196
|
+
attr_accessor :disk_utilization
|
197
|
+
|
198
|
+
# Number of concurrent requests an automatic scaling instance can accept before
|
199
|
+
# the scheduler spawns a new instance.Defaults to a runtime-specific value.
|
200
|
+
# Corresponds to the JSON property `maxConcurrentRequests`
|
201
|
+
# @return [Fixnum]
|
202
|
+
attr_accessor :max_concurrent_requests
|
203
|
+
|
204
|
+
# Maximum number of idle instances that should be maintained for this version.
|
205
|
+
# Corresponds to the JSON property `maxIdleInstances`
|
206
|
+
# @return [Fixnum]
|
207
|
+
attr_accessor :max_idle_instances
|
208
|
+
|
209
|
+
# Maximum amount of time that a request should wait in the pending queue before
|
210
|
+
# starting a new instance to handle it.
|
211
|
+
# Corresponds to the JSON property `maxPendingLatency`
|
212
|
+
# @return [String]
|
213
|
+
attr_accessor :max_pending_latency
|
214
|
+
|
215
|
+
# Maximum number of instances that should be started to handle requests.
|
216
|
+
# Corresponds to the JSON property `maxTotalInstances`
|
217
|
+
# @return [Fixnum]
|
218
|
+
attr_accessor :max_total_instances
|
219
|
+
|
220
|
+
# Minimum number of idle instances that should be maintained for this version.
|
221
|
+
# Only applicable for the default version of a module.
|
222
|
+
# Corresponds to the JSON property `minIdleInstances`
|
223
|
+
# @return [Fixnum]
|
224
|
+
attr_accessor :min_idle_instances
|
225
|
+
|
226
|
+
# Minimum amount of time a request should wait in the pending queue before
|
227
|
+
# starting a new instance to handle it.
|
228
|
+
# Corresponds to the JSON property `minPendingLatency`
|
229
|
+
# @return [String]
|
230
|
+
attr_accessor :min_pending_latency
|
231
|
+
|
232
|
+
# Minimum number of instances that should be maintained for this version.
|
233
|
+
# Corresponds to the JSON property `minTotalInstances`
|
234
|
+
# @return [Fixnum]
|
235
|
+
attr_accessor :min_total_instances
|
236
|
+
|
237
|
+
# Target scaling by network usage. Only applicable for VM runtimes.
|
238
|
+
# Corresponds to the JSON property `networkUtilization`
|
239
|
+
# @return [Google::Apis::AppengineV1beta5::NetworkUtilization]
|
240
|
+
attr_accessor :network_utilization
|
241
|
+
|
242
|
+
# Target scaling by request utilization. Only applicable for VM runtimes.
|
243
|
+
# Corresponds to the JSON property `requestUtilization`
|
244
|
+
# @return [Google::Apis::AppengineV1beta5::RequestUtilization]
|
245
|
+
attr_accessor :request_utilization
|
246
|
+
|
247
|
+
def initialize(**args)
|
248
|
+
update!(**args)
|
249
|
+
end
|
250
|
+
|
251
|
+
# Update properties of this object
|
252
|
+
def update!(**args)
|
253
|
+
@cool_down_period = args[:cool_down_period] if args.key?(:cool_down_period)
|
254
|
+
@cpu_utilization = args[:cpu_utilization] if args.key?(:cpu_utilization)
|
255
|
+
@disk_utilization = args[:disk_utilization] if args.key?(:disk_utilization)
|
256
|
+
@max_concurrent_requests = args[:max_concurrent_requests] if args.key?(:max_concurrent_requests)
|
257
|
+
@max_idle_instances = args[:max_idle_instances] if args.key?(:max_idle_instances)
|
258
|
+
@max_pending_latency = args[:max_pending_latency] if args.key?(:max_pending_latency)
|
259
|
+
@max_total_instances = args[:max_total_instances] if args.key?(:max_total_instances)
|
260
|
+
@min_idle_instances = args[:min_idle_instances] if args.key?(:min_idle_instances)
|
261
|
+
@min_pending_latency = args[:min_pending_latency] if args.key?(:min_pending_latency)
|
262
|
+
@min_total_instances = args[:min_total_instances] if args.key?(:min_total_instances)
|
263
|
+
@network_utilization = args[:network_utilization] if args.key?(:network_utilization)
|
264
|
+
@request_utilization = args[:request_utilization] if args.key?(:request_utilization)
|
265
|
+
end
|
266
|
+
end
|
267
|
+
|
268
|
+
# A service with basic scaling will create an instance when the application
|
269
|
+
# receives a request. The instance will be turned down when the app becomes idle.
|
270
|
+
# Basic scaling is ideal for work that is intermittent or driven by user
|
271
|
+
# activity.
|
272
|
+
class BasicScaling
|
273
|
+
include Google::Apis::Core::Hashable
|
274
|
+
|
275
|
+
# Duration of time after the last request that an instance must wait before the
|
276
|
+
# instance is shut down.
|
277
|
+
# Corresponds to the JSON property `idleTimeout`
|
278
|
+
# @return [String]
|
279
|
+
attr_accessor :idle_timeout
|
280
|
+
|
281
|
+
# Maximum number of instances to create for this version.
|
282
|
+
# Corresponds to the JSON property `maxInstances`
|
283
|
+
# @return [Fixnum]
|
284
|
+
attr_accessor :max_instances
|
285
|
+
|
286
|
+
def initialize(**args)
|
287
|
+
update!(**args)
|
288
|
+
end
|
289
|
+
|
290
|
+
# Update properties of this object
|
291
|
+
def update!(**args)
|
292
|
+
@idle_timeout = args[:idle_timeout] if args.key?(:idle_timeout)
|
293
|
+
@max_instances = args[:max_instances] if args.key?(:max_instances)
|
294
|
+
end
|
295
|
+
end
|
296
|
+
|
297
|
+
# Docker image that is used to create a container and start a VM instance for
|
298
|
+
# the version that you deploy. Only applicable for instances running in the App
|
299
|
+
# Engine flexible environment.
|
300
|
+
class ContainerInfo
|
301
|
+
include Google::Apis::Core::Hashable
|
302
|
+
|
303
|
+
# URI to the hosted container image in Google Container Registry. The URI must
|
304
|
+
# be fully qualified and include a tag or digest. Examples: "gcr.io/my-project/
|
305
|
+
# image:tag" or "gcr.io/my-project/image@digest"
|
306
|
+
# Corresponds to the JSON property `image`
|
307
|
+
# @return [String]
|
308
|
+
attr_accessor :image
|
309
|
+
|
310
|
+
def initialize(**args)
|
311
|
+
update!(**args)
|
312
|
+
end
|
313
|
+
|
314
|
+
# Update properties of this object
|
315
|
+
def update!(**args)
|
316
|
+
@image = args[:image] if args.key?(:image)
|
317
|
+
end
|
318
|
+
end
|
319
|
+
|
320
|
+
# Target scaling by CPU usage.
|
321
|
+
class CpuUtilization
|
322
|
+
include Google::Apis::Core::Hashable
|
323
|
+
|
324
|
+
# Period of time over which CPU utilization is calculated.
|
325
|
+
# Corresponds to the JSON property `aggregationWindowLength`
|
326
|
+
# @return [String]
|
327
|
+
attr_accessor :aggregation_window_length
|
328
|
+
|
329
|
+
# Target CPU utilization ratio to maintain when scaling. Must be between 0 and 1.
|
330
|
+
# Corresponds to the JSON property `targetUtilization`
|
331
|
+
# @return [Float]
|
332
|
+
attr_accessor :target_utilization
|
333
|
+
|
334
|
+
def initialize(**args)
|
335
|
+
update!(**args)
|
336
|
+
end
|
337
|
+
|
338
|
+
# Update properties of this object
|
339
|
+
def update!(**args)
|
340
|
+
@aggregation_window_length = args[:aggregation_window_length] if args.key?(:aggregation_window_length)
|
341
|
+
@target_utilization = args[:target_utilization] if args.key?(:target_utilization)
|
342
|
+
end
|
343
|
+
end
|
344
|
+
|
345
|
+
# Metadata for the given google.longrunning.Operation during a google.appengine.
|
346
|
+
# v1.CreateVersionRequest.
|
347
|
+
class CreateVersionMetadataV1
|
348
|
+
include Google::Apis::Core::Hashable
|
349
|
+
|
350
|
+
# The Cloud Build ID if one was created as part of the version create. @
|
351
|
+
# OutputOnly
|
352
|
+
# Corresponds to the JSON property `cloudBuildId`
|
353
|
+
# @return [String]
|
354
|
+
attr_accessor :cloud_build_id
|
355
|
+
|
356
|
+
def initialize(**args)
|
357
|
+
update!(**args)
|
358
|
+
end
|
359
|
+
|
360
|
+
# Update properties of this object
|
361
|
+
def update!(**args)
|
362
|
+
@cloud_build_id = args[:cloud_build_id] if args.key?(:cloud_build_id)
|
363
|
+
end
|
364
|
+
end
|
365
|
+
|
366
|
+
# Metadata for the given google.longrunning.Operation during a google.appengine.
|
367
|
+
# v1alpha.CreateVersionRequest.
|
368
|
+
class CreateVersionMetadataV1Alpha
|
369
|
+
include Google::Apis::Core::Hashable
|
370
|
+
|
371
|
+
# The Cloud Build ID if one was created as part of the version create. @
|
372
|
+
# OutputOnly
|
373
|
+
# Corresponds to the JSON property `cloudBuildId`
|
374
|
+
# @return [String]
|
375
|
+
attr_accessor :cloud_build_id
|
376
|
+
|
377
|
+
def initialize(**args)
|
378
|
+
update!(**args)
|
379
|
+
end
|
380
|
+
|
381
|
+
# Update properties of this object
|
382
|
+
def update!(**args)
|
383
|
+
@cloud_build_id = args[:cloud_build_id] if args.key?(:cloud_build_id)
|
384
|
+
end
|
385
|
+
end
|
386
|
+
|
387
|
+
# Metadata for the given google.longrunning.Operation during a google.appengine.
|
388
|
+
# v1beta.CreateVersionRequest.
|
389
|
+
class CreateVersionMetadataV1Beta
|
390
|
+
include Google::Apis::Core::Hashable
|
391
|
+
|
392
|
+
# The Cloud Build ID if one was created as part of the version create. @
|
393
|
+
# OutputOnly
|
394
|
+
# Corresponds to the JSON property `cloudBuildId`
|
395
|
+
# @return [String]
|
396
|
+
attr_accessor :cloud_build_id
|
397
|
+
|
398
|
+
def initialize(**args)
|
399
|
+
update!(**args)
|
400
|
+
end
|
401
|
+
|
402
|
+
# Update properties of this object
|
403
|
+
def update!(**args)
|
404
|
+
@cloud_build_id = args[:cloud_build_id] if args.key?(:cloud_build_id)
|
405
|
+
end
|
406
|
+
end
|
407
|
+
|
408
|
+
# Request message for Instances.DebugInstance.
|
409
|
+
class DebugInstanceRequest
|
410
|
+
include Google::Apis::Core::Hashable
|
411
|
+
|
412
|
+
# Public SSH key to add to the instance. Examples:
|
413
|
+
# [USERNAME]:ssh-rsa [KEY_VALUE] [USERNAME]
|
414
|
+
# [USERNAME]:ssh-rsa [KEY_VALUE] google-ssh `"userName":"[USERNAME]","expireOn":"
|
415
|
+
# [EXPIRE_TIME]"`For more information, see Adding and Removing SSH Keys (https://
|
416
|
+
# cloud.google.com/compute/docs/instances/adding-removing-ssh-keys).
|
417
|
+
# Corresponds to the JSON property `sshKey`
|
418
|
+
# @return [String]
|
419
|
+
attr_accessor :ssh_key
|
420
|
+
|
421
|
+
def initialize(**args)
|
422
|
+
update!(**args)
|
423
|
+
end
|
424
|
+
|
425
|
+
# Update properties of this object
|
426
|
+
def update!(**args)
|
427
|
+
@ssh_key = args[:ssh_key] if args.key?(:ssh_key)
|
428
|
+
end
|
429
|
+
end
|
430
|
+
|
431
|
+
# Code and application artifacts used to deploy a version to App Engine.
|
432
|
+
class Deployment
|
433
|
+
include Google::Apis::Core::Hashable
|
434
|
+
|
435
|
+
# Docker image that is used to create a container and start a VM instance for
|
436
|
+
# the version that you deploy. Only applicable for instances running in the App
|
437
|
+
# Engine flexible environment.
|
438
|
+
# Corresponds to the JSON property `container`
|
439
|
+
# @return [Google::Apis::AppengineV1beta5::ContainerInfo]
|
440
|
+
attr_accessor :container
|
441
|
+
|
442
|
+
# Manifest of the files stored in Google Cloud Storage that are included as part
|
443
|
+
# of this version. All files must be readable using the credentials supplied
|
444
|
+
# with this call.
|
445
|
+
# Corresponds to the JSON property `files`
|
446
|
+
# @return [Hash<String,Google::Apis::AppengineV1beta5::FileInfo>]
|
447
|
+
attr_accessor :files
|
448
|
+
|
449
|
+
# Origin of the source code for this deployment. There can be more than one
|
450
|
+
# source reference per version if source code is distributed among multiple
|
451
|
+
# repositories.
|
452
|
+
# Corresponds to the JSON property `sourceReferences`
|
453
|
+
# @return [Array<Google::Apis::AppengineV1beta5::SourceReference>]
|
454
|
+
attr_accessor :source_references
|
455
|
+
|
456
|
+
def initialize(**args)
|
457
|
+
update!(**args)
|
458
|
+
end
|
459
|
+
|
460
|
+
# Update properties of this object
|
461
|
+
def update!(**args)
|
462
|
+
@container = args[:container] if args.key?(:container)
|
463
|
+
@files = args[:files] if args.key?(:files)
|
464
|
+
@source_references = args[:source_references] if args.key?(:source_references)
|
465
|
+
end
|
466
|
+
end
|
467
|
+
|
468
|
+
# Target scaling by disk usage. Only applicable for VM runtimes.
|
469
|
+
class DiskUtilization
|
470
|
+
include Google::Apis::Core::Hashable
|
471
|
+
|
472
|
+
# Target bytes read per second.
|
473
|
+
# Corresponds to the JSON property `targetReadBytesPerSec`
|
474
|
+
# @return [Fixnum]
|
475
|
+
attr_accessor :target_read_bytes_per_sec
|
476
|
+
|
477
|
+
# Target ops read per second.
|
478
|
+
# Corresponds to the JSON property `targetReadOpsPerSec`
|
479
|
+
# @return [Fixnum]
|
480
|
+
attr_accessor :target_read_ops_per_sec
|
481
|
+
|
482
|
+
# Target bytes written per second.
|
483
|
+
# Corresponds to the JSON property `targetWriteBytesPerSec`
|
484
|
+
# @return [Fixnum]
|
485
|
+
attr_accessor :target_write_bytes_per_sec
|
486
|
+
|
487
|
+
# Target ops written per second.
|
488
|
+
# Corresponds to the JSON property `targetWriteOpsPerSec`
|
489
|
+
# @return [Fixnum]
|
490
|
+
attr_accessor :target_write_ops_per_sec
|
491
|
+
|
492
|
+
def initialize(**args)
|
493
|
+
update!(**args)
|
494
|
+
end
|
495
|
+
|
496
|
+
# Update properties of this object
|
497
|
+
def update!(**args)
|
498
|
+
@target_read_bytes_per_sec = args[:target_read_bytes_per_sec] if args.key?(:target_read_bytes_per_sec)
|
499
|
+
@target_read_ops_per_sec = args[:target_read_ops_per_sec] if args.key?(:target_read_ops_per_sec)
|
500
|
+
@target_write_bytes_per_sec = args[:target_write_bytes_per_sec] if args.key?(:target_write_bytes_per_sec)
|
501
|
+
@target_write_ops_per_sec = args[:target_write_ops_per_sec] if args.key?(:target_write_ops_per_sec)
|
502
|
+
end
|
503
|
+
end
|
504
|
+
|
505
|
+
# Cloud Endpoints (https://cloud.google.com/endpoints) configuration. The
|
506
|
+
# Endpoints API Service provides tooling for serving Open API and gRPC endpoints
|
507
|
+
# via an NGINX proxy. Only valid for App Engine Flexible environment deployments.
|
508
|
+
# The fields here refer to the name and configuration id of a "service" resource
|
509
|
+
# in the Service Management API (https://cloud.google.com/service-management/
|
510
|
+
# overview).
|
511
|
+
class EndpointsApiService
|
512
|
+
include Google::Apis::Core::Hashable
|
513
|
+
|
514
|
+
# Endpoints service configuration id as specified by the Service Management API.
|
515
|
+
# For example "2016-09-19r1"By default, the Endpoints service configuration id
|
516
|
+
# is fixed and config_id must be specified. To keep the Endpoints service
|
517
|
+
# configuration id updated with each rollout, specify RolloutStrategy.MANAGED
|
518
|
+
# and omit config_id.
|
519
|
+
# Corresponds to the JSON property `configId`
|
520
|
+
# @return [String]
|
521
|
+
attr_accessor :config_id
|
522
|
+
|
523
|
+
# Enable or disable trace sampling. By default, this is set to false for enabled.
|
524
|
+
# Corresponds to the JSON property `disableTraceSampling`
|
525
|
+
# @return [Boolean]
|
526
|
+
attr_accessor :disable_trace_sampling
|
527
|
+
alias_method :disable_trace_sampling?, :disable_trace_sampling
|
528
|
+
|
529
|
+
# Endpoints service name which is the name of the "service" resource in the
|
530
|
+
# Service Management API. For example "myapi.endpoints.myproject.cloud.goog"
|
531
|
+
# Corresponds to the JSON property `name`
|
532
|
+
# @return [String]
|
533
|
+
attr_accessor :name
|
534
|
+
|
535
|
+
# Endpoints rollout strategy. If FIXED, config_id must be specified. If MANAGED,
|
536
|
+
# config_id must be omitted.
|
537
|
+
# Corresponds to the JSON property `rolloutStrategy`
|
538
|
+
# @return [String]
|
539
|
+
attr_accessor :rollout_strategy
|
540
|
+
|
541
|
+
def initialize(**args)
|
542
|
+
update!(**args)
|
543
|
+
end
|
544
|
+
|
545
|
+
# Update properties of this object
|
546
|
+
def update!(**args)
|
547
|
+
@config_id = args[:config_id] if args.key?(:config_id)
|
548
|
+
@disable_trace_sampling = args[:disable_trace_sampling] if args.key?(:disable_trace_sampling)
|
549
|
+
@name = args[:name] if args.key?(:name)
|
550
|
+
@rollout_strategy = args[:rollout_strategy] if args.key?(:rollout_strategy)
|
551
|
+
end
|
552
|
+
end
|
553
|
+
|
554
|
+
# Custom static error page to be served when an error occurs.
|
555
|
+
class ErrorHandler
|
556
|
+
include Google::Apis::Core::Hashable
|
557
|
+
|
558
|
+
# Error condition this handler applies to.
|
559
|
+
# Corresponds to the JSON property `errorCode`
|
560
|
+
# @return [String]
|
561
|
+
attr_accessor :error_code
|
562
|
+
|
563
|
+
# MIME type of file. Defaults to text/html.
|
564
|
+
# Corresponds to the JSON property `mimeType`
|
565
|
+
# @return [String]
|
566
|
+
attr_accessor :mime_type
|
567
|
+
|
568
|
+
# Static file content to be served for this error.
|
569
|
+
# Corresponds to the JSON property `staticFile`
|
570
|
+
# @return [String]
|
571
|
+
attr_accessor :static_file
|
572
|
+
|
573
|
+
def initialize(**args)
|
574
|
+
update!(**args)
|
575
|
+
end
|
576
|
+
|
577
|
+
# Update properties of this object
|
578
|
+
def update!(**args)
|
579
|
+
@error_code = args[:error_code] if args.key?(:error_code)
|
580
|
+
@mime_type = args[:mime_type] if args.key?(:mime_type)
|
581
|
+
@static_file = args[:static_file] if args.key?(:static_file)
|
582
|
+
end
|
583
|
+
end
|
584
|
+
|
585
|
+
# Single source file that is part of the version to be deployed. Each source
|
586
|
+
# file that is deployed must be specified separately.
|
587
|
+
class FileInfo
|
588
|
+
include Google::Apis::Core::Hashable
|
589
|
+
|
590
|
+
# The MIME type of the file.Defaults to the value from Google Cloud Storage.
|
591
|
+
# Corresponds to the JSON property `mimeType`
|
592
|
+
# @return [String]
|
593
|
+
attr_accessor :mime_type
|
594
|
+
|
595
|
+
# The SHA1 hash of the file, in hex.
|
596
|
+
# Corresponds to the JSON property `sha1Sum`
|
597
|
+
# @return [String]
|
598
|
+
attr_accessor :sha1_sum
|
599
|
+
|
600
|
+
# URL source to use to fetch this file. Must be a URL to a resource in Google
|
601
|
+
# Cloud Storage in the form 'http(s)://storage.googleapis.com/<bucket>/<object>'.
|
602
|
+
# Corresponds to the JSON property `sourceUrl`
|
603
|
+
# @return [String]
|
604
|
+
attr_accessor :source_url
|
605
|
+
|
606
|
+
def initialize(**args)
|
607
|
+
update!(**args)
|
608
|
+
end
|
609
|
+
|
610
|
+
# Update properties of this object
|
611
|
+
def update!(**args)
|
612
|
+
@mime_type = args[:mime_type] if args.key?(:mime_type)
|
613
|
+
@sha1_sum = args[:sha1_sum] if args.key?(:sha1_sum)
|
614
|
+
@source_url = args[:source_url] if args.key?(:source_url)
|
615
|
+
end
|
616
|
+
end
|
617
|
+
|
618
|
+
# Health checking configuration for VM instances. Unhealthy instances are killed
|
619
|
+
# and replaced with new instances. Only applicable for instances in App Engine
|
620
|
+
# flexible environment.
|
621
|
+
class HealthCheck
|
622
|
+
include Google::Apis::Core::Hashable
|
623
|
+
|
624
|
+
# Interval between health checks.
|
625
|
+
# Corresponds to the JSON property `checkInterval`
|
626
|
+
# @return [String]
|
627
|
+
attr_accessor :check_interval
|
628
|
+
|
629
|
+
# Whether to explicitly disable health checks for this instance.
|
630
|
+
# Corresponds to the JSON property `disableHealthCheck`
|
631
|
+
# @return [Boolean]
|
632
|
+
attr_accessor :disable_health_check
|
633
|
+
alias_method :disable_health_check?, :disable_health_check
|
634
|
+
|
635
|
+
# Number of consecutive successful health checks required before receiving
|
636
|
+
# traffic.
|
637
|
+
# Corresponds to the JSON property `healthyThreshold`
|
638
|
+
# @return [Fixnum]
|
639
|
+
attr_accessor :healthy_threshold
|
640
|
+
|
641
|
+
# Host header to send when performing an HTTP health check. Example: "myapp.
|
642
|
+
# appspot.com"
|
643
|
+
# Corresponds to the JSON property `host`
|
644
|
+
# @return [String]
|
645
|
+
attr_accessor :host
|
646
|
+
|
647
|
+
# Number of consecutive failed health checks required before an instance is
|
648
|
+
# restarted.
|
649
|
+
# Corresponds to the JSON property `restartThreshold`
|
650
|
+
# @return [Fixnum]
|
651
|
+
attr_accessor :restart_threshold
|
652
|
+
|
653
|
+
# Time before the health check is considered failed.
|
654
|
+
# Corresponds to the JSON property `timeout`
|
655
|
+
# @return [String]
|
656
|
+
attr_accessor :timeout
|
657
|
+
|
658
|
+
# Number of consecutive failed health checks required before removing traffic.
|
659
|
+
# Corresponds to the JSON property `unhealthyThreshold`
|
660
|
+
# @return [Fixnum]
|
661
|
+
attr_accessor :unhealthy_threshold
|
662
|
+
|
663
|
+
def initialize(**args)
|
664
|
+
update!(**args)
|
665
|
+
end
|
666
|
+
|
667
|
+
# Update properties of this object
|
668
|
+
def update!(**args)
|
669
|
+
@check_interval = args[:check_interval] if args.key?(:check_interval)
|
670
|
+
@disable_health_check = args[:disable_health_check] if args.key?(:disable_health_check)
|
671
|
+
@healthy_threshold = args[:healthy_threshold] if args.key?(:healthy_threshold)
|
672
|
+
@host = args[:host] if args.key?(:host)
|
673
|
+
@restart_threshold = args[:restart_threshold] if args.key?(:restart_threshold)
|
674
|
+
@timeout = args[:timeout] if args.key?(:timeout)
|
675
|
+
@unhealthy_threshold = args[:unhealthy_threshold] if args.key?(:unhealthy_threshold)
|
676
|
+
end
|
677
|
+
end
|
678
|
+
|
679
|
+
# Identity-Aware Proxy
|
680
|
+
class IdentityAwareProxy
|
681
|
+
include Google::Apis::Core::Hashable
|
682
|
+
|
683
|
+
# Whether the serving infrastructure will authenticate and authorize all
|
684
|
+
# incoming requests.If true, the oauth2_client_id and oauth2_client_secret
|
685
|
+
# fields must be non-empty.
|
686
|
+
# Corresponds to the JSON property `enabled`
|
687
|
+
# @return [Boolean]
|
688
|
+
attr_accessor :enabled
|
689
|
+
alias_method :enabled?, :enabled
|
690
|
+
|
691
|
+
# OAuth2 client ID to use for the authentication flow.
|
692
|
+
# Corresponds to the JSON property `oauth2ClientId`
|
693
|
+
# @return [String]
|
694
|
+
attr_accessor :oauth2_client_id
|
695
|
+
|
696
|
+
# For security reasons, this value cannot be retrieved via the API. Instead, the
|
697
|
+
# SHA-256 hash of the value is returned in the oauth2_client_secret_sha256 field.
|
698
|
+
# @InputOnly
|
699
|
+
# Corresponds to the JSON property `oauth2ClientSecret`
|
700
|
+
# @return [String]
|
701
|
+
attr_accessor :oauth2_client_secret
|
702
|
+
|
703
|
+
# Hex-encoded SHA-256 hash of the client secret.@OutputOnly
|
704
|
+
# Corresponds to the JSON property `oauth2ClientSecretSha256`
|
705
|
+
# @return [String]
|
706
|
+
attr_accessor :oauth2_client_secret_sha256
|
707
|
+
|
708
|
+
def initialize(**args)
|
709
|
+
update!(**args)
|
710
|
+
end
|
711
|
+
|
712
|
+
# Update properties of this object
|
713
|
+
def update!(**args)
|
714
|
+
@enabled = args[:enabled] if args.key?(:enabled)
|
715
|
+
@oauth2_client_id = args[:oauth2_client_id] if args.key?(:oauth2_client_id)
|
716
|
+
@oauth2_client_secret = args[:oauth2_client_secret] if args.key?(:oauth2_client_secret)
|
717
|
+
@oauth2_client_secret_sha256 = args[:oauth2_client_secret_sha256] if args.key?(:oauth2_client_secret_sha256)
|
718
|
+
end
|
719
|
+
end
|
720
|
+
|
721
|
+
# An Instance resource is the computing unit that App Engine uses to
|
722
|
+
# automatically scale an application.
|
723
|
+
class Instance
|
724
|
+
include Google::Apis::Core::Hashable
|
725
|
+
|
726
|
+
# App Engine release this instance is running on.@OutputOnly
|
727
|
+
# Corresponds to the JSON property `appEngineRelease`
|
728
|
+
# @return [String]
|
729
|
+
attr_accessor :app_engine_release
|
730
|
+
|
731
|
+
# Availability of the instance.@OutputOnly
|
732
|
+
# Corresponds to the JSON property `availability`
|
733
|
+
# @return [String]
|
734
|
+
attr_accessor :availability
|
735
|
+
|
736
|
+
# Average latency (ms) over the last minute.@OutputOnly
|
737
|
+
# Corresponds to the JSON property `averageLatency`
|
738
|
+
# @return [Fixnum]
|
739
|
+
attr_accessor :average_latency
|
740
|
+
|
741
|
+
# Number of errors since this instance was started.@OutputOnly
|
742
|
+
# Corresponds to the JSON property `errors`
|
743
|
+
# @return [Fixnum]
|
744
|
+
attr_accessor :errors
|
745
|
+
|
746
|
+
# Relative name of the instance within the version. Example: instance-1.@
|
747
|
+
# OutputOnly
|
748
|
+
# Corresponds to the JSON property `id`
|
749
|
+
# @return [String]
|
750
|
+
attr_accessor :id
|
751
|
+
|
752
|
+
# Total memory in use (bytes).@OutputOnly
|
753
|
+
# Corresponds to the JSON property `memoryUsage`
|
754
|
+
# @return [Fixnum]
|
755
|
+
attr_accessor :memory_usage
|
756
|
+
|
757
|
+
# Full path to the Instance resource in the API. Example: apps/myapp/services/
|
758
|
+
# default/versions/v1/instances/instance-1.@OutputOnly
|
759
|
+
# Corresponds to the JSON property `name`
|
760
|
+
# @return [String]
|
761
|
+
attr_accessor :name
|
762
|
+
|
763
|
+
# Average queries per second (QPS) over the last minute.@OutputOnly
|
764
|
+
# Corresponds to the JSON property `qps`
|
765
|
+
# @return [Float]
|
766
|
+
attr_accessor :qps
|
767
|
+
|
768
|
+
# Number of requests since this instance was started.@OutputOnly
|
769
|
+
# Corresponds to the JSON property `requests`
|
770
|
+
# @return [Fixnum]
|
771
|
+
attr_accessor :requests
|
772
|
+
|
773
|
+
# Time that this instance was started.@OutputOnly
|
774
|
+
# Corresponds to the JSON property `startTimestamp`
|
775
|
+
# @return [String]
|
776
|
+
attr_accessor :start_timestamp
|
777
|
+
|
778
|
+
# Virtual machine ID of this instance. Only applicable for instances in App
|
779
|
+
# Engine flexible environment.@OutputOnly
|
780
|
+
# Corresponds to the JSON property `vmId`
|
781
|
+
# @return [String]
|
782
|
+
attr_accessor :vm_id
|
783
|
+
|
784
|
+
# The IP address of this instance. Only applicable for instances in App Engine
|
785
|
+
# flexible environment.@OutputOnly
|
786
|
+
# Corresponds to the JSON property `vmIp`
|
787
|
+
# @return [String]
|
788
|
+
attr_accessor :vm_ip
|
789
|
+
|
790
|
+
# Name of the virtual machine where this instance lives. Only applicable for
|
791
|
+
# instances in App Engine flexible environment.@OutputOnly
|
792
|
+
# Corresponds to the JSON property `vmName`
|
793
|
+
# @return [String]
|
794
|
+
attr_accessor :vm_name
|
795
|
+
|
796
|
+
# Status of the virtual machine where this instance lives. Only applicable for
|
797
|
+
# instances in App Engine flexible environment.@OutputOnly
|
798
|
+
# Corresponds to the JSON property `vmStatus`
|
799
|
+
# @return [String]
|
800
|
+
attr_accessor :vm_status
|
801
|
+
|
802
|
+
# Whether this instance is in debug mode. Only applicable for instances in App
|
803
|
+
# Engine flexible environment.@OutputOnly
|
804
|
+
# Corresponds to the JSON property `vmUnlocked`
|
805
|
+
# @return [Boolean]
|
806
|
+
attr_accessor :vm_unlocked
|
807
|
+
alias_method :vm_unlocked?, :vm_unlocked
|
808
|
+
|
809
|
+
# Zone where the virtual machine is located. Only applicable for instances in
|
810
|
+
# App Engine flexible environment.@OutputOnly
|
811
|
+
# Corresponds to the JSON property `vmZoneName`
|
812
|
+
# @return [String]
|
813
|
+
attr_accessor :vm_zone_name
|
814
|
+
|
815
|
+
def initialize(**args)
|
816
|
+
update!(**args)
|
817
|
+
end
|
818
|
+
|
819
|
+
# Update properties of this object
|
820
|
+
def update!(**args)
|
821
|
+
@app_engine_release = args[:app_engine_release] if args.key?(:app_engine_release)
|
822
|
+
@availability = args[:availability] if args.key?(:availability)
|
823
|
+
@average_latency = args[:average_latency] if args.key?(:average_latency)
|
824
|
+
@errors = args[:errors] if args.key?(:errors)
|
825
|
+
@id = args[:id] if args.key?(:id)
|
826
|
+
@memory_usage = args[:memory_usage] if args.key?(:memory_usage)
|
827
|
+
@name = args[:name] if args.key?(:name)
|
828
|
+
@qps = args[:qps] if args.key?(:qps)
|
829
|
+
@requests = args[:requests] if args.key?(:requests)
|
830
|
+
@start_timestamp = args[:start_timestamp] if args.key?(:start_timestamp)
|
831
|
+
@vm_id = args[:vm_id] if args.key?(:vm_id)
|
832
|
+
@vm_ip = args[:vm_ip] if args.key?(:vm_ip)
|
833
|
+
@vm_name = args[:vm_name] if args.key?(:vm_name)
|
834
|
+
@vm_status = args[:vm_status] if args.key?(:vm_status)
|
835
|
+
@vm_unlocked = args[:vm_unlocked] if args.key?(:vm_unlocked)
|
836
|
+
@vm_zone_name = args[:vm_zone_name] if args.key?(:vm_zone_name)
|
837
|
+
end
|
838
|
+
end
|
839
|
+
|
840
|
+
# Third-party Python runtime library that is required by the application.
|
841
|
+
class Library
|
842
|
+
include Google::Apis::Core::Hashable
|
843
|
+
|
844
|
+
# Name of the library. Example: "django".
|
845
|
+
# Corresponds to the JSON property `name`
|
846
|
+
# @return [String]
|
847
|
+
attr_accessor :name
|
848
|
+
|
849
|
+
# Version of the library to select, or "latest".
|
850
|
+
# Corresponds to the JSON property `version`
|
851
|
+
# @return [String]
|
852
|
+
attr_accessor :version
|
853
|
+
|
854
|
+
def initialize(**args)
|
855
|
+
update!(**args)
|
856
|
+
end
|
857
|
+
|
858
|
+
# Update properties of this object
|
859
|
+
def update!(**args)
|
860
|
+
@name = args[:name] if args.key?(:name)
|
861
|
+
@version = args[:version] if args.key?(:version)
|
862
|
+
end
|
863
|
+
end
|
864
|
+
|
865
|
+
# Response message for Instances.ListInstances.
|
866
|
+
class ListInstancesResponse
|
867
|
+
include Google::Apis::Core::Hashable
|
868
|
+
|
869
|
+
# The instances belonging to the requested version.
|
870
|
+
# Corresponds to the JSON property `instances`
|
871
|
+
# @return [Array<Google::Apis::AppengineV1beta5::Instance>]
|
872
|
+
attr_accessor :instances
|
873
|
+
|
874
|
+
# Continuation token for fetching the next page of results.
|
875
|
+
# Corresponds to the JSON property `nextPageToken`
|
876
|
+
# @return [String]
|
877
|
+
attr_accessor :next_page_token
|
878
|
+
|
879
|
+
def initialize(**args)
|
880
|
+
update!(**args)
|
881
|
+
end
|
882
|
+
|
883
|
+
# Update properties of this object
|
884
|
+
def update!(**args)
|
885
|
+
@instances = args[:instances] if args.key?(:instances)
|
886
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
887
|
+
end
|
888
|
+
end
|
889
|
+
|
890
|
+
# The response message for Locations.ListLocations.
|
891
|
+
class ListLocationsResponse
|
892
|
+
include Google::Apis::Core::Hashable
|
893
|
+
|
894
|
+
# A list of locations that matches the specified filter in the request.
|
895
|
+
# Corresponds to the JSON property `locations`
|
896
|
+
# @return [Array<Google::Apis::AppengineV1beta5::Location>]
|
897
|
+
attr_accessor :locations
|
898
|
+
|
899
|
+
# The standard List next-page token.
|
900
|
+
# Corresponds to the JSON property `nextPageToken`
|
901
|
+
# @return [String]
|
902
|
+
attr_accessor :next_page_token
|
903
|
+
|
904
|
+
def initialize(**args)
|
905
|
+
update!(**args)
|
906
|
+
end
|
907
|
+
|
908
|
+
# Update properties of this object
|
909
|
+
def update!(**args)
|
910
|
+
@locations = args[:locations] if args.key?(:locations)
|
911
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
912
|
+
end
|
913
|
+
end
|
914
|
+
|
915
|
+
# The response message for Operations.ListOperations.
|
916
|
+
class ListOperationsResponse
|
917
|
+
include Google::Apis::Core::Hashable
|
918
|
+
|
919
|
+
# The standard List next-page token.
|
920
|
+
# Corresponds to the JSON property `nextPageToken`
|
921
|
+
# @return [String]
|
922
|
+
attr_accessor :next_page_token
|
923
|
+
|
924
|
+
# A list of operations that matches the specified filter in the request.
|
925
|
+
# Corresponds to the JSON property `operations`
|
926
|
+
# @return [Array<Google::Apis::AppengineV1beta5::Operation>]
|
927
|
+
attr_accessor :operations
|
928
|
+
|
929
|
+
def initialize(**args)
|
930
|
+
update!(**args)
|
931
|
+
end
|
932
|
+
|
933
|
+
# Update properties of this object
|
934
|
+
def update!(**args)
|
935
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
936
|
+
@operations = args[:operations] if args.key?(:operations)
|
937
|
+
end
|
938
|
+
end
|
939
|
+
|
940
|
+
# Response message for Services.ListServices.
|
941
|
+
class ListServicesResponse
|
942
|
+
include Google::Apis::Core::Hashable
|
943
|
+
|
944
|
+
# Continuation token for fetching the next page of results.
|
945
|
+
# Corresponds to the JSON property `nextPageToken`
|
946
|
+
# @return [String]
|
947
|
+
attr_accessor :next_page_token
|
948
|
+
|
949
|
+
# The services belonging to the requested application.
|
950
|
+
# Corresponds to the JSON property `services`
|
951
|
+
# @return [Array<Google::Apis::AppengineV1beta5::Service>]
|
952
|
+
attr_accessor :services
|
953
|
+
|
954
|
+
def initialize(**args)
|
955
|
+
update!(**args)
|
956
|
+
end
|
957
|
+
|
958
|
+
# Update properties of this object
|
959
|
+
def update!(**args)
|
960
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
961
|
+
@services = args[:services] if args.key?(:services)
|
962
|
+
end
|
963
|
+
end
|
964
|
+
|
965
|
+
# Response message for Versions.ListVersions.
|
966
|
+
class ListVersionsResponse
|
967
|
+
include Google::Apis::Core::Hashable
|
968
|
+
|
969
|
+
# Continuation token for fetching the next page of results.
|
970
|
+
# Corresponds to the JSON property `nextPageToken`
|
971
|
+
# @return [String]
|
972
|
+
attr_accessor :next_page_token
|
973
|
+
|
974
|
+
# The versions belonging to the requested service.
|
975
|
+
# Corresponds to the JSON property `versions`
|
976
|
+
# @return [Array<Google::Apis::AppengineV1beta5::Version>]
|
977
|
+
attr_accessor :versions
|
978
|
+
|
979
|
+
def initialize(**args)
|
980
|
+
update!(**args)
|
981
|
+
end
|
982
|
+
|
983
|
+
# Update properties of this object
|
984
|
+
def update!(**args)
|
985
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
986
|
+
@versions = args[:versions] if args.key?(:versions)
|
987
|
+
end
|
988
|
+
end
|
989
|
+
|
990
|
+
# A resource that represents Google Cloud Platform location.
|
991
|
+
class Location
|
992
|
+
include Google::Apis::Core::Hashable
|
993
|
+
|
994
|
+
# The friendly name for this location, typically a nearby city name. For example,
|
995
|
+
# "Tokyo".
|
996
|
+
# Corresponds to the JSON property `displayName`
|
997
|
+
# @return [String]
|
998
|
+
attr_accessor :display_name
|
999
|
+
|
1000
|
+
# Cross-service attributes for the location. For example
|
1001
|
+
# `"cloud.googleapis.com/region": "us-east1"`
|
1002
|
+
# Corresponds to the JSON property `labels`
|
1003
|
+
# @return [Hash<String,String>]
|
1004
|
+
attr_accessor :labels
|
1005
|
+
|
1006
|
+
# The canonical id for this location. For example: "us-east1".
|
1007
|
+
# Corresponds to the JSON property `locationId`
|
1008
|
+
# @return [String]
|
1009
|
+
attr_accessor :location_id
|
1010
|
+
|
1011
|
+
# Service-specific metadata. For example the available capacity at the given
|
1012
|
+
# location.
|
1013
|
+
# Corresponds to the JSON property `metadata`
|
1014
|
+
# @return [Hash<String,Object>]
|
1015
|
+
attr_accessor :metadata
|
1016
|
+
|
1017
|
+
# Resource name for the location, which may vary between implementations. For
|
1018
|
+
# example: "projects/example-project/locations/us-east1"
|
1019
|
+
# Corresponds to the JSON property `name`
|
1020
|
+
# @return [String]
|
1021
|
+
attr_accessor :name
|
1022
|
+
|
1023
|
+
def initialize(**args)
|
1024
|
+
update!(**args)
|
1025
|
+
end
|
1026
|
+
|
1027
|
+
# Update properties of this object
|
1028
|
+
def update!(**args)
|
1029
|
+
@display_name = args[:display_name] if args.key?(:display_name)
|
1030
|
+
@labels = args[:labels] if args.key?(:labels)
|
1031
|
+
@location_id = args[:location_id] if args.key?(:location_id)
|
1032
|
+
@metadata = args[:metadata] if args.key?(:metadata)
|
1033
|
+
@name = args[:name] if args.key?(:name)
|
1034
|
+
end
|
1035
|
+
end
|
1036
|
+
|
1037
|
+
# Metadata for the given google.cloud.location.Location.
|
1038
|
+
class LocationMetadata
|
1039
|
+
include Google::Apis::Core::Hashable
|
1040
|
+
|
1041
|
+
# App Engine flexible environment is available in the given location.@OutputOnly
|
1042
|
+
# Corresponds to the JSON property `flexibleEnvironmentAvailable`
|
1043
|
+
# @return [Boolean]
|
1044
|
+
attr_accessor :flexible_environment_available
|
1045
|
+
alias_method :flexible_environment_available?, :flexible_environment_available
|
1046
|
+
|
1047
|
+
# App Engine standard environment is available in the given location.@OutputOnly
|
1048
|
+
# Corresponds to the JSON property `standardEnvironmentAvailable`
|
1049
|
+
# @return [Boolean]
|
1050
|
+
attr_accessor :standard_environment_available
|
1051
|
+
alias_method :standard_environment_available?, :standard_environment_available
|
1052
|
+
|
1053
|
+
def initialize(**args)
|
1054
|
+
update!(**args)
|
1055
|
+
end
|
1056
|
+
|
1057
|
+
# Update properties of this object
|
1058
|
+
def update!(**args)
|
1059
|
+
@flexible_environment_available = args[:flexible_environment_available] if args.key?(:flexible_environment_available)
|
1060
|
+
@standard_environment_available = args[:standard_environment_available] if args.key?(:standard_environment_available)
|
1061
|
+
end
|
1062
|
+
end
|
1063
|
+
|
1064
|
+
# A service with manual scaling runs continuously, allowing you to perform
|
1065
|
+
# complex initialization and rely on the state of its memory over time.
|
1066
|
+
class ManualScaling
|
1067
|
+
include Google::Apis::Core::Hashable
|
1068
|
+
|
1069
|
+
# Number of instances to assign to the service at the start. This number can
|
1070
|
+
# later be altered by using the Modules API (https://cloud.google.com/appengine/
|
1071
|
+
# docs/python/modules/functions) set_num_instances() function.
|
1072
|
+
# Corresponds to the JSON property `instances`
|
1073
|
+
# @return [Fixnum]
|
1074
|
+
attr_accessor :instances
|
1075
|
+
|
1076
|
+
def initialize(**args)
|
1077
|
+
update!(**args)
|
1078
|
+
end
|
1079
|
+
|
1080
|
+
# Update properties of this object
|
1081
|
+
def update!(**args)
|
1082
|
+
@instances = args[:instances] if args.key?(:instances)
|
1083
|
+
end
|
1084
|
+
end
|
1085
|
+
|
1086
|
+
# Extra network settings. Only applicable for VM runtimes.
|
1087
|
+
class Network
|
1088
|
+
include Google::Apis::Core::Hashable
|
1089
|
+
|
1090
|
+
# List of ports, or port pairs, to forward from the virtual machine to the
|
1091
|
+
# application container.
|
1092
|
+
# Corresponds to the JSON property `forwardedPorts`
|
1093
|
+
# @return [Array<String>]
|
1094
|
+
attr_accessor :forwarded_ports
|
1095
|
+
|
1096
|
+
# Tag to apply to the VM instance during creation.
|
1097
|
+
# Corresponds to the JSON property `instanceTag`
|
1098
|
+
# @return [String]
|
1099
|
+
attr_accessor :instance_tag
|
1100
|
+
|
1101
|
+
# Google Cloud Platform network where the virtual machines are created. Specify
|
1102
|
+
# the short name, not the resource path.Defaults to default.
|
1103
|
+
# Corresponds to the JSON property `name`
|
1104
|
+
# @return [String]
|
1105
|
+
attr_accessor :name
|
1106
|
+
|
1107
|
+
# Google Cloud Platform sub-network where the virtual machines are created.
|
1108
|
+
# Specify the short name, not the resource path.If a subnetwork name is
|
1109
|
+
# specified, a network name will also be required unless it is for the default
|
1110
|
+
# network.
|
1111
|
+
# If the network the VM instance is being created in is a Legacy network, then
|
1112
|
+
# the IP address is allocated from the IPv4Range.
|
1113
|
+
# If the network the VM instance is being created in is an auto Subnet Mode
|
1114
|
+
# Network, then only network name should be specified (not the subnetwork_name)
|
1115
|
+
# and the IP address is created from the IPCidrRange of the subnetwork that
|
1116
|
+
# exists in that zone for that network.
|
1117
|
+
# If the network the VM instance is being created in is a custom Subnet Mode
|
1118
|
+
# Network, then the subnetwork_name must be specified and the IP address is
|
1119
|
+
# created from the IPCidrRange of the subnetwork.If specified, the subnetwork
|
1120
|
+
# must exist in the same region as the Flex app.
|
1121
|
+
# Corresponds to the JSON property `subnetworkName`
|
1122
|
+
# @return [String]
|
1123
|
+
attr_accessor :subnetwork_name
|
1124
|
+
|
1125
|
+
def initialize(**args)
|
1126
|
+
update!(**args)
|
1127
|
+
end
|
1128
|
+
|
1129
|
+
# Update properties of this object
|
1130
|
+
def update!(**args)
|
1131
|
+
@forwarded_ports = args[:forwarded_ports] if args.key?(:forwarded_ports)
|
1132
|
+
@instance_tag = args[:instance_tag] if args.key?(:instance_tag)
|
1133
|
+
@name = args[:name] if args.key?(:name)
|
1134
|
+
@subnetwork_name = args[:subnetwork_name] if args.key?(:subnetwork_name)
|
1135
|
+
end
|
1136
|
+
end
|
1137
|
+
|
1138
|
+
# Target scaling by network usage. Only applicable for VM runtimes.
|
1139
|
+
class NetworkUtilization
|
1140
|
+
include Google::Apis::Core::Hashable
|
1141
|
+
|
1142
|
+
# Target bytes received per second.
|
1143
|
+
# Corresponds to the JSON property `targetReceivedBytesPerSec`
|
1144
|
+
# @return [Fixnum]
|
1145
|
+
attr_accessor :target_received_bytes_per_sec
|
1146
|
+
|
1147
|
+
# Target packets received per second.
|
1148
|
+
# Corresponds to the JSON property `targetReceivedPacketsPerSec`
|
1149
|
+
# @return [Fixnum]
|
1150
|
+
attr_accessor :target_received_packets_per_sec
|
1151
|
+
|
1152
|
+
# Target bytes sent per second.
|
1153
|
+
# Corresponds to the JSON property `targetSentBytesPerSec`
|
1154
|
+
# @return [Fixnum]
|
1155
|
+
attr_accessor :target_sent_bytes_per_sec
|
1156
|
+
|
1157
|
+
# Target packets sent per second.
|
1158
|
+
# Corresponds to the JSON property `targetSentPacketsPerSec`
|
1159
|
+
# @return [Fixnum]
|
1160
|
+
attr_accessor :target_sent_packets_per_sec
|
1161
|
+
|
1162
|
+
def initialize(**args)
|
1163
|
+
update!(**args)
|
1164
|
+
end
|
1165
|
+
|
1166
|
+
# Update properties of this object
|
1167
|
+
def update!(**args)
|
1168
|
+
@target_received_bytes_per_sec = args[:target_received_bytes_per_sec] if args.key?(:target_received_bytes_per_sec)
|
1169
|
+
@target_received_packets_per_sec = args[:target_received_packets_per_sec] if args.key?(:target_received_packets_per_sec)
|
1170
|
+
@target_sent_bytes_per_sec = args[:target_sent_bytes_per_sec] if args.key?(:target_sent_bytes_per_sec)
|
1171
|
+
@target_sent_packets_per_sec = args[:target_sent_packets_per_sec] if args.key?(:target_sent_packets_per_sec)
|
1172
|
+
end
|
1173
|
+
end
|
1174
|
+
|
1175
|
+
# This resource represents a long-running operation that is the result of a
|
1176
|
+
# network API call.
|
1177
|
+
class Operation
|
1178
|
+
include Google::Apis::Core::Hashable
|
1179
|
+
|
1180
|
+
# If the value is false, it means the operation is still in progress. If true,
|
1181
|
+
# the operation is completed, and either error or response is available.
|
1182
|
+
# Corresponds to the JSON property `done`
|
1183
|
+
# @return [Boolean]
|
1184
|
+
attr_accessor :done
|
1185
|
+
alias_method :done?, :done
|
1186
|
+
|
1187
|
+
# The Status type defines a logical error model that is suitable for different
|
1188
|
+
# programming environments, including REST APIs and RPC APIs. It is used by gRPC
|
1189
|
+
# (https://github.com/grpc). The error model is designed to be:
|
1190
|
+
# Simple to use and understand for most users
|
1191
|
+
# Flexible enough to meet unexpected needsOverviewThe Status message contains
|
1192
|
+
# three pieces of data: error code, error message, and error details. The error
|
1193
|
+
# code should be an enum value of google.rpc.Code, but it may accept additional
|
1194
|
+
# error codes if needed. The error message should be a developer-facing English
|
1195
|
+
# message that helps developers understand and resolve the error. If a localized
|
1196
|
+
# user-facing error message is needed, put the localized message in the error
|
1197
|
+
# details or localize it in the client. The optional error details may contain
|
1198
|
+
# arbitrary information about the error. There is a predefined set of error
|
1199
|
+
# detail types in the package google.rpc that can be used for common error
|
1200
|
+
# conditions.Language mappingThe Status message is the logical representation of
|
1201
|
+
# the error model, but it is not necessarily the actual wire format. When the
|
1202
|
+
# Status message is exposed in different client libraries and different wire
|
1203
|
+
# protocols, it can be mapped differently. For example, it will likely be mapped
|
1204
|
+
# to some exceptions in Java, but more likely mapped to some error codes in C.
|
1205
|
+
# Other usesThe error model and the Status message can be used in a variety of
|
1206
|
+
# environments, either with or without APIs, to provide a consistent developer
|
1207
|
+
# experience across different environments.Example uses of this error model
|
1208
|
+
# include:
|
1209
|
+
# Partial errors. If a service needs to return partial errors to the client, it
|
1210
|
+
# may embed the Status in the normal response to indicate the partial errors.
|
1211
|
+
# Workflow errors. A typical workflow has multiple steps. Each step may have a
|
1212
|
+
# Status message for error reporting.
|
1213
|
+
# Batch operations. If a client uses batch request and batch response, the
|
1214
|
+
# Status message should be used directly inside batch response, one for each
|
1215
|
+
# error sub-response.
|
1216
|
+
# Asynchronous operations. If an API call embeds asynchronous operation results
|
1217
|
+
# in its response, the status of those operations should be represented directly
|
1218
|
+
# using the Status message.
|
1219
|
+
# Logging. If some API errors are stored in logs, the message Status could be
|
1220
|
+
# used directly after any stripping needed for security/privacy reasons.
|
1221
|
+
# Corresponds to the JSON property `error`
|
1222
|
+
# @return [Google::Apis::AppengineV1beta5::Status]
|
1223
|
+
attr_accessor :error
|
1224
|
+
|
1225
|
+
# Service-specific metadata associated with the operation. It typically contains
|
1226
|
+
# progress information and common metadata such as create time. Some services
|
1227
|
+
# might not provide such metadata. Any method that returns a long-running
|
1228
|
+
# operation should document the metadata type, if any.
|
1229
|
+
# Corresponds to the JSON property `metadata`
|
1230
|
+
# @return [Hash<String,Object>]
|
1231
|
+
attr_accessor :metadata
|
1232
|
+
|
1233
|
+
# The server-assigned name, which is only unique within the same service that
|
1234
|
+
# originally returns it. If you use the default HTTP mapping, the name should
|
1235
|
+
# have the format of operations/some/unique/name.
|
1236
|
+
# Corresponds to the JSON property `name`
|
1237
|
+
# @return [String]
|
1238
|
+
attr_accessor :name
|
1239
|
+
|
1240
|
+
# The normal response of the operation in case of success. If the original
|
1241
|
+
# method returns no data on success, such as Delete, the response is google.
|
1242
|
+
# protobuf.Empty. If the original method is standard Get/Create/Update, the
|
1243
|
+
# response should be the resource. For other methods, the response should have
|
1244
|
+
# the type XxxResponse, where Xxx is the original method name. For example, if
|
1245
|
+
# the original method name is TakeSnapshot(), the inferred response type is
|
1246
|
+
# TakeSnapshotResponse.
|
1247
|
+
# Corresponds to the JSON property `response`
|
1248
|
+
# @return [Hash<String,Object>]
|
1249
|
+
attr_accessor :response
|
1250
|
+
|
1251
|
+
def initialize(**args)
|
1252
|
+
update!(**args)
|
1253
|
+
end
|
1254
|
+
|
1255
|
+
# Update properties of this object
|
1256
|
+
def update!(**args)
|
1257
|
+
@done = args[:done] if args.key?(:done)
|
1258
|
+
@error = args[:error] if args.key?(:error)
|
1259
|
+
@metadata = args[:metadata] if args.key?(:metadata)
|
1260
|
+
@name = args[:name] if args.key?(:name)
|
1261
|
+
@response = args[:response] if args.key?(:response)
|
1262
|
+
end
|
1263
|
+
end
|
1264
|
+
|
1265
|
+
# Metadata for the given google.longrunning.Operation.
|
1266
|
+
class OperationMetadata
|
1267
|
+
include Google::Apis::Core::Hashable
|
1268
|
+
|
1269
|
+
# Timestamp that this operation completed.@OutputOnly
|
1270
|
+
# Corresponds to the JSON property `endTime`
|
1271
|
+
# @return [String]
|
1272
|
+
attr_accessor :end_time
|
1273
|
+
|
1274
|
+
# Timestamp that this operation was created.@OutputOnly
|
1275
|
+
# Corresponds to the JSON property `insertTime`
|
1276
|
+
# @return [String]
|
1277
|
+
attr_accessor :insert_time
|
1278
|
+
|
1279
|
+
# API method that initiated this operation. Example: google.appengine.v1beta4.
|
1280
|
+
# Version.CreateVersion.@OutputOnly
|
1281
|
+
# Corresponds to the JSON property `method`
|
1282
|
+
# @return [String]
|
1283
|
+
attr_accessor :method_prop
|
1284
|
+
|
1285
|
+
# Type of this operation. Deprecated, use method field instead. Example: "
|
1286
|
+
# create_version".@OutputOnly
|
1287
|
+
# Corresponds to the JSON property `operationType`
|
1288
|
+
# @return [String]
|
1289
|
+
attr_accessor :operation_type
|
1290
|
+
|
1291
|
+
# Name of the resource that this operation is acting on. Example: apps/myapp/
|
1292
|
+
# modules/default.@OutputOnly
|
1293
|
+
# Corresponds to the JSON property `target`
|
1294
|
+
# @return [String]
|
1295
|
+
attr_accessor :target
|
1296
|
+
|
1297
|
+
# User who requested this operation.@OutputOnly
|
1298
|
+
# Corresponds to the JSON property `user`
|
1299
|
+
# @return [String]
|
1300
|
+
attr_accessor :user
|
1301
|
+
|
1302
|
+
def initialize(**args)
|
1303
|
+
update!(**args)
|
1304
|
+
end
|
1305
|
+
|
1306
|
+
# Update properties of this object
|
1307
|
+
def update!(**args)
|
1308
|
+
@end_time = args[:end_time] if args.key?(:end_time)
|
1309
|
+
@insert_time = args[:insert_time] if args.key?(:insert_time)
|
1310
|
+
@method_prop = args[:method_prop] if args.key?(:method_prop)
|
1311
|
+
@operation_type = args[:operation_type] if args.key?(:operation_type)
|
1312
|
+
@target = args[:target] if args.key?(:target)
|
1313
|
+
@user = args[:user] if args.key?(:user)
|
1314
|
+
end
|
1315
|
+
end
|
1316
|
+
|
1317
|
+
# Metadata for the given google.longrunning.Operation.
|
1318
|
+
class OperationMetadataV1
|
1319
|
+
include Google::Apis::Core::Hashable
|
1320
|
+
|
1321
|
+
# Metadata for the given google.longrunning.Operation during a google.appengine.
|
1322
|
+
# v1.CreateVersionRequest.
|
1323
|
+
# Corresponds to the JSON property `createVersionMetadata`
|
1324
|
+
# @return [Google::Apis::AppengineV1beta5::CreateVersionMetadataV1]
|
1325
|
+
attr_accessor :create_version_metadata
|
1326
|
+
|
1327
|
+
# Time that this operation completed.@OutputOnly
|
1328
|
+
# Corresponds to the JSON property `endTime`
|
1329
|
+
# @return [String]
|
1330
|
+
attr_accessor :end_time
|
1331
|
+
|
1332
|
+
# Ephemeral message that may change every time the operation is polled. @
|
1333
|
+
# OutputOnly
|
1334
|
+
# Corresponds to the JSON property `ephemeralMessage`
|
1335
|
+
# @return [String]
|
1336
|
+
attr_accessor :ephemeral_message
|
1337
|
+
|
1338
|
+
# Time that this operation was created.@OutputOnly
|
1339
|
+
# Corresponds to the JSON property `insertTime`
|
1340
|
+
# @return [String]
|
1341
|
+
attr_accessor :insert_time
|
1342
|
+
|
1343
|
+
# API method that initiated this operation. Example: google.appengine.v1.
|
1344
|
+
# Versions.CreateVersion.@OutputOnly
|
1345
|
+
# Corresponds to the JSON property `method`
|
1346
|
+
# @return [String]
|
1347
|
+
attr_accessor :method_prop
|
1348
|
+
|
1349
|
+
# Name of the resource that this operation is acting on. Example: apps/myapp/
|
1350
|
+
# services/default.@OutputOnly
|
1351
|
+
# Corresponds to the JSON property `target`
|
1352
|
+
# @return [String]
|
1353
|
+
attr_accessor :target
|
1354
|
+
|
1355
|
+
# User who requested this operation.@OutputOnly
|
1356
|
+
# Corresponds to the JSON property `user`
|
1357
|
+
# @return [String]
|
1358
|
+
attr_accessor :user
|
1359
|
+
|
1360
|
+
# Durable messages that persist on every operation poll. @OutputOnly
|
1361
|
+
# Corresponds to the JSON property `warning`
|
1362
|
+
# @return [Array<String>]
|
1363
|
+
attr_accessor :warning
|
1364
|
+
|
1365
|
+
def initialize(**args)
|
1366
|
+
update!(**args)
|
1367
|
+
end
|
1368
|
+
|
1369
|
+
# Update properties of this object
|
1370
|
+
def update!(**args)
|
1371
|
+
@create_version_metadata = args[:create_version_metadata] if args.key?(:create_version_metadata)
|
1372
|
+
@end_time = args[:end_time] if args.key?(:end_time)
|
1373
|
+
@ephemeral_message = args[:ephemeral_message] if args.key?(:ephemeral_message)
|
1374
|
+
@insert_time = args[:insert_time] if args.key?(:insert_time)
|
1375
|
+
@method_prop = args[:method_prop] if args.key?(:method_prop)
|
1376
|
+
@target = args[:target] if args.key?(:target)
|
1377
|
+
@user = args[:user] if args.key?(:user)
|
1378
|
+
@warning = args[:warning] if args.key?(:warning)
|
1379
|
+
end
|
1380
|
+
end
|
1381
|
+
|
1382
|
+
# Metadata for the given google.longrunning.Operation.
|
1383
|
+
class OperationMetadataV1Alpha
|
1384
|
+
include Google::Apis::Core::Hashable
|
1385
|
+
|
1386
|
+
# Metadata for the given google.longrunning.Operation during a google.appengine.
|
1387
|
+
# v1alpha.CreateVersionRequest.
|
1388
|
+
# Corresponds to the JSON property `createVersionMetadata`
|
1389
|
+
# @return [Google::Apis::AppengineV1beta5::CreateVersionMetadataV1Alpha]
|
1390
|
+
attr_accessor :create_version_metadata
|
1391
|
+
|
1392
|
+
# Time that this operation completed.@OutputOnly
|
1393
|
+
# Corresponds to the JSON property `endTime`
|
1394
|
+
# @return [String]
|
1395
|
+
attr_accessor :end_time
|
1396
|
+
|
1397
|
+
# Ephemeral message that may change every time the operation is polled. @
|
1398
|
+
# OutputOnly
|
1399
|
+
# Corresponds to the JSON property `ephemeralMessage`
|
1400
|
+
# @return [String]
|
1401
|
+
attr_accessor :ephemeral_message
|
1402
|
+
|
1403
|
+
# Time that this operation was created.@OutputOnly
|
1404
|
+
# Corresponds to the JSON property `insertTime`
|
1405
|
+
# @return [String]
|
1406
|
+
attr_accessor :insert_time
|
1407
|
+
|
1408
|
+
# API method that initiated this operation. Example: google.appengine.v1alpha.
|
1409
|
+
# Versions.CreateVersion.@OutputOnly
|
1410
|
+
# Corresponds to the JSON property `method`
|
1411
|
+
# @return [String]
|
1412
|
+
attr_accessor :method_prop
|
1413
|
+
|
1414
|
+
# Name of the resource that this operation is acting on. Example: apps/myapp/
|
1415
|
+
# services/default.@OutputOnly
|
1416
|
+
# Corresponds to the JSON property `target`
|
1417
|
+
# @return [String]
|
1418
|
+
attr_accessor :target
|
1419
|
+
|
1420
|
+
# User who requested this operation.@OutputOnly
|
1421
|
+
# Corresponds to the JSON property `user`
|
1422
|
+
# @return [String]
|
1423
|
+
attr_accessor :user
|
1424
|
+
|
1425
|
+
# Durable messages that persist on every operation poll. @OutputOnly
|
1426
|
+
# Corresponds to the JSON property `warning`
|
1427
|
+
# @return [Array<String>]
|
1428
|
+
attr_accessor :warning
|
1429
|
+
|
1430
|
+
def initialize(**args)
|
1431
|
+
update!(**args)
|
1432
|
+
end
|
1433
|
+
|
1434
|
+
# Update properties of this object
|
1435
|
+
def update!(**args)
|
1436
|
+
@create_version_metadata = args[:create_version_metadata] if args.key?(:create_version_metadata)
|
1437
|
+
@end_time = args[:end_time] if args.key?(:end_time)
|
1438
|
+
@ephemeral_message = args[:ephemeral_message] if args.key?(:ephemeral_message)
|
1439
|
+
@insert_time = args[:insert_time] if args.key?(:insert_time)
|
1440
|
+
@method_prop = args[:method_prop] if args.key?(:method_prop)
|
1441
|
+
@target = args[:target] if args.key?(:target)
|
1442
|
+
@user = args[:user] if args.key?(:user)
|
1443
|
+
@warning = args[:warning] if args.key?(:warning)
|
1444
|
+
end
|
1445
|
+
end
|
1446
|
+
|
1447
|
+
# Metadata for the given google.longrunning.Operation.
|
1448
|
+
class OperationMetadataV1Beta
|
1449
|
+
include Google::Apis::Core::Hashable
|
1450
|
+
|
1451
|
+
# Metadata for the given google.longrunning.Operation during a google.appengine.
|
1452
|
+
# v1beta.CreateVersionRequest.
|
1453
|
+
# Corresponds to the JSON property `createVersionMetadata`
|
1454
|
+
# @return [Google::Apis::AppengineV1beta5::CreateVersionMetadataV1Beta]
|
1455
|
+
attr_accessor :create_version_metadata
|
1456
|
+
|
1457
|
+
# Time that this operation completed.@OutputOnly
|
1458
|
+
# Corresponds to the JSON property `endTime`
|
1459
|
+
# @return [String]
|
1460
|
+
attr_accessor :end_time
|
1461
|
+
|
1462
|
+
# Ephemeral message that may change every time the operation is polled. @
|
1463
|
+
# OutputOnly
|
1464
|
+
# Corresponds to the JSON property `ephemeralMessage`
|
1465
|
+
# @return [String]
|
1466
|
+
attr_accessor :ephemeral_message
|
1467
|
+
|
1468
|
+
# Time that this operation was created.@OutputOnly
|
1469
|
+
# Corresponds to the JSON property `insertTime`
|
1470
|
+
# @return [String]
|
1471
|
+
attr_accessor :insert_time
|
1472
|
+
|
1473
|
+
# API method that initiated this operation. Example: google.appengine.v1beta.
|
1474
|
+
# Versions.CreateVersion.@OutputOnly
|
1475
|
+
# Corresponds to the JSON property `method`
|
1476
|
+
# @return [String]
|
1477
|
+
attr_accessor :method_prop
|
1478
|
+
|
1479
|
+
# Name of the resource that this operation is acting on. Example: apps/myapp/
|
1480
|
+
# services/default.@OutputOnly
|
1481
|
+
# Corresponds to the JSON property `target`
|
1482
|
+
# @return [String]
|
1483
|
+
attr_accessor :target
|
1484
|
+
|
1485
|
+
# User who requested this operation.@OutputOnly
|
1486
|
+
# Corresponds to the JSON property `user`
|
1487
|
+
# @return [String]
|
1488
|
+
attr_accessor :user
|
1489
|
+
|
1490
|
+
# Durable messages that persist on every operation poll. @OutputOnly
|
1491
|
+
# Corresponds to the JSON property `warning`
|
1492
|
+
# @return [Array<String>]
|
1493
|
+
attr_accessor :warning
|
1494
|
+
|
1495
|
+
def initialize(**args)
|
1496
|
+
update!(**args)
|
1497
|
+
end
|
1498
|
+
|
1499
|
+
# Update properties of this object
|
1500
|
+
def update!(**args)
|
1501
|
+
@create_version_metadata = args[:create_version_metadata] if args.key?(:create_version_metadata)
|
1502
|
+
@end_time = args[:end_time] if args.key?(:end_time)
|
1503
|
+
@ephemeral_message = args[:ephemeral_message] if args.key?(:ephemeral_message)
|
1504
|
+
@insert_time = args[:insert_time] if args.key?(:insert_time)
|
1505
|
+
@method_prop = args[:method_prop] if args.key?(:method_prop)
|
1506
|
+
@target = args[:target] if args.key?(:target)
|
1507
|
+
@user = args[:user] if args.key?(:user)
|
1508
|
+
@warning = args[:warning] if args.key?(:warning)
|
1509
|
+
end
|
1510
|
+
end
|
1511
|
+
|
1512
|
+
# Metadata for the given google.longrunning.Operation.
|
1513
|
+
class OperationMetadataV1Beta5
|
1514
|
+
include Google::Apis::Core::Hashable
|
1515
|
+
|
1516
|
+
# Timestamp that this operation completed.@OutputOnly
|
1517
|
+
# Corresponds to the JSON property `endTime`
|
1518
|
+
# @return [String]
|
1519
|
+
attr_accessor :end_time
|
1520
|
+
|
1521
|
+
# Timestamp that this operation was created.@OutputOnly
|
1522
|
+
# Corresponds to the JSON property `insertTime`
|
1523
|
+
# @return [String]
|
1524
|
+
attr_accessor :insert_time
|
1525
|
+
|
1526
|
+
# API method name that initiated this operation. Example: google.appengine.
|
1527
|
+
# v1beta5.Version.CreateVersion.@OutputOnly
|
1528
|
+
# Corresponds to the JSON property `method`
|
1529
|
+
# @return [String]
|
1530
|
+
attr_accessor :method_prop
|
1531
|
+
|
1532
|
+
# Name of the resource that this operation is acting on. Example: apps/myapp/
|
1533
|
+
# services/default.@OutputOnly
|
1534
|
+
# Corresponds to the JSON property `target`
|
1535
|
+
# @return [String]
|
1536
|
+
attr_accessor :target
|
1537
|
+
|
1538
|
+
# User who requested this operation.@OutputOnly
|
1539
|
+
# Corresponds to the JSON property `user`
|
1540
|
+
# @return [String]
|
1541
|
+
attr_accessor :user
|
1542
|
+
|
1543
|
+
def initialize(**args)
|
1544
|
+
update!(**args)
|
1545
|
+
end
|
1546
|
+
|
1547
|
+
# Update properties of this object
|
1548
|
+
def update!(**args)
|
1549
|
+
@end_time = args[:end_time] if args.key?(:end_time)
|
1550
|
+
@insert_time = args[:insert_time] if args.key?(:insert_time)
|
1551
|
+
@method_prop = args[:method_prop] if args.key?(:method_prop)
|
1552
|
+
@target = args[:target] if args.key?(:target)
|
1553
|
+
@user = args[:user] if args.key?(:user)
|
1554
|
+
end
|
1555
|
+
end
|
1556
|
+
|
1557
|
+
# Target scaling by request utilization. Only applicable for VM runtimes.
|
1558
|
+
class RequestUtilization
|
1559
|
+
include Google::Apis::Core::Hashable
|
1560
|
+
|
1561
|
+
# Target number of concurrent requests.
|
1562
|
+
# Corresponds to the JSON property `targetConcurrentRequests`
|
1563
|
+
# @return [Fixnum]
|
1564
|
+
attr_accessor :target_concurrent_requests
|
1565
|
+
|
1566
|
+
# Target requests per second.
|
1567
|
+
# Corresponds to the JSON property `targetRequestCountPerSec`
|
1568
|
+
# @return [Fixnum]
|
1569
|
+
attr_accessor :target_request_count_per_sec
|
1570
|
+
|
1571
|
+
def initialize(**args)
|
1572
|
+
update!(**args)
|
1573
|
+
end
|
1574
|
+
|
1575
|
+
# Update properties of this object
|
1576
|
+
def update!(**args)
|
1577
|
+
@target_concurrent_requests = args[:target_concurrent_requests] if args.key?(:target_concurrent_requests)
|
1578
|
+
@target_request_count_per_sec = args[:target_request_count_per_sec] if args.key?(:target_request_count_per_sec)
|
1579
|
+
end
|
1580
|
+
end
|
1581
|
+
|
1582
|
+
# Machine resources for a version.
|
1583
|
+
class Resources
|
1584
|
+
include Google::Apis::Core::Hashable
|
1585
|
+
|
1586
|
+
# Number of CPU cores needed.
|
1587
|
+
# Corresponds to the JSON property `cpu`
|
1588
|
+
# @return [Float]
|
1589
|
+
attr_accessor :cpu
|
1590
|
+
|
1591
|
+
# Disk size (GB) needed.
|
1592
|
+
# Corresponds to the JSON property `diskGb`
|
1593
|
+
# @return [Float]
|
1594
|
+
attr_accessor :disk_gb
|
1595
|
+
|
1596
|
+
# Memory (GB) needed.
|
1597
|
+
# Corresponds to the JSON property `memoryGb`
|
1598
|
+
# @return [Float]
|
1599
|
+
attr_accessor :memory_gb
|
1600
|
+
|
1601
|
+
# Volumes mounted within the app container.
|
1602
|
+
# Corresponds to the JSON property `volumes`
|
1603
|
+
# @return [Array<Google::Apis::AppengineV1beta5::Volume>]
|
1604
|
+
attr_accessor :volumes
|
1605
|
+
|
1606
|
+
def initialize(**args)
|
1607
|
+
update!(**args)
|
1608
|
+
end
|
1609
|
+
|
1610
|
+
# Update properties of this object
|
1611
|
+
def update!(**args)
|
1612
|
+
@cpu = args[:cpu] if args.key?(:cpu)
|
1613
|
+
@disk_gb = args[:disk_gb] if args.key?(:disk_gb)
|
1614
|
+
@memory_gb = args[:memory_gb] if args.key?(:memory_gb)
|
1615
|
+
@volumes = args[:volumes] if args.key?(:volumes)
|
1616
|
+
end
|
1617
|
+
end
|
1618
|
+
|
1619
|
+
# Executes a script to handle the request that matches the URL pattern.
|
1620
|
+
class ScriptHandler
|
1621
|
+
include Google::Apis::Core::Hashable
|
1622
|
+
|
1623
|
+
# Path to the script from the application root directory.
|
1624
|
+
# Corresponds to the JSON property `scriptPath`
|
1625
|
+
# @return [String]
|
1626
|
+
attr_accessor :script_path
|
1627
|
+
|
1628
|
+
def initialize(**args)
|
1629
|
+
update!(**args)
|
1630
|
+
end
|
1631
|
+
|
1632
|
+
# Update properties of this object
|
1633
|
+
def update!(**args)
|
1634
|
+
@script_path = args[:script_path] if args.key?(:script_path)
|
1635
|
+
end
|
1636
|
+
end
|
1637
|
+
|
1638
|
+
# A Service resource is a logical component of an application that can share
|
1639
|
+
# state and communicate in a secure fashion with other services. For example, an
|
1640
|
+
# application that handles customer requests might include separate services to
|
1641
|
+
# handle other tasks such as API requests from mobile devices or backend data
|
1642
|
+
# analysis. Each service has a collection of versions that define a specific set
|
1643
|
+
# of code used to implement the functionality of that service.
|
1644
|
+
class Service
|
1645
|
+
include Google::Apis::Core::Hashable
|
1646
|
+
|
1647
|
+
# Relative name of the service within the application. Example: default.@
|
1648
|
+
# OutputOnly
|
1649
|
+
# Corresponds to the JSON property `id`
|
1650
|
+
# @return [String]
|
1651
|
+
attr_accessor :id
|
1652
|
+
|
1653
|
+
# Full path to the Service resource in the API. Example: apps/myapp/services/
|
1654
|
+
# default.@OutputOnly
|
1655
|
+
# Corresponds to the JSON property `name`
|
1656
|
+
# @return [String]
|
1657
|
+
attr_accessor :name
|
1658
|
+
|
1659
|
+
# Traffic routing configuration for versions within a single service. Traffic
|
1660
|
+
# splits define how traffic directed to the service is assigned to versions.
|
1661
|
+
# Corresponds to the JSON property `split`
|
1662
|
+
# @return [Google::Apis::AppengineV1beta5::TrafficSplit]
|
1663
|
+
attr_accessor :split
|
1664
|
+
|
1665
|
+
def initialize(**args)
|
1666
|
+
update!(**args)
|
1667
|
+
end
|
1668
|
+
|
1669
|
+
# Update properties of this object
|
1670
|
+
def update!(**args)
|
1671
|
+
@id = args[:id] if args.key?(:id)
|
1672
|
+
@name = args[:name] if args.key?(:name)
|
1673
|
+
@split = args[:split] if args.key?(:split)
|
1674
|
+
end
|
1675
|
+
end
|
1676
|
+
|
1677
|
+
# Reference to a particular snapshot of the source tree used to build and deploy
|
1678
|
+
# the application.
|
1679
|
+
class SourceReference
|
1680
|
+
include Google::Apis::Core::Hashable
|
1681
|
+
|
1682
|
+
# URI string identifying the repository. Example: "https://source.developers.
|
1683
|
+
# google.com/p/app-123/r/default"
|
1684
|
+
# Corresponds to the JSON property `repository`
|
1685
|
+
# @return [String]
|
1686
|
+
attr_accessor :repository
|
1687
|
+
|
1688
|
+
# The canonical, persistent identifier of the deployed revision. Aliases that
|
1689
|
+
# include tags or branch names are not allowed. Example (git): "
|
1690
|
+
# 2198322f89e0bb2e25021667c2ed489d1fd34e6b"
|
1691
|
+
# Corresponds to the JSON property `revisionId`
|
1692
|
+
# @return [String]
|
1693
|
+
attr_accessor :revision_id
|
1694
|
+
|
1695
|
+
def initialize(**args)
|
1696
|
+
update!(**args)
|
1697
|
+
end
|
1698
|
+
|
1699
|
+
# Update properties of this object
|
1700
|
+
def update!(**args)
|
1701
|
+
@repository = args[:repository] if args.key?(:repository)
|
1702
|
+
@revision_id = args[:revision_id] if args.key?(:revision_id)
|
1703
|
+
end
|
1704
|
+
end
|
1705
|
+
|
1706
|
+
# Files served directly to the user for a given URL, such as images, CSS
|
1707
|
+
# stylesheets, or JavaScript source files. Static file handlers describe which
|
1708
|
+
# files in the application directory are static files, and which URLs serve them.
|
1709
|
+
class StaticFilesHandler
|
1710
|
+
include Google::Apis::Core::Hashable
|
1711
|
+
|
1712
|
+
# Whether files should also be uploaded as code data. By default, files declared
|
1713
|
+
# in static file handlers are uploaded as static data and are only served to end
|
1714
|
+
# users; they cannot be read by the application. If enabled, uploads are charged
|
1715
|
+
# against both your code and static data storage resource quotas.
|
1716
|
+
# Corresponds to the JSON property `applicationReadable`
|
1717
|
+
# @return [Boolean]
|
1718
|
+
attr_accessor :application_readable
|
1719
|
+
alias_method :application_readable?, :application_readable
|
1720
|
+
|
1721
|
+
# Time a static file served by this handler should be cached.
|
1722
|
+
# Corresponds to the JSON property `expiration`
|
1723
|
+
# @return [String]
|
1724
|
+
attr_accessor :expiration
|
1725
|
+
|
1726
|
+
# HTTP headers to use for all responses from these URLs.
|
1727
|
+
# Corresponds to the JSON property `httpHeaders`
|
1728
|
+
# @return [Hash<String,String>]
|
1729
|
+
attr_accessor :http_headers
|
1730
|
+
|
1731
|
+
# MIME type used to serve all files served by this handler. Defaults to file-
|
1732
|
+
# specific MIME types, which are derived from each file's filename extension.
|
1733
|
+
# Corresponds to the JSON property `mimeType`
|
1734
|
+
# @return [String]
|
1735
|
+
attr_accessor :mime_type
|
1736
|
+
|
1737
|
+
# Path to the static files matched by the URL pattern, from the application root
|
1738
|
+
# directory. The path can refer to text matched in groupings in the URL pattern.
|
1739
|
+
# Corresponds to the JSON property `path`
|
1740
|
+
# @return [String]
|
1741
|
+
attr_accessor :path
|
1742
|
+
|
1743
|
+
# Whether this handler should match the request if the file referenced by the
|
1744
|
+
# handler does not exist.
|
1745
|
+
# Corresponds to the JSON property `requireMatchingFile`
|
1746
|
+
# @return [Boolean]
|
1747
|
+
attr_accessor :require_matching_file
|
1748
|
+
alias_method :require_matching_file?, :require_matching_file
|
1749
|
+
|
1750
|
+
# Regular expression that matches the file paths for all files that should be
|
1751
|
+
# referenced by this handler.
|
1752
|
+
# Corresponds to the JSON property `uploadPathRegex`
|
1753
|
+
# @return [String]
|
1754
|
+
attr_accessor :upload_path_regex
|
1755
|
+
|
1756
|
+
def initialize(**args)
|
1757
|
+
update!(**args)
|
1758
|
+
end
|
1759
|
+
|
1760
|
+
# Update properties of this object
|
1761
|
+
def update!(**args)
|
1762
|
+
@application_readable = args[:application_readable] if args.key?(:application_readable)
|
1763
|
+
@expiration = args[:expiration] if args.key?(:expiration)
|
1764
|
+
@http_headers = args[:http_headers] if args.key?(:http_headers)
|
1765
|
+
@mime_type = args[:mime_type] if args.key?(:mime_type)
|
1766
|
+
@path = args[:path] if args.key?(:path)
|
1767
|
+
@require_matching_file = args[:require_matching_file] if args.key?(:require_matching_file)
|
1768
|
+
@upload_path_regex = args[:upload_path_regex] if args.key?(:upload_path_regex)
|
1769
|
+
end
|
1770
|
+
end
|
1771
|
+
|
1772
|
+
# The Status type defines a logical error model that is suitable for different
|
1773
|
+
# programming environments, including REST APIs and RPC APIs. It is used by gRPC
|
1774
|
+
# (https://github.com/grpc). The error model is designed to be:
|
1775
|
+
# Simple to use and understand for most users
|
1776
|
+
# Flexible enough to meet unexpected needsOverviewThe Status message contains
|
1777
|
+
# three pieces of data: error code, error message, and error details. The error
|
1778
|
+
# code should be an enum value of google.rpc.Code, but it may accept additional
|
1779
|
+
# error codes if needed. The error message should be a developer-facing English
|
1780
|
+
# message that helps developers understand and resolve the error. If a localized
|
1781
|
+
# user-facing error message is needed, put the localized message in the error
|
1782
|
+
# details or localize it in the client. The optional error details may contain
|
1783
|
+
# arbitrary information about the error. There is a predefined set of error
|
1784
|
+
# detail types in the package google.rpc that can be used for common error
|
1785
|
+
# conditions.Language mappingThe Status message is the logical representation of
|
1786
|
+
# the error model, but it is not necessarily the actual wire format. When the
|
1787
|
+
# Status message is exposed in different client libraries and different wire
|
1788
|
+
# protocols, it can be mapped differently. For example, it will likely be mapped
|
1789
|
+
# to some exceptions in Java, but more likely mapped to some error codes in C.
|
1790
|
+
# Other usesThe error model and the Status message can be used in a variety of
|
1791
|
+
# environments, either with or without APIs, to provide a consistent developer
|
1792
|
+
# experience across different environments.Example uses of this error model
|
1793
|
+
# include:
|
1794
|
+
# Partial errors. If a service needs to return partial errors to the client, it
|
1795
|
+
# may embed the Status in the normal response to indicate the partial errors.
|
1796
|
+
# Workflow errors. A typical workflow has multiple steps. Each step may have a
|
1797
|
+
# Status message for error reporting.
|
1798
|
+
# Batch operations. If a client uses batch request and batch response, the
|
1799
|
+
# Status message should be used directly inside batch response, one for each
|
1800
|
+
# error sub-response.
|
1801
|
+
# Asynchronous operations. If an API call embeds asynchronous operation results
|
1802
|
+
# in its response, the status of those operations should be represented directly
|
1803
|
+
# using the Status message.
|
1804
|
+
# Logging. If some API errors are stored in logs, the message Status could be
|
1805
|
+
# used directly after any stripping needed for security/privacy reasons.
|
1806
|
+
class Status
|
1807
|
+
include Google::Apis::Core::Hashable
|
1808
|
+
|
1809
|
+
# The status code, which should be an enum value of google.rpc.Code.
|
1810
|
+
# Corresponds to the JSON property `code`
|
1811
|
+
# @return [Fixnum]
|
1812
|
+
attr_accessor :code
|
1813
|
+
|
1814
|
+
# A list of messages that carry the error details. There is a common set of
|
1815
|
+
# message types for APIs to use.
|
1816
|
+
# Corresponds to the JSON property `details`
|
1817
|
+
# @return [Array<Hash<String,Object>>]
|
1818
|
+
attr_accessor :details
|
1819
|
+
|
1820
|
+
# A developer-facing error message, which should be in English. Any user-facing
|
1821
|
+
# error message should be localized and sent in the google.rpc.Status.details
|
1822
|
+
# field, or localized by the client.
|
1823
|
+
# Corresponds to the JSON property `message`
|
1824
|
+
# @return [String]
|
1825
|
+
attr_accessor :message
|
1826
|
+
|
1827
|
+
def initialize(**args)
|
1828
|
+
update!(**args)
|
1829
|
+
end
|
1830
|
+
|
1831
|
+
# Update properties of this object
|
1832
|
+
def update!(**args)
|
1833
|
+
@code = args[:code] if args.key?(:code)
|
1834
|
+
@details = args[:details] if args.key?(:details)
|
1835
|
+
@message = args[:message] if args.key?(:message)
|
1836
|
+
end
|
1837
|
+
end
|
1838
|
+
|
1839
|
+
# Traffic routing configuration for versions within a single service. Traffic
|
1840
|
+
# splits define how traffic directed to the service is assigned to versions.
|
1841
|
+
class TrafficSplit
|
1842
|
+
include Google::Apis::Core::Hashable
|
1843
|
+
|
1844
|
+
# Mapping from version IDs within the service to fractional (0.000, 1]
|
1845
|
+
# allocations of traffic for that version. Each version can be specified only
|
1846
|
+
# once, but some versions in the service may not have any traffic allocation.
|
1847
|
+
# Services that have traffic allocated cannot be deleted until either the
|
1848
|
+
# service is deleted or their traffic allocation is removed. Allocations must
|
1849
|
+
# sum to 1. Up to two decimal place precision is supported for IP-based splits
|
1850
|
+
# and up to three decimal places is supported for cookie-based splits.
|
1851
|
+
# Corresponds to the JSON property `allocations`
|
1852
|
+
# @return [Hash<String,Float>]
|
1853
|
+
attr_accessor :allocations
|
1854
|
+
|
1855
|
+
# Mechanism used to determine which version a request is sent to. The traffic
|
1856
|
+
# selection algorithm will be stable for either type until allocations are
|
1857
|
+
# changed.
|
1858
|
+
# Corresponds to the JSON property `shardBy`
|
1859
|
+
# @return [String]
|
1860
|
+
attr_accessor :shard_by
|
1861
|
+
|
1862
|
+
def initialize(**args)
|
1863
|
+
update!(**args)
|
1864
|
+
end
|
1865
|
+
|
1866
|
+
# Update properties of this object
|
1867
|
+
def update!(**args)
|
1868
|
+
@allocations = args[:allocations] if args.key?(:allocations)
|
1869
|
+
@shard_by = args[:shard_by] if args.key?(:shard_by)
|
1870
|
+
end
|
1871
|
+
end
|
1872
|
+
|
1873
|
+
# Rules to match an HTTP request and dispatch that request to a service.
|
1874
|
+
class UrlDispatchRule
|
1875
|
+
include Google::Apis::Core::Hashable
|
1876
|
+
|
1877
|
+
# Domain name to match against. The wildcard "*" is supported if specified
|
1878
|
+
# before a period: "*.".Defaults to matching all domains: "*".
|
1879
|
+
# Corresponds to the JSON property `domain`
|
1880
|
+
# @return [String]
|
1881
|
+
attr_accessor :domain
|
1882
|
+
|
1883
|
+
# Pathname within the host. Must start with a "/". A single "*" can be included
|
1884
|
+
# at the end of the path. The sum of the lengths of the domain and path may not
|
1885
|
+
# exceed 100 characters.
|
1886
|
+
# Corresponds to the JSON property `path`
|
1887
|
+
# @return [String]
|
1888
|
+
attr_accessor :path
|
1889
|
+
|
1890
|
+
# Resource id of a service in this application that should serve the matched
|
1891
|
+
# request. The service must already exist. Example: default.
|
1892
|
+
# Corresponds to the JSON property `service`
|
1893
|
+
# @return [String]
|
1894
|
+
attr_accessor :service
|
1895
|
+
|
1896
|
+
def initialize(**args)
|
1897
|
+
update!(**args)
|
1898
|
+
end
|
1899
|
+
|
1900
|
+
# Update properties of this object
|
1901
|
+
def update!(**args)
|
1902
|
+
@domain = args[:domain] if args.key?(:domain)
|
1903
|
+
@path = args[:path] if args.key?(:path)
|
1904
|
+
@service = args[:service] if args.key?(:service)
|
1905
|
+
end
|
1906
|
+
end
|
1907
|
+
|
1908
|
+
# URL pattern and description of how the URL should be handled. App Engine can
|
1909
|
+
# handle URLs by executing application code, or by serving static files uploaded
|
1910
|
+
# with the version, such as images, CSS, or JavaScript.
|
1911
|
+
class UrlMap
|
1912
|
+
include Google::Apis::Core::Hashable
|
1913
|
+
|
1914
|
+
# Uses Google Cloud Endpoints to handle requests.
|
1915
|
+
# Corresponds to the JSON property `apiEndpoint`
|
1916
|
+
# @return [Google::Apis::AppengineV1beta5::ApiEndpointHandler]
|
1917
|
+
attr_accessor :api_endpoint
|
1918
|
+
|
1919
|
+
# Action to take when users access resources that require authentication.
|
1920
|
+
# Defaults to redirect.
|
1921
|
+
# Corresponds to the JSON property `authFailAction`
|
1922
|
+
# @return [String]
|
1923
|
+
attr_accessor :auth_fail_action
|
1924
|
+
|
1925
|
+
# Level of login required to access this resource.
|
1926
|
+
# Corresponds to the JSON property `login`
|
1927
|
+
# @return [String]
|
1928
|
+
attr_accessor :login
|
1929
|
+
|
1930
|
+
# 30x code to use when performing redirects for the secure field. Defaults to
|
1931
|
+
# 302.
|
1932
|
+
# Corresponds to the JSON property `redirectHttpResponseCode`
|
1933
|
+
# @return [String]
|
1934
|
+
attr_accessor :redirect_http_response_code
|
1935
|
+
|
1936
|
+
# Executes a script to handle the request that matches the URL pattern.
|
1937
|
+
# Corresponds to the JSON property `script`
|
1938
|
+
# @return [Google::Apis::AppengineV1beta5::ScriptHandler]
|
1939
|
+
attr_accessor :script
|
1940
|
+
|
1941
|
+
# Security (HTTPS) enforcement for this URL.
|
1942
|
+
# Corresponds to the JSON property `securityLevel`
|
1943
|
+
# @return [String]
|
1944
|
+
attr_accessor :security_level
|
1945
|
+
|
1946
|
+
# Files served directly to the user for a given URL, such as images, CSS
|
1947
|
+
# stylesheets, or JavaScript source files. Static file handlers describe which
|
1948
|
+
# files in the application directory are static files, and which URLs serve them.
|
1949
|
+
# Corresponds to the JSON property `staticFiles`
|
1950
|
+
# @return [Google::Apis::AppengineV1beta5::StaticFilesHandler]
|
1951
|
+
attr_accessor :static_files
|
1952
|
+
|
1953
|
+
# A URL prefix. Uses regular expression syntax, which means regexp special
|
1954
|
+
# characters must be escaped, but should not contain groupings. All URLs that
|
1955
|
+
# begin with this prefix are handled by this handler, using the portion of the
|
1956
|
+
# URL after the prefix as part of the file path.
|
1957
|
+
# Corresponds to the JSON property `urlRegex`
|
1958
|
+
# @return [String]
|
1959
|
+
attr_accessor :url_regex
|
1960
|
+
|
1961
|
+
def initialize(**args)
|
1962
|
+
update!(**args)
|
1963
|
+
end
|
1964
|
+
|
1965
|
+
# Update properties of this object
|
1966
|
+
def update!(**args)
|
1967
|
+
@api_endpoint = args[:api_endpoint] if args.key?(:api_endpoint)
|
1968
|
+
@auth_fail_action = args[:auth_fail_action] if args.key?(:auth_fail_action)
|
1969
|
+
@login = args[:login] if args.key?(:login)
|
1970
|
+
@redirect_http_response_code = args[:redirect_http_response_code] if args.key?(:redirect_http_response_code)
|
1971
|
+
@script = args[:script] if args.key?(:script)
|
1972
|
+
@security_level = args[:security_level] if args.key?(:security_level)
|
1973
|
+
@static_files = args[:static_files] if args.key?(:static_files)
|
1974
|
+
@url_regex = args[:url_regex] if args.key?(:url_regex)
|
1975
|
+
end
|
1976
|
+
end
|
1977
|
+
|
1978
|
+
# A Version resource is a specific set of source code and configuration files
|
1979
|
+
# that are deployed into a service.
|
1980
|
+
class Version
|
1981
|
+
include Google::Apis::Core::Hashable
|
1982
|
+
|
1983
|
+
# Google Cloud Endpoints (https://cloud.google.com/appengine/docs/python/
|
1984
|
+
# endpoints/) configuration for API handlers.
|
1985
|
+
# Corresponds to the JSON property `apiConfig`
|
1986
|
+
# @return [Google::Apis::AppengineV1beta5::ApiConfigHandler]
|
1987
|
+
attr_accessor :api_config
|
1988
|
+
|
1989
|
+
# Automatic scaling is based on request rate, response latencies, and other
|
1990
|
+
# application metrics.
|
1991
|
+
# Corresponds to the JSON property `automaticScaling`
|
1992
|
+
# @return [Google::Apis::AppengineV1beta5::AutomaticScaling]
|
1993
|
+
attr_accessor :automatic_scaling
|
1994
|
+
|
1995
|
+
# A service with basic scaling will create an instance when the application
|
1996
|
+
# receives a request. The instance will be turned down when the app becomes idle.
|
1997
|
+
# Basic scaling is ideal for work that is intermittent or driven by user
|
1998
|
+
# activity.
|
1999
|
+
# Corresponds to the JSON property `basicScaling`
|
2000
|
+
# @return [Google::Apis::AppengineV1beta5::BasicScaling]
|
2001
|
+
attr_accessor :basic_scaling
|
2002
|
+
|
2003
|
+
# Metadata settings that are supplied to this version to enable beta runtime
|
2004
|
+
# features.
|
2005
|
+
# Corresponds to the JSON property `betaSettings`
|
2006
|
+
# @return [Hash<String,String>]
|
2007
|
+
attr_accessor :beta_settings
|
2008
|
+
|
2009
|
+
# Time that this version was created.@OutputOnly
|
2010
|
+
# Corresponds to the JSON property `creationTime`
|
2011
|
+
# @return [String]
|
2012
|
+
attr_accessor :creation_time
|
2013
|
+
|
2014
|
+
# Duration that static files should be cached by web proxies and browsers. Only
|
2015
|
+
# applicable if the corresponding StaticFilesHandler (https://cloud.google.com/
|
2016
|
+
# appengine/docs/admin-api/reference/rest/v1/apps.services.versions#
|
2017
|
+
# staticfileshandler) does not specify its own expiration time.Only returned in
|
2018
|
+
# GET requests if view=FULL is set.
|
2019
|
+
# Corresponds to the JSON property `defaultExpiration`
|
2020
|
+
# @return [String]
|
2021
|
+
attr_accessor :default_expiration
|
2022
|
+
|
2023
|
+
# Email address of the user who created this version.@OutputOnly
|
2024
|
+
# Corresponds to the JSON property `deployer`
|
2025
|
+
# @return [String]
|
2026
|
+
attr_accessor :deployer
|
2027
|
+
|
2028
|
+
# Code and application artifacts used to deploy a version to App Engine.
|
2029
|
+
# Corresponds to the JSON property `deployment`
|
2030
|
+
# @return [Google::Apis::AppengineV1beta5::Deployment]
|
2031
|
+
attr_accessor :deployment
|
2032
|
+
|
2033
|
+
# Total size of version files hosted on App Engine disk in bytes.@OutputOnly
|
2034
|
+
# Corresponds to the JSON property `diskUsageBytes`
|
2035
|
+
# @return [Fixnum]
|
2036
|
+
attr_accessor :disk_usage_bytes
|
2037
|
+
|
2038
|
+
# Cloud Endpoints (https://cloud.google.com/endpoints) configuration. The
|
2039
|
+
# Endpoints API Service provides tooling for serving Open API and gRPC endpoints
|
2040
|
+
# via an NGINX proxy. Only valid for App Engine Flexible environment deployments.
|
2041
|
+
# The fields here refer to the name and configuration id of a "service" resource
|
2042
|
+
# in the Service Management API (https://cloud.google.com/service-management/
|
2043
|
+
# overview).
|
2044
|
+
# Corresponds to the JSON property `endpointsApiService`
|
2045
|
+
# @return [Google::Apis::AppengineV1beta5::EndpointsApiService]
|
2046
|
+
attr_accessor :endpoints_api_service
|
2047
|
+
|
2048
|
+
# App Engine execution environment to use for this version.Defaults to 1.
|
2049
|
+
# Corresponds to the JSON property `env`
|
2050
|
+
# @return [String]
|
2051
|
+
attr_accessor :env
|
2052
|
+
|
2053
|
+
# Environment variables made available to the application.Only returned in GET
|
2054
|
+
# requests if view=FULL is set.
|
2055
|
+
# Corresponds to the JSON property `envVariables`
|
2056
|
+
# @return [Hash<String,String>]
|
2057
|
+
attr_accessor :env_variables
|
2058
|
+
|
2059
|
+
# Custom static error pages. Limited to 10KB per page.Only returned in GET
|
2060
|
+
# requests if view=FULL is set.
|
2061
|
+
# Corresponds to the JSON property `errorHandlers`
|
2062
|
+
# @return [Array<Google::Apis::AppengineV1beta5::ErrorHandler>]
|
2063
|
+
attr_accessor :error_handlers
|
2064
|
+
|
2065
|
+
# An ordered list of URL-matching patterns that should be applied to incoming
|
2066
|
+
# requests. The first matching URL handles the request and other request
|
2067
|
+
# handlers are not attempted.Only returned in GET requests if view=FULL is set.
|
2068
|
+
# Corresponds to the JSON property `handlers`
|
2069
|
+
# @return [Array<Google::Apis::AppengineV1beta5::UrlMap>]
|
2070
|
+
attr_accessor :handlers
|
2071
|
+
|
2072
|
+
# Health checking configuration for VM instances. Unhealthy instances are killed
|
2073
|
+
# and replaced with new instances. Only applicable for instances in App Engine
|
2074
|
+
# flexible environment.
|
2075
|
+
# Corresponds to the JSON property `healthCheck`
|
2076
|
+
# @return [Google::Apis::AppengineV1beta5::HealthCheck]
|
2077
|
+
attr_accessor :health_check
|
2078
|
+
|
2079
|
+
# Relative name of the version within the module. Example: v1. Version names can
|
2080
|
+
# contain only lowercase letters, numbers, or hyphens. Reserved names: "default",
|
2081
|
+
# "latest", and any name with the prefix "ah-".
|
2082
|
+
# Corresponds to the JSON property `id`
|
2083
|
+
# @return [String]
|
2084
|
+
attr_accessor :id
|
2085
|
+
|
2086
|
+
# Before an application can receive email or XMPP messages, the application must
|
2087
|
+
# be configured to enable the service.
|
2088
|
+
# Corresponds to the JSON property `inboundServices`
|
2089
|
+
# @return [Array<String>]
|
2090
|
+
attr_accessor :inbound_services
|
2091
|
+
|
2092
|
+
# Instance class that is used to run this version. Valid values are:
|
2093
|
+
# AutomaticScaling: F1, F2, F4, F4_1G
|
2094
|
+
# ManualScaling or BasicScaling: B1, B2, B4, B8, B4_1GDefaults to F1 for
|
2095
|
+
# AutomaticScaling and B1 for ManualScaling or BasicScaling.
|
2096
|
+
# Corresponds to the JSON property `instanceClass`
|
2097
|
+
# @return [String]
|
2098
|
+
attr_accessor :instance_class
|
2099
|
+
|
2100
|
+
# Configuration for third-party Python runtime libraries required by the
|
2101
|
+
# application.Only returned in GET requests if view=FULL is set.
|
2102
|
+
# Corresponds to the JSON property `libraries`
|
2103
|
+
# @return [Array<Google::Apis::AppengineV1beta5::Library>]
|
2104
|
+
attr_accessor :libraries
|
2105
|
+
|
2106
|
+
# A service with manual scaling runs continuously, allowing you to perform
|
2107
|
+
# complex initialization and rely on the state of its memory over time.
|
2108
|
+
# Corresponds to the JSON property `manualScaling`
|
2109
|
+
# @return [Google::Apis::AppengineV1beta5::ManualScaling]
|
2110
|
+
attr_accessor :manual_scaling
|
2111
|
+
|
2112
|
+
# Full path to the Version resource in the API. Example: apps/myapp/services/
|
2113
|
+
# default/versions/v1.@OutputOnly
|
2114
|
+
# Corresponds to the JSON property `name`
|
2115
|
+
# @return [String]
|
2116
|
+
attr_accessor :name
|
2117
|
+
|
2118
|
+
# Extra network settings. Only applicable for VM runtimes.
|
2119
|
+
# Corresponds to the JSON property `network`
|
2120
|
+
# @return [Google::Apis::AppengineV1beta5::Network]
|
2121
|
+
attr_accessor :network
|
2122
|
+
|
2123
|
+
# Files that match this pattern will not be built into this version. Only
|
2124
|
+
# applicable for Go runtimes.Only returned in GET requests if view=FULL is set.
|
2125
|
+
# Corresponds to the JSON property `nobuildFilesRegex`
|
2126
|
+
# @return [String]
|
2127
|
+
attr_accessor :nobuild_files_regex
|
2128
|
+
|
2129
|
+
# Machine resources for a version.
|
2130
|
+
# Corresponds to the JSON property `resources`
|
2131
|
+
# @return [Google::Apis::AppengineV1beta5::Resources]
|
2132
|
+
attr_accessor :resources
|
2133
|
+
|
2134
|
+
# Desired runtime. Example: python27.
|
2135
|
+
# Corresponds to the JSON property `runtime`
|
2136
|
+
# @return [String]
|
2137
|
+
attr_accessor :runtime
|
2138
|
+
|
2139
|
+
# The version of the API in the given runtime environment. Please see the app.
|
2140
|
+
# yaml reference for valid values at https://cloud.google.com/appengine/docs/
|
2141
|
+
# standard/<language>/config/appref
|
2142
|
+
# Corresponds to the JSON property `runtimeApiVersion`
|
2143
|
+
# @return [String]
|
2144
|
+
attr_accessor :runtime_api_version
|
2145
|
+
|
2146
|
+
# The path or name of the app's main executable.
|
2147
|
+
# Corresponds to the JSON property `runtimeMainExecutablePath`
|
2148
|
+
# @return [String]
|
2149
|
+
attr_accessor :runtime_main_executable_path
|
2150
|
+
|
2151
|
+
# Current serving status of this version. Only the versions with a SERVING
|
2152
|
+
# status create instances and can be billed.SERVING_STATUS_UNSPECIFIED is an
|
2153
|
+
# invalid value. Defaults to SERVING.
|
2154
|
+
# Corresponds to the JSON property `servingStatus`
|
2155
|
+
# @return [String]
|
2156
|
+
attr_accessor :serving_status
|
2157
|
+
|
2158
|
+
# Whether multiple requests can be dispatched to this version at once.
|
2159
|
+
# Corresponds to the JSON property `threadsafe`
|
2160
|
+
# @return [Boolean]
|
2161
|
+
attr_accessor :threadsafe
|
2162
|
+
alias_method :threadsafe?, :threadsafe
|
2163
|
+
|
2164
|
+
# Whether to deploy this version in a container on a virtual machine.
|
2165
|
+
# Corresponds to the JSON property `vm`
|
2166
|
+
# @return [Boolean]
|
2167
|
+
attr_accessor :vm
|
2168
|
+
alias_method :vm?, :vm
|
2169
|
+
|
2170
|
+
def initialize(**args)
|
2171
|
+
update!(**args)
|
2172
|
+
end
|
2173
|
+
|
2174
|
+
# Update properties of this object
|
2175
|
+
def update!(**args)
|
2176
|
+
@api_config = args[:api_config] if args.key?(:api_config)
|
2177
|
+
@automatic_scaling = args[:automatic_scaling] if args.key?(:automatic_scaling)
|
2178
|
+
@basic_scaling = args[:basic_scaling] if args.key?(:basic_scaling)
|
2179
|
+
@beta_settings = args[:beta_settings] if args.key?(:beta_settings)
|
2180
|
+
@creation_time = args[:creation_time] if args.key?(:creation_time)
|
2181
|
+
@default_expiration = args[:default_expiration] if args.key?(:default_expiration)
|
2182
|
+
@deployer = args[:deployer] if args.key?(:deployer)
|
2183
|
+
@deployment = args[:deployment] if args.key?(:deployment)
|
2184
|
+
@disk_usage_bytes = args[:disk_usage_bytes] if args.key?(:disk_usage_bytes)
|
2185
|
+
@endpoints_api_service = args[:endpoints_api_service] if args.key?(:endpoints_api_service)
|
2186
|
+
@env = args[:env] if args.key?(:env)
|
2187
|
+
@env_variables = args[:env_variables] if args.key?(:env_variables)
|
2188
|
+
@error_handlers = args[:error_handlers] if args.key?(:error_handlers)
|
2189
|
+
@handlers = args[:handlers] if args.key?(:handlers)
|
2190
|
+
@health_check = args[:health_check] if args.key?(:health_check)
|
2191
|
+
@id = args[:id] if args.key?(:id)
|
2192
|
+
@inbound_services = args[:inbound_services] if args.key?(:inbound_services)
|
2193
|
+
@instance_class = args[:instance_class] if args.key?(:instance_class)
|
2194
|
+
@libraries = args[:libraries] if args.key?(:libraries)
|
2195
|
+
@manual_scaling = args[:manual_scaling] if args.key?(:manual_scaling)
|
2196
|
+
@name = args[:name] if args.key?(:name)
|
2197
|
+
@network = args[:network] if args.key?(:network)
|
2198
|
+
@nobuild_files_regex = args[:nobuild_files_regex] if args.key?(:nobuild_files_regex)
|
2199
|
+
@resources = args[:resources] if args.key?(:resources)
|
2200
|
+
@runtime = args[:runtime] if args.key?(:runtime)
|
2201
|
+
@runtime_api_version = args[:runtime_api_version] if args.key?(:runtime_api_version)
|
2202
|
+
@runtime_main_executable_path = args[:runtime_main_executable_path] if args.key?(:runtime_main_executable_path)
|
2203
|
+
@serving_status = args[:serving_status] if args.key?(:serving_status)
|
2204
|
+
@threadsafe = args[:threadsafe] if args.key?(:threadsafe)
|
2205
|
+
@vm = args[:vm] if args.key?(:vm)
|
2206
|
+
end
|
2207
|
+
end
|
2208
|
+
|
2209
|
+
# Volumes mounted within the app container. Only applicable for VM runtimes.
|
2210
|
+
class Volume
|
2211
|
+
include Google::Apis::Core::Hashable
|
2212
|
+
|
2213
|
+
# Unique name for the volume.
|
2214
|
+
# Corresponds to the JSON property `name`
|
2215
|
+
# @return [String]
|
2216
|
+
attr_accessor :name
|
2217
|
+
|
2218
|
+
# Volume size in gigabytes.
|
2219
|
+
# Corresponds to the JSON property `sizeGb`
|
2220
|
+
# @return [Float]
|
2221
|
+
attr_accessor :size_gb
|
2222
|
+
|
2223
|
+
# Underlying volume type, e.g. 'tmpfs'.
|
2224
|
+
# Corresponds to the JSON property `volumeType`
|
2225
|
+
# @return [String]
|
2226
|
+
attr_accessor :volume_type
|
2227
|
+
|
2228
|
+
def initialize(**args)
|
2229
|
+
update!(**args)
|
2230
|
+
end
|
2231
|
+
|
2232
|
+
# Update properties of this object
|
2233
|
+
def update!(**args)
|
2234
|
+
@name = args[:name] if args.key?(:name)
|
2235
|
+
@size_gb = args[:size_gb] if args.key?(:size_gb)
|
2236
|
+
@volume_type = args[:volume_type] if args.key?(:volume_type)
|
2237
|
+
end
|
2238
|
+
end
|
2239
|
+
end
|
2240
|
+
end
|
2241
|
+
end
|