google-apis-run_v1 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: 120e8174a2af7e5311690a93c723bd74d98264f192dd9ebd71fea371534ba70d
4
+ data.tar.gz: 7072870fbe01c00a49f06280a00eacf240b729b20b53b155353b7032ae0c16f3
5
+ SHA512:
6
+ metadata.gz: fe2810cad00bbfc451ba5491284824de3d611f35d753ee14c9149a4876dd1b05ff428e080004efe54701407868e3d3735d95c6173595c2e24fca217ea70412da
7
+ data.tar.gz: c53e0838af4aeb5fedb04ec49ba8da05ccdb09c8dc46763277b3d42c7ab170650a342fdc5c88567ca12ec2a53ab6af907ee31baf509846a0d63bb883d67ce35b
@@ -0,0 +1,13 @@
1
+ --hide-void-return
2
+ --no-private
3
+ --verbose
4
+ --title=google-apis-run_v1
5
+ --markup-provider=redcarpet
6
+ --markup=markdown
7
+ --main OVERVIEW.md
8
+ lib/google/apis/run_v1/*.rb
9
+ lib/google/apis/run_v1.rb
10
+ -
11
+ OVERVIEW.md
12
+ CHANGELOG.md
13
+ LICENSE.md
@@ -0,0 +1,7 @@
1
+ # Release history for google-apis-run_v1
2
+
3
+ ### v0.1.0 (2021-01-07)
4
+
5
+ * Regenerated using generator version 0.1.1
6
+ * Regenerated from discovery document revision 20201113
7
+
@@ -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.
@@ -0,0 +1,96 @@
1
+ # Simple REST client for version V1 of the Cloud Run Admin API
2
+
3
+ This is a simple client library for version V1 of the Cloud Run 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/run.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-run_v1', '~> 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-run_v1
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/run_v1"
49
+
50
+ # Create a client object
51
+ client = Google::Apis::RunV1::CloudRunService.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 Run service in particular.)
67
+
68
+ For reference information on specific calls in the Cloud Run Admin API, see the {Google::Apis::RunV1::CloudRunService 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-run_v1`, 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/run/) 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/run_v1"
@@ -0,0 +1,37 @@
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/run_v1/service.rb'
16
+ require 'google/apis/run_v1/classes.rb'
17
+ require 'google/apis/run_v1/representations.rb'
18
+ require 'google/apis/run_v1/gem_version.rb'
19
+
20
+ module Google
21
+ module Apis
22
+ # Cloud Run Admin API
23
+ #
24
+ # Deploy and manage user provided container images that scale automatically
25
+ # based on HTTP traffic.
26
+ #
27
+ # @see https://cloud.google.com/run/
28
+ module RunV1
29
+ # Version of the Cloud Run Admin API this client connects to.
30
+ # This is NOT the gem version.
31
+ VERSION = 'V1'
32
+
33
+ # View and manage your data across Google Cloud Platform services
34
+ AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,3084 @@
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 RunV1
24
+
25
+ # Information for connecting over HTTP(s).
26
+ class Addressable
27
+ include Google::Apis::Core::Hashable
28
+
29
+ #
30
+ # Corresponds to the JSON property `url`
31
+ # @return [String]
32
+ attr_accessor :url
33
+
34
+ def initialize(**args)
35
+ update!(**args)
36
+ end
37
+
38
+ # Update properties of this object
39
+ def update!(**args)
40
+ @url = args[:url] if args.key?(:url)
41
+ end
42
+ end
43
+
44
+ # Specifies the audit configuration for a service. The configuration determines
45
+ # which permission types are logged, and what identities, if any, are exempted
46
+ # from logging. An AuditConfig must have one or more AuditLogConfigs. If there
47
+ # are AuditConfigs for both `allServices` and a specific service, the union of
48
+ # the two AuditConfigs is used for that service: the log_types specified in each
49
+ # AuditConfig are enabled, and the exempted_members in each AuditLogConfig are
50
+ # exempted. Example Policy with multiple AuditConfigs: ` "audit_configs": [ ` "
51
+ # service": "allServices", "audit_log_configs": [ ` "log_type": "DATA_READ", "
52
+ # exempted_members": [ "user:jose@example.com" ] `, ` "log_type": "DATA_WRITE" `,
53
+ # ` "log_type": "ADMIN_READ" ` ] `, ` "service": "sampleservice.googleapis.com",
54
+ # "audit_log_configs": [ ` "log_type": "DATA_READ" `, ` "log_type": "DATA_WRITE"
55
+ # , "exempted_members": [ "user:aliya@example.com" ] ` ] ` ] ` For sampleservice,
56
+ # this policy enables DATA_READ, DATA_WRITE and ADMIN_READ logging. It also
57
+ # exempts jose@example.com from DATA_READ logging, and aliya@example.com from
58
+ # DATA_WRITE logging.
59
+ class AuditConfig
60
+ include Google::Apis::Core::Hashable
61
+
62
+ # The configuration for logging of each type of permission.
63
+ # Corresponds to the JSON property `auditLogConfigs`
64
+ # @return [Array<Google::Apis::RunV1::AuditLogConfig>]
65
+ attr_accessor :audit_log_configs
66
+
67
+ # Specifies a service that will be enabled for audit logging. For example, `
68
+ # storage.googleapis.com`, `cloudsql.googleapis.com`. `allServices` is a special
69
+ # value that covers all services.
70
+ # Corresponds to the JSON property `service`
71
+ # @return [String]
72
+ attr_accessor :service
73
+
74
+ def initialize(**args)
75
+ update!(**args)
76
+ end
77
+
78
+ # Update properties of this object
79
+ def update!(**args)
80
+ @audit_log_configs = args[:audit_log_configs] if args.key?(:audit_log_configs)
81
+ @service = args[:service] if args.key?(:service)
82
+ end
83
+ end
84
+
85
+ # Provides the configuration for logging a type of permissions. Example: ` "
86
+ # audit_log_configs": [ ` "log_type": "DATA_READ", "exempted_members": [ "user:
87
+ # jose@example.com" ] `, ` "log_type": "DATA_WRITE" ` ] ` This enables '
88
+ # DATA_READ' and 'DATA_WRITE' logging, while exempting jose@example.com from
89
+ # DATA_READ logging.
90
+ class AuditLogConfig
91
+ include Google::Apis::Core::Hashable
92
+
93
+ # Specifies the identities that do not cause logging for this type of permission.
94
+ # Follows the same format of Binding.members.
95
+ # Corresponds to the JSON property `exemptedMembers`
96
+ # @return [Array<String>]
97
+ attr_accessor :exempted_members
98
+
99
+ # The log type that this config enables.
100
+ # Corresponds to the JSON property `logType`
101
+ # @return [String]
102
+ attr_accessor :log_type
103
+
104
+ def initialize(**args)
105
+ update!(**args)
106
+ end
107
+
108
+ # Update properties of this object
109
+ def update!(**args)
110
+ @exempted_members = args[:exempted_members] if args.key?(:exempted_members)
111
+ @log_type = args[:log_type] if args.key?(:log_type)
112
+ end
113
+ end
114
+
115
+ # A domain that a user has been authorized to administer. To authorize use of a
116
+ # domain, verify ownership via [Webmaster Central](https://www.google.com/
117
+ # webmasters/verification/home).
118
+ class AuthorizedDomain
119
+ include Google::Apis::Core::Hashable
120
+
121
+ # Relative name of the domain authorized for use. Example: `example.com`.
122
+ # Corresponds to the JSON property `id`
123
+ # @return [String]
124
+ attr_accessor :id
125
+
126
+ # Deprecated Read only. Full path to the `AuthorizedDomain` resource in the API.
127
+ # Example: `projects/myproject/authorizedDomains/example.com`.
128
+ # Corresponds to the JSON property `name`
129
+ # @return [String]
130
+ attr_accessor :name
131
+
132
+ def initialize(**args)
133
+ update!(**args)
134
+ end
135
+
136
+ # Update properties of this object
137
+ def update!(**args)
138
+ @id = args[:id] if args.key?(:id)
139
+ @name = args[:name] if args.key?(:name)
140
+ end
141
+ end
142
+
143
+ # Associates `members` with a `role`.
144
+ class Binding
145
+ include Google::Apis::Core::Hashable
146
+
147
+ # Represents a textual expression in the Common Expression Language (CEL) syntax.
148
+ # CEL is a C-like expression language. The syntax and semantics of CEL are
149
+ # documented at https://github.com/google/cel-spec. Example (Comparison): title:
150
+ # "Summary size limit" description: "Determines if a summary is less than 100
151
+ # chars" expression: "document.summary.size() < 100" Example (Equality): title: "
152
+ # Requestor is owner" description: "Determines if requestor is the document
153
+ # owner" expression: "document.owner == request.auth.claims.email" Example (
154
+ # Logic): title: "Public documents" description: "Determine whether the document
155
+ # should be publicly visible" expression: "document.type != 'private' &&
156
+ # document.type != 'internal'" Example (Data Manipulation): title: "Notification
157
+ # string" description: "Create a notification string with a timestamp."
158
+ # expression: "'New message received at ' + string(document.create_time)" The
159
+ # exact variables and functions that may be referenced within an expression are
160
+ # determined by the service that evaluates it. See the service documentation for
161
+ # additional information.
162
+ # Corresponds to the JSON property `condition`
163
+ # @return [Google::Apis::RunV1::Expr]
164
+ attr_accessor :condition
165
+
166
+ # Specifies the identities requesting access for a Cloud Platform resource. `
167
+ # members` can have the following values: * `allUsers`: A special identifier
168
+ # that represents anyone who is on the internet; with or without a Google
169
+ # account. * `allAuthenticatedUsers`: A special identifier that represents
170
+ # anyone who is authenticated with a Google account or a service account. * `
171
+ # user:`emailid``: An email address that represents a specific Google account.
172
+ # For example, `alice@example.com` . * `serviceAccount:`emailid``: An email
173
+ # address that represents a service account. For example, `my-other-app@appspot.
174
+ # gserviceaccount.com`. * `group:`emailid``: An email address that represents a
175
+ # Google group. For example, `admins@example.com`. * `deleted:user:`emailid`?uid=
176
+ # `uniqueid``: An email address (plus unique identifier) representing a user
177
+ # that has been recently deleted. For example, `alice@example.com?uid=
178
+ # 123456789012345678901`. If the user is recovered, this value reverts to `user:`
179
+ # emailid`` and the recovered user retains the role in the binding. * `deleted:
180
+ # serviceAccount:`emailid`?uid=`uniqueid``: An email address (plus unique
181
+ # identifier) representing a service account that has been recently deleted. For
182
+ # example, `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`.
183
+ # If the service account is undeleted, this value reverts to `serviceAccount:`
184
+ # emailid`` and the undeleted service account retains the role in the binding. *
185
+ # `deleted:group:`emailid`?uid=`uniqueid``: An email address (plus unique
186
+ # identifier) representing a Google group that has been recently deleted. For
187
+ # example, `admins@example.com?uid=123456789012345678901`. If the group is
188
+ # recovered, this value reverts to `group:`emailid`` and the recovered group
189
+ # retains the role in the binding. * `domain:`domain``: The G Suite domain (
190
+ # primary) that represents all the users of that domain. For example, `google.
191
+ # com` or `example.com`.
192
+ # Corresponds to the JSON property `members`
193
+ # @return [Array<String>]
194
+ attr_accessor :members
195
+
196
+ # Role that is assigned to `members`. For example, `roles/viewer`, `roles/editor`
197
+ # , or `roles/owner`.
198
+ # Corresponds to the JSON property `role`
199
+ # @return [String]
200
+ attr_accessor :role
201
+
202
+ def initialize(**args)
203
+ update!(**args)
204
+ end
205
+
206
+ # Update properties of this object
207
+ def update!(**args)
208
+ @condition = args[:condition] if args.key?(:condition)
209
+ @members = args[:members] if args.key?(:members)
210
+ @role = args[:role] if args.key?(:role)
211
+ end
212
+ end
213
+
214
+ # Cloud Run fully managed: not supported Cloud Run for Anthos: supported
215
+ # ConfigMapEnvSource selects a ConfigMap to populate the environment variables
216
+ # with. The contents of the target ConfigMap's Data field will represent the key-
217
+ # value pairs as environment variables.
218
+ class ConfigMapEnvSource
219
+ include Google::Apis::Core::Hashable
220
+
221
+ # Cloud Run fully managed: not supported Cloud Run for Anthos: supported
222
+ # LocalObjectReference contains enough information to let you locate the
223
+ # referenced object inside the same namespace.
224
+ # Corresponds to the JSON property `localObjectReference`
225
+ # @return [Google::Apis::RunV1::LocalObjectReference]
226
+ attr_accessor :local_object_reference
227
+
228
+ # Cloud Run fully managed: not supported Cloud Run for Anthos: supported The
229
+ # ConfigMap to select from.
230
+ # Corresponds to the JSON property `name`
231
+ # @return [String]
232
+ attr_accessor :name
233
+
234
+ # (Optional) Cloud Run fully managed: not supported Cloud Run for Anthos:
235
+ # supported Specify whether the ConfigMap must be defined
236
+ # Corresponds to the JSON property `optional`
237
+ # @return [Boolean]
238
+ attr_accessor :optional
239
+ alias_method :optional?, :optional
240
+
241
+ def initialize(**args)
242
+ update!(**args)
243
+ end
244
+
245
+ # Update properties of this object
246
+ def update!(**args)
247
+ @local_object_reference = args[:local_object_reference] if args.key?(:local_object_reference)
248
+ @name = args[:name] if args.key?(:name)
249
+ @optional = args[:optional] if args.key?(:optional)
250
+ end
251
+ end
252
+
253
+ # Cloud Run fully managed: not supported Cloud Run for Anthos: supported Selects
254
+ # a key from a ConfigMap.
255
+ class ConfigMapKeySelector
256
+ include Google::Apis::Core::Hashable
257
+
258
+ # Cloud Run fully managed: not supported Cloud Run for Anthos: supported The key
259
+ # to select.
260
+ # Corresponds to the JSON property `key`
261
+ # @return [String]
262
+ attr_accessor :key
263
+
264
+ # Cloud Run fully managed: not supported Cloud Run for Anthos: supported
265
+ # LocalObjectReference contains enough information to let you locate the
266
+ # referenced object inside the same namespace.
267
+ # Corresponds to the JSON property `localObjectReference`
268
+ # @return [Google::Apis::RunV1::LocalObjectReference]
269
+ attr_accessor :local_object_reference
270
+
271
+ # Cloud Run fully managed: not supported Cloud Run for Anthos: supported The
272
+ # ConfigMap to select from.
273
+ # Corresponds to the JSON property `name`
274
+ # @return [String]
275
+ attr_accessor :name
276
+
277
+ # (Optional) Cloud Run fully managed: not supported Cloud Run for Anthos:
278
+ # supported Specify whether the ConfigMap or its key must be defined
279
+ # Corresponds to the JSON property `optional`
280
+ # @return [Boolean]
281
+ attr_accessor :optional
282
+ alias_method :optional?, :optional
283
+
284
+ def initialize(**args)
285
+ update!(**args)
286
+ end
287
+
288
+ # Update properties of this object
289
+ def update!(**args)
290
+ @key = args[:key] if args.key?(:key)
291
+ @local_object_reference = args[:local_object_reference] if args.key?(:local_object_reference)
292
+ @name = args[:name] if args.key?(:name)
293
+ @optional = args[:optional] if args.key?(:optional)
294
+ end
295
+ end
296
+
297
+ # Cloud Run fully managed: not supported Cloud Run for Anthos: supported Adapts
298
+ # a ConfigMap into a volume. The contents of the target ConfigMap's Data field
299
+ # will be presented in a volume as files using the keys in the Data field as the
300
+ # file names, unless the items element is populated with specific mappings of
301
+ # keys to paths.
302
+ class ConfigMapVolumeSource
303
+ include Google::Apis::Core::Hashable
304
+
305
+ # (Optional) Cloud Run fully managed: not supported Cloud Run for Anthos:
306
+ # supported Mode bits to use on created files by default. Must be a value
307
+ # between 0 and 0777. Defaults to 0644. Directories within the path are not
308
+ # affected by this setting. This might be in conflict with other options that
309
+ # affect the file mode, like fsGroup, and the result can be other mode bits set.
310
+ # Corresponds to the JSON property `defaultMode`
311
+ # @return [Fixnum]
312
+ attr_accessor :default_mode
313
+
314
+ # (Optional) Cloud Run fully managed: not supported Cloud Run for Anthos:
315
+ # supported If unspecified, each key-value pair in the Data field of the
316
+ # referenced Secret will be projected into the volume as a file whose name is
317
+ # the key and content is the value. If specified, the listed keys will be
318
+ # projected into the specified paths, and unlisted keys will not be present. If
319
+ # a key is specified which is not present in the Secret, the volume setup will
320
+ # error unless it is marked optional.
321
+ # Corresponds to the JSON property `items`
322
+ # @return [Array<Google::Apis::RunV1::KeyToPath>]
323
+ attr_accessor :items
324
+
325
+ # Cloud Run fully managed: not supported Cloud Run for Anthos: supported Name of
326
+ # the config.
327
+ # Corresponds to the JSON property `name`
328
+ # @return [String]
329
+ attr_accessor :name
330
+
331
+ # (Optional) Cloud Run fully managed: not supported Cloud Run for Anthos:
332
+ # supported Specify whether the Secret or its keys must be defined.
333
+ # Corresponds to the JSON property `optional`
334
+ # @return [Boolean]
335
+ attr_accessor :optional
336
+ alias_method :optional?, :optional
337
+
338
+ def initialize(**args)
339
+ update!(**args)
340
+ end
341
+
342
+ # Update properties of this object
343
+ def update!(**args)
344
+ @default_mode = args[:default_mode] if args.key?(:default_mode)
345
+ @items = args[:items] if args.key?(:items)
346
+ @name = args[:name] if args.key?(:name)
347
+ @optional = args[:optional] if args.key?(:optional)
348
+ end
349
+ end
350
+
351
+ # Configuration represents the "floating HEAD" of a linear history of Revisions,
352
+ # and optionally how the containers those revisions reference are built. Users
353
+ # create new Revisions by updating the Configuration's spec. The "latest created"
354
+ # revision's name is available under status, as is the "latest ready" revision'
355
+ # s name. See also: https://github.com/knative/serving/blob/master/docs/spec/
356
+ # overview.md#configuration
357
+ class Configuration
358
+ include Google::Apis::Core::Hashable
359
+
360
+ # The API version for this call such as "serving.knative.dev/v1".
361
+ # Corresponds to the JSON property `apiVersion`
362
+ # @return [String]
363
+ attr_accessor :api_version
364
+
365
+ # The kind of resource, in this case always "Configuration".
366
+ # Corresponds to the JSON property `kind`
367
+ # @return [String]
368
+ attr_accessor :kind
369
+
370
+ # k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta is metadata that all persisted
371
+ # resources must have, which includes all objects users must create.
372
+ # Corresponds to the JSON property `metadata`
373
+ # @return [Google::Apis::RunV1::ObjectMeta]
374
+ attr_accessor :metadata
375
+
376
+ # ConfigurationSpec holds the desired state of the Configuration (from the
377
+ # client).
378
+ # Corresponds to the JSON property `spec`
379
+ # @return [Google::Apis::RunV1::ConfigurationSpec]
380
+ attr_accessor :spec
381
+
382
+ # ConfigurationStatus communicates the observed state of the Configuration (from
383
+ # the controller).
384
+ # Corresponds to the JSON property `status`
385
+ # @return [Google::Apis::RunV1::ConfigurationStatus]
386
+ attr_accessor :status
387
+
388
+ def initialize(**args)
389
+ update!(**args)
390
+ end
391
+
392
+ # Update properties of this object
393
+ def update!(**args)
394
+ @api_version = args[:api_version] if args.key?(:api_version)
395
+ @kind = args[:kind] if args.key?(:kind)
396
+ @metadata = args[:metadata] if args.key?(:metadata)
397
+ @spec = args[:spec] if args.key?(:spec)
398
+ @status = args[:status] if args.key?(:status)
399
+ end
400
+ end
401
+
402
+ # ConfigurationSpec holds the desired state of the Configuration (from the
403
+ # client).
404
+ class ConfigurationSpec
405
+ include Google::Apis::Core::Hashable
406
+
407
+ # RevisionTemplateSpec describes the data a revision should have when created
408
+ # from a template. Based on: https://github.com/kubernetes/api/blob/e771f807/
409
+ # core/v1/types.go#L3179-L3190
410
+ # Corresponds to the JSON property `template`
411
+ # @return [Google::Apis::RunV1::RevisionTemplate]
412
+ attr_accessor :template
413
+
414
+ def initialize(**args)
415
+ update!(**args)
416
+ end
417
+
418
+ # Update properties of this object
419
+ def update!(**args)
420
+ @template = args[:template] if args.key?(:template)
421
+ end
422
+ end
423
+
424
+ # ConfigurationStatus communicates the observed state of the Configuration (from
425
+ # the controller).
426
+ class ConfigurationStatus
427
+ include Google::Apis::Core::Hashable
428
+
429
+ # Conditions communicates information about ongoing/complete reconciliation
430
+ # processes that bring the "spec" inline with the observed state of the world.
431
+ # Corresponds to the JSON property `conditions`
432
+ # @return [Array<Google::Apis::RunV1::GoogleCloudRunV1Condition>]
433
+ attr_accessor :conditions
434
+
435
+ # LatestCreatedRevisionName is the last revision that was created from this
436
+ # Configuration. It might not be ready yet, for that use LatestReadyRevisionName.
437
+ # Corresponds to the JSON property `latestCreatedRevisionName`
438
+ # @return [String]
439
+ attr_accessor :latest_created_revision_name
440
+
441
+ # LatestReadyRevisionName holds the name of the latest Revision stamped out from
442
+ # this Configuration that has had its "Ready" condition become "True".
443
+ # Corresponds to the JSON property `latestReadyRevisionName`
444
+ # @return [String]
445
+ attr_accessor :latest_ready_revision_name
446
+
447
+ # ObservedGeneration is the 'Generation' of the Configuration that was last
448
+ # processed by the controller. The observed generation is updated even if the
449
+ # controller failed to process the spec and create the Revision. Clients polling
450
+ # for completed reconciliation should poll until observedGeneration = metadata.
451
+ # generation, and the Ready condition's status is True or False.
452
+ # Corresponds to the JSON property `observedGeneration`
453
+ # @return [Fixnum]
454
+ attr_accessor :observed_generation
455
+
456
+ def initialize(**args)
457
+ update!(**args)
458
+ end
459
+
460
+ # Update properties of this object
461
+ def update!(**args)
462
+ @conditions = args[:conditions] if args.key?(:conditions)
463
+ @latest_created_revision_name = args[:latest_created_revision_name] if args.key?(:latest_created_revision_name)
464
+ @latest_ready_revision_name = args[:latest_ready_revision_name] if args.key?(:latest_ready_revision_name)
465
+ @observed_generation = args[:observed_generation] if args.key?(:observed_generation)
466
+ end
467
+ end
468
+
469
+ # A single application container. This specifies both the container to run, the
470
+ # command to run in the container and the arguments to supply to it. Note that
471
+ # additional arguments may be supplied by the system to the container at runtime.
472
+ class Container
473
+ include Google::Apis::Core::Hashable
474
+
475
+ # (Optional) Cloud Run fully managed: supported Cloud Run for Anthos: supported
476
+ # Arguments to the entrypoint. The docker image's CMD is used if this is not
477
+ # provided. Variable references $(VAR_NAME) are expanded using the container's
478
+ # environment. If a variable cannot be resolved, the reference in the input
479
+ # string will be unchanged. The $(VAR_NAME) syntax can be escaped with a double $
480
+ # $, ie: $$(VAR_NAME). Escaped references will never be expanded, regardless of
481
+ # whether the variable exists or not. More info: https://kubernetes.io/docs/
482
+ # tasks/inject-data-application/define-command-argument-container/#running-a-
483
+ # command-in-a-shell
484
+ # Corresponds to the JSON property `args`
485
+ # @return [Array<String>]
486
+ attr_accessor :args
487
+
488
+ #
489
+ # Corresponds to the JSON property `command`
490
+ # @return [Array<String>]
491
+ attr_accessor :command
492
+
493
+ # (Optional) Cloud Run fully managed: supported Cloud Run for Anthos: supported
494
+ # List of environment variables to set in the container.
495
+ # Corresponds to the JSON property `env`
496
+ # @return [Array<Google::Apis::RunV1::EnvVar>]
497
+ attr_accessor :env
498
+
499
+ # (Optional) Cloud Run fully managed: not supported Cloud Run for Anthos:
500
+ # supported List of sources to populate environment variables in the container.
501
+ # The keys defined within a source must be a C_IDENTIFIER. All invalid keys will
502
+ # be reported as an event when the container is starting. When a key exists in
503
+ # multiple sources, the value associated with the last source will take
504
+ # precedence. Values defined by an Env with a duplicate key will take precedence.
505
+ # Cannot be updated.
506
+ # Corresponds to the JSON property `envFrom`
507
+ # @return [Array<Google::Apis::RunV1::EnvFromSource>]
508
+ attr_accessor :env_from
509
+
510
+ # Cloud Run fully managed: only supports containers from Google Container
511
+ # Registry Cloud Run for Anthos: supported URL of the Container image. More info:
512
+ # https://kubernetes.io/docs/concepts/containers/images
513
+ # Corresponds to the JSON property `image`
514
+ # @return [String]
515
+ attr_accessor :image
516
+
517
+ # (Optional) Cloud Run fully managed: not supported Cloud Run for Anthos:
518
+ # supported Image pull policy. One of Always, Never, IfNotPresent. Defaults to
519
+ # Always if :latest tag is specified, or IfNotPresent otherwise. More info:
520
+ # https://kubernetes.io/docs/concepts/containers/images#updating-images
521
+ # Corresponds to the JSON property `imagePullPolicy`
522
+ # @return [String]
523
+ attr_accessor :image_pull_policy
524
+
525
+ # Cloud Run fully managed: not supported Cloud Run for Anthos: supported Probe
526
+ # describes a health check to be performed against a container to determine
527
+ # whether it is alive or ready to receive traffic.
528
+ # Corresponds to the JSON property `livenessProbe`
529
+ # @return [Google::Apis::RunV1::Probe]
530
+ attr_accessor :liveness_probe
531
+
532
+ # (Optional) Name of the container specified as a DNS_LABEL.
533
+ # Corresponds to the JSON property `name`
534
+ # @return [String]
535
+ attr_accessor :name
536
+
537
+ # (Optional) List of ports to expose from the container. Only a single port can
538
+ # be specified. The specified ports must be listening on all interfaces (0.0.0.0)
539
+ # within the container to be accessible. If omitted, a port number will be
540
+ # chosen and passed to the container through the PORT environment variable for
541
+ # the container to listen on.
542
+ # Corresponds to the JSON property `ports`
543
+ # @return [Array<Google::Apis::RunV1::ContainerPort>]
544
+ attr_accessor :ports
545
+
546
+ # Cloud Run fully managed: not supported Cloud Run for Anthos: supported Probe
547
+ # describes a health check to be performed against a container to determine
548
+ # whether it is alive or ready to receive traffic.
549
+ # Corresponds to the JSON property `readinessProbe`
550
+ # @return [Google::Apis::RunV1::Probe]
551
+ attr_accessor :readiness_probe
552
+
553
+ # ResourceRequirements describes the compute resource requirements.
554
+ # Corresponds to the JSON property `resources`
555
+ # @return [Google::Apis::RunV1::ResourceRequirements]
556
+ attr_accessor :resources
557
+
558
+ # Cloud Run fully managed: not supported Cloud Run for Anthos: supported
559
+ # SecurityContext holds security configuration that will be applied to a
560
+ # container. Some fields are present in both SecurityContext and
561
+ # PodSecurityContext. When both are set, the values in SecurityContext take
562
+ # precedence.
563
+ # Corresponds to the JSON property `securityContext`
564
+ # @return [Google::Apis::RunV1::SecurityContext]
565
+ attr_accessor :security_context
566
+
567
+ # (Optional) Cloud Run fully managed: not supported Cloud Run for Anthos:
568
+ # supported Path at which the file to which the container's termination message
569
+ # will be written is mounted into the container's filesystem. Message written is
570
+ # intended to be brief final status, such as an assertion failure message. Will
571
+ # be truncated by the node if greater than 4096 bytes. The total message length
572
+ # across all containers will be limited to 12kb. Defaults to /dev/termination-
573
+ # log.
574
+ # Corresponds to the JSON property `terminationMessagePath`
575
+ # @return [String]
576
+ attr_accessor :termination_message_path
577
+
578
+ # (Optional) Cloud Run fully managed: not supported Cloud Run for Anthos:
579
+ # supported Indicate how the termination message should be populated. File will
580
+ # use the contents of terminationMessagePath to populate the container status
581
+ # message on both success and failure. FallbackToLogsOnError will use the last
582
+ # chunk of container log output if the termination message file is empty and the
583
+ # container exited with an error. The log output is limited to 2048 bytes or 80
584
+ # lines, whichever is smaller. Defaults to File. Cannot be updated.
585
+ # Corresponds to the JSON property `terminationMessagePolicy`
586
+ # @return [String]
587
+ attr_accessor :termination_message_policy
588
+
589
+ # (Optional) Cloud Run fully managed: not supported Cloud Run for Anthos:
590
+ # supported Pod volumes to mount into the container's filesystem.
591
+ # Corresponds to the JSON property `volumeMounts`
592
+ # @return [Array<Google::Apis::RunV1::VolumeMount>]
593
+ attr_accessor :volume_mounts
594
+
595
+ # (Optional) Cloud Run fully managed: not supported Cloud Run for Anthos:
596
+ # supported Container's working directory. If not specified, the container
597
+ # runtime's default will be used, which might be configured in the container
598
+ # image.
599
+ # Corresponds to the JSON property `workingDir`
600
+ # @return [String]
601
+ attr_accessor :working_dir
602
+
603
+ def initialize(**args)
604
+ update!(**args)
605
+ end
606
+
607
+ # Update properties of this object
608
+ def update!(**args)
609
+ @args = args[:args] if args.key?(:args)
610
+ @command = args[:command] if args.key?(:command)
611
+ @env = args[:env] if args.key?(:env)
612
+ @env_from = args[:env_from] if args.key?(:env_from)
613
+ @image = args[:image] if args.key?(:image)
614
+ @image_pull_policy = args[:image_pull_policy] if args.key?(:image_pull_policy)
615
+ @liveness_probe = args[:liveness_probe] if args.key?(:liveness_probe)
616
+ @name = args[:name] if args.key?(:name)
617
+ @ports = args[:ports] if args.key?(:ports)
618
+ @readiness_probe = args[:readiness_probe] if args.key?(:readiness_probe)
619
+ @resources = args[:resources] if args.key?(:resources)
620
+ @security_context = args[:security_context] if args.key?(:security_context)
621
+ @termination_message_path = args[:termination_message_path] if args.key?(:termination_message_path)
622
+ @termination_message_policy = args[:termination_message_policy] if args.key?(:termination_message_policy)
623
+ @volume_mounts = args[:volume_mounts] if args.key?(:volume_mounts)
624
+ @working_dir = args[:working_dir] if args.key?(:working_dir)
625
+ end
626
+ end
627
+
628
+ # ContainerPort represents a network port in a single container.
629
+ class ContainerPort
630
+ include Google::Apis::Core::Hashable
631
+
632
+ # (Optional) Port number the container listens on. This must be a valid port
633
+ # number, 0 < x < 65536.
634
+ # Corresponds to the JSON property `containerPort`
635
+ # @return [Fixnum]
636
+ attr_accessor :container_port
637
+
638
+ # (Optional) Cloud Run fully managed: not supported Cloud Run for Anthos:
639
+ # supported If specified, used to specify which protocol to use. Allowed values
640
+ # are "http1" and "h2c".
641
+ # Corresponds to the JSON property `name`
642
+ # @return [String]
643
+ attr_accessor :name
644
+
645
+ # (Optional) Cloud Run fully managed: not supported Cloud Run for Anthos:
646
+ # supported Protocol for port. Must be "TCP". Defaults to "TCP".
647
+ # Corresponds to the JSON property `protocol`
648
+ # @return [String]
649
+ attr_accessor :protocol
650
+
651
+ def initialize(**args)
652
+ update!(**args)
653
+ end
654
+
655
+ # Update properties of this object
656
+ def update!(**args)
657
+ @container_port = args[:container_port] if args.key?(:container_port)
658
+ @name = args[:name] if args.key?(:name)
659
+ @protocol = args[:protocol] if args.key?(:protocol)
660
+ end
661
+ end
662
+
663
+ # Resource to hold the state and status of a user's domain mapping. NOTE: This
664
+ # resource is currently in Beta.
665
+ class DomainMapping
666
+ include Google::Apis::Core::Hashable
667
+
668
+ # The API version for this call such as "domains.cloudrun.com/v1".
669
+ # Corresponds to the JSON property `apiVersion`
670
+ # @return [String]
671
+ attr_accessor :api_version
672
+
673
+ # The kind of resource, in this case "DomainMapping".
674
+ # Corresponds to the JSON property `kind`
675
+ # @return [String]
676
+ attr_accessor :kind
677
+
678
+ # k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta is metadata that all persisted
679
+ # resources must have, which includes all objects users must create.
680
+ # Corresponds to the JSON property `metadata`
681
+ # @return [Google::Apis::RunV1::ObjectMeta]
682
+ attr_accessor :metadata
683
+
684
+ # The desired state of the Domain Mapping.
685
+ # Corresponds to the JSON property `spec`
686
+ # @return [Google::Apis::RunV1::DomainMappingSpec]
687
+ attr_accessor :spec
688
+
689
+ # The current state of the Domain Mapping.
690
+ # Corresponds to the JSON property `status`
691
+ # @return [Google::Apis::RunV1::DomainMappingStatus]
692
+ attr_accessor :status
693
+
694
+ def initialize(**args)
695
+ update!(**args)
696
+ end
697
+
698
+ # Update properties of this object
699
+ def update!(**args)
700
+ @api_version = args[:api_version] if args.key?(:api_version)
701
+ @kind = args[:kind] if args.key?(:kind)
702
+ @metadata = args[:metadata] if args.key?(:metadata)
703
+ @spec = args[:spec] if args.key?(:spec)
704
+ @status = args[:status] if args.key?(:status)
705
+ end
706
+ end
707
+
708
+ # The desired state of the Domain Mapping.
709
+ class DomainMappingSpec
710
+ include Google::Apis::Core::Hashable
711
+
712
+ # The mode of the certificate.
713
+ # Corresponds to the JSON property `certificateMode`
714
+ # @return [String]
715
+ attr_accessor :certificate_mode
716
+
717
+ # If set, the mapping will override any mapping set before this spec was set. It
718
+ # is recommended that the user leaves this empty to receive an error warning
719
+ # about a potential conflict and only set it once the respective UI has given
720
+ # such a warning.
721
+ # Corresponds to the JSON property `forceOverride`
722
+ # @return [Boolean]
723
+ attr_accessor :force_override
724
+ alias_method :force_override?, :force_override
725
+
726
+ # The name of the Knative Route that this DomainMapping applies to. The route
727
+ # must exist.
728
+ # Corresponds to the JSON property `routeName`
729
+ # @return [String]
730
+ attr_accessor :route_name
731
+
732
+ def initialize(**args)
733
+ update!(**args)
734
+ end
735
+
736
+ # Update properties of this object
737
+ def update!(**args)
738
+ @certificate_mode = args[:certificate_mode] if args.key?(:certificate_mode)
739
+ @force_override = args[:force_override] if args.key?(:force_override)
740
+ @route_name = args[:route_name] if args.key?(:route_name)
741
+ end
742
+ end
743
+
744
+ # The current state of the Domain Mapping.
745
+ class DomainMappingStatus
746
+ include Google::Apis::Core::Hashable
747
+
748
+ # Array of observed DomainMappingConditions, indicating the current state of the
749
+ # DomainMapping.
750
+ # Corresponds to the JSON property `conditions`
751
+ # @return [Array<Google::Apis::RunV1::GoogleCloudRunV1Condition>]
752
+ attr_accessor :conditions
753
+
754
+ # The name of the route that the mapping currently points to.
755
+ # Corresponds to the JSON property `mappedRouteName`
756
+ # @return [String]
757
+ attr_accessor :mapped_route_name
758
+
759
+ # ObservedGeneration is the 'Generation' of the DomainMapping that was last
760
+ # processed by the controller. Clients polling for completed reconciliation
761
+ # should poll until observedGeneration = metadata.generation and the Ready
762
+ # condition's status is True or False.
763
+ # Corresponds to the JSON property `observedGeneration`
764
+ # @return [Fixnum]
765
+ attr_accessor :observed_generation
766
+
767
+ # The resource records required to configure this domain mapping. These records
768
+ # must be added to the domain's DNS configuration in order to serve the
769
+ # application via this domain mapping.
770
+ # Corresponds to the JSON property `resourceRecords`
771
+ # @return [Array<Google::Apis::RunV1::ResourceRecord>]
772
+ attr_accessor :resource_records
773
+
774
+ # Cloud Run fully managed: not supported Cloud Run on GKE: supported Holds the
775
+ # URL that will serve the traffic of the DomainMapping. +optional
776
+ # Corresponds to the JSON property `url`
777
+ # @return [String]
778
+ attr_accessor :url
779
+
780
+ def initialize(**args)
781
+ update!(**args)
782
+ end
783
+
784
+ # Update properties of this object
785
+ def update!(**args)
786
+ @conditions = args[:conditions] if args.key?(:conditions)
787
+ @mapped_route_name = args[:mapped_route_name] if args.key?(:mapped_route_name)
788
+ @observed_generation = args[:observed_generation] if args.key?(:observed_generation)
789
+ @resource_records = args[:resource_records] if args.key?(:resource_records)
790
+ @url = args[:url] if args.key?(:url)
791
+ end
792
+ end
793
+
794
+ # Cloud Run fully managed: not supported Cloud Run for Anthos: supported
795
+ # EnvFromSource represents the source of a set of ConfigMaps
796
+ class EnvFromSource
797
+ include Google::Apis::Core::Hashable
798
+
799
+ # Cloud Run fully managed: not supported Cloud Run for Anthos: supported
800
+ # ConfigMapEnvSource selects a ConfigMap to populate the environment variables
801
+ # with. The contents of the target ConfigMap's Data field will represent the key-
802
+ # value pairs as environment variables.
803
+ # Corresponds to the JSON property `configMapRef`
804
+ # @return [Google::Apis::RunV1::ConfigMapEnvSource]
805
+ attr_accessor :config_map_ref
806
+
807
+ # (Optional) Cloud Run fully managed: not supported Cloud Run for Anthos:
808
+ # supported An optional identifier to prepend to each key in the ConfigMap. Must
809
+ # be a C_IDENTIFIER.
810
+ # Corresponds to the JSON property `prefix`
811
+ # @return [String]
812
+ attr_accessor :prefix
813
+
814
+ # Cloud Run fully managed: not supported Cloud Run for Anthos: supported
815
+ # SecretEnvSource selects a Secret to populate the environment variables with.
816
+ # The contents of the target Secret's Data field will represent the key-value
817
+ # pairs as environment variables.
818
+ # Corresponds to the JSON property `secretRef`
819
+ # @return [Google::Apis::RunV1::SecretEnvSource]
820
+ attr_accessor :secret_ref
821
+
822
+ def initialize(**args)
823
+ update!(**args)
824
+ end
825
+
826
+ # Update properties of this object
827
+ def update!(**args)
828
+ @config_map_ref = args[:config_map_ref] if args.key?(:config_map_ref)
829
+ @prefix = args[:prefix] if args.key?(:prefix)
830
+ @secret_ref = args[:secret_ref] if args.key?(:secret_ref)
831
+ end
832
+ end
833
+
834
+ # EnvVar represents an environment variable present in a Container.
835
+ class EnvVar
836
+ include Google::Apis::Core::Hashable
837
+
838
+ # Name of the environment variable. Must be a C_IDENTIFIER.
839
+ # Corresponds to the JSON property `name`
840
+ # @return [String]
841
+ attr_accessor :name
842
+
843
+ # (Optional) Variable references $(VAR_NAME) are expanded using the previous
844
+ # defined environment variables in the container and any route environment
845
+ # variables. If a variable cannot be resolved, the reference in the input string
846
+ # will be unchanged. The $(VAR_NAME) syntax can be escaped with a double $$, ie:
847
+ # $$(VAR_NAME). Escaped references will never be expanded, regardless of whether
848
+ # the variable exists or not. Defaults to "".
849
+ # Corresponds to the JSON property `value`
850
+ # @return [String]
851
+ attr_accessor :value
852
+
853
+ # Cloud Run fully managed: not supported Cloud Run for Anthos: supported
854
+ # EnvVarSource represents a source for the value of an EnvVar.
855
+ # Corresponds to the JSON property `valueFrom`
856
+ # @return [Google::Apis::RunV1::EnvVarSource]
857
+ attr_accessor :value_from
858
+
859
+ def initialize(**args)
860
+ update!(**args)
861
+ end
862
+
863
+ # Update properties of this object
864
+ def update!(**args)
865
+ @name = args[:name] if args.key?(:name)
866
+ @value = args[:value] if args.key?(:value)
867
+ @value_from = args[:value_from] if args.key?(:value_from)
868
+ end
869
+ end
870
+
871
+ # Cloud Run fully managed: not supported Cloud Run for Anthos: supported
872
+ # EnvVarSource represents a source for the value of an EnvVar.
873
+ class EnvVarSource
874
+ include Google::Apis::Core::Hashable
875
+
876
+ # Cloud Run fully managed: not supported Cloud Run for Anthos: supported Selects
877
+ # a key from a ConfigMap.
878
+ # Corresponds to the JSON property `configMapKeyRef`
879
+ # @return [Google::Apis::RunV1::ConfigMapKeySelector]
880
+ attr_accessor :config_map_key_ref
881
+
882
+ # Cloud Run fully managed: not supported Cloud Run for Anthos: supported
883
+ # SecretKeySelector selects a key of a Secret.
884
+ # Corresponds to the JSON property `secretKeyRef`
885
+ # @return [Google::Apis::RunV1::SecretKeySelector]
886
+ attr_accessor :secret_key_ref
887
+
888
+ def initialize(**args)
889
+ update!(**args)
890
+ end
891
+
892
+ # Update properties of this object
893
+ def update!(**args)
894
+ @config_map_key_ref = args[:config_map_key_ref] if args.key?(:config_map_key_ref)
895
+ @secret_key_ref = args[:secret_key_ref] if args.key?(:secret_key_ref)
896
+ end
897
+ end
898
+
899
+ # Cloud Run fully managed: not supported Cloud Run for Anthos: supported
900
+ # ExecAction describes a "run in container" action.
901
+ class ExecAction
902
+ include Google::Apis::Core::Hashable
903
+
904
+ # (Optional) Cloud Run fully managed: not supported Cloud Run for Anthos:
905
+ # supported Command is the command line to execute inside the container, the
906
+ # working directory for the command is root ('/') in the container's filesystem.
907
+ # The command is simply exec'd, it is not run inside a shell, so traditional
908
+ # shell instructions ('|', etc) won't work. To use a shell, you need to
909
+ # explicitly call out to that shell. Exit status of 0 is treated as live/healthy
910
+ # and non-zero is unhealthy.
911
+ # Corresponds to the JSON property `command`
912
+ # @return [Array<String>]
913
+ attr_accessor :command
914
+
915
+ def initialize(**args)
916
+ update!(**args)
917
+ end
918
+
919
+ # Update properties of this object
920
+ def update!(**args)
921
+ @command = args[:command] if args.key?(:command)
922
+ end
923
+ end
924
+
925
+ # Represents a textual expression in the Common Expression Language (CEL) syntax.
926
+ # CEL is a C-like expression language. The syntax and semantics of CEL are
927
+ # documented at https://github.com/google/cel-spec. Example (Comparison): title:
928
+ # "Summary size limit" description: "Determines if a summary is less than 100
929
+ # chars" expression: "document.summary.size() < 100" Example (Equality): title: "
930
+ # Requestor is owner" description: "Determines if requestor is the document
931
+ # owner" expression: "document.owner == request.auth.claims.email" Example (
932
+ # Logic): title: "Public documents" description: "Determine whether the document
933
+ # should be publicly visible" expression: "document.type != 'private' &&
934
+ # document.type != 'internal'" Example (Data Manipulation): title: "Notification
935
+ # string" description: "Create a notification string with a timestamp."
936
+ # expression: "'New message received at ' + string(document.create_time)" The
937
+ # exact variables and functions that may be referenced within an expression are
938
+ # determined by the service that evaluates it. See the service documentation for
939
+ # additional information.
940
+ class Expr
941
+ include Google::Apis::Core::Hashable
942
+
943
+ # Optional. Description of the expression. This is a longer text which describes
944
+ # the expression, e.g. when hovered over it in a UI.
945
+ # Corresponds to the JSON property `description`
946
+ # @return [String]
947
+ attr_accessor :description
948
+
949
+ # Textual representation of an expression in Common Expression Language syntax.
950
+ # Corresponds to the JSON property `expression`
951
+ # @return [String]
952
+ attr_accessor :expression
953
+
954
+ # Optional. String indicating the location of the expression for error reporting,
955
+ # e.g. a file name and a position in the file.
956
+ # Corresponds to the JSON property `location`
957
+ # @return [String]
958
+ attr_accessor :location
959
+
960
+ # Optional. Title for the expression, i.e. a short string describing its purpose.
961
+ # This can be used e.g. in UIs which allow to enter the expression.
962
+ # Corresponds to the JSON property `title`
963
+ # @return [String]
964
+ attr_accessor :title
965
+
966
+ def initialize(**args)
967
+ update!(**args)
968
+ end
969
+
970
+ # Update properties of this object
971
+ def update!(**args)
972
+ @description = args[:description] if args.key?(:description)
973
+ @expression = args[:expression] if args.key?(:expression)
974
+ @location = args[:location] if args.key?(:location)
975
+ @title = args[:title] if args.key?(:title)
976
+ end
977
+ end
978
+
979
+ # Condition defines a generic condition for a Resource
980
+ class GoogleCloudRunV1Condition
981
+ include Google::Apis::Core::Hashable
982
+
983
+ # Optional. Last time the condition transitioned from one status to another.
984
+ # Corresponds to the JSON property `lastTransitionTime`
985
+ # @return [String]
986
+ attr_accessor :last_transition_time
987
+
988
+ # Optional. Human readable message indicating details about the current status.
989
+ # Corresponds to the JSON property `message`
990
+ # @return [String]
991
+ attr_accessor :message
992
+
993
+ # Optional. One-word CamelCase reason for the condition's last transition.
994
+ # Corresponds to the JSON property `reason`
995
+ # @return [String]
996
+ attr_accessor :reason
997
+
998
+ # Optional. How to interpret failures of this condition, one of Error, Warning,
999
+ # Info
1000
+ # Corresponds to the JSON property `severity`
1001
+ # @return [String]
1002
+ attr_accessor :severity
1003
+
1004
+ # Status of the condition, one of True, False, Unknown.
1005
+ # Corresponds to the JSON property `status`
1006
+ # @return [String]
1007
+ attr_accessor :status
1008
+
1009
+ # type is used to communicate the status of the reconciliation process. See also:
1010
+ # https://github.com/knative/serving/blob/master/docs/spec/errors.md#error-
1011
+ # conditions-and-reporting Types common to all resources include: * "Ready":
1012
+ # True when the Resource is ready.
1013
+ # Corresponds to the JSON property `type`
1014
+ # @return [String]
1015
+ attr_accessor :type
1016
+
1017
+ def initialize(**args)
1018
+ update!(**args)
1019
+ end
1020
+
1021
+ # Update properties of this object
1022
+ def update!(**args)
1023
+ @last_transition_time = args[:last_transition_time] if args.key?(:last_transition_time)
1024
+ @message = args[:message] if args.key?(:message)
1025
+ @reason = args[:reason] if args.key?(:reason)
1026
+ @severity = args[:severity] if args.key?(:severity)
1027
+ @status = args[:status] if args.key?(:status)
1028
+ @type = args[:type] if args.key?(:type)
1029
+ end
1030
+ end
1031
+
1032
+ # Cloud Run fully managed: not supported Cloud Run for Anthos: supported
1033
+ # HTTPGetAction describes an action based on HTTP Get requests.
1034
+ class HttpGetAction
1035
+ include Google::Apis::Core::Hashable
1036
+
1037
+ # (Optional) Cloud Run fully managed: not supported Cloud Run for Anthos:
1038
+ # supported Host name to connect to, defaults to the pod IP. You probably want
1039
+ # to set "Host" in httpHeaders instead.
1040
+ # Corresponds to the JSON property `host`
1041
+ # @return [String]
1042
+ attr_accessor :host
1043
+
1044
+ # (Optional) Cloud Run fully managed: not supported Cloud Run for Anthos:
1045
+ # supported Custom headers to set in the request. HTTP allows repeated headers.
1046
+ # Corresponds to the JSON property `httpHeaders`
1047
+ # @return [Array<Google::Apis::RunV1::HttpHeader>]
1048
+ attr_accessor :http_headers
1049
+
1050
+ # (Optional) Cloud Run fully managed: not supported Cloud Run for Anthos:
1051
+ # supported Path to access on the HTTP server.
1052
+ # Corresponds to the JSON property `path`
1053
+ # @return [String]
1054
+ attr_accessor :path
1055
+
1056
+ # (Optional) Cloud Run fully managed: not supported Cloud Run for Anthos:
1057
+ # supported Scheme to use for connecting to the host. Defaults to HTTP.
1058
+ # Corresponds to the JSON property `scheme`
1059
+ # @return [String]
1060
+ attr_accessor :scheme
1061
+
1062
+ def initialize(**args)
1063
+ update!(**args)
1064
+ end
1065
+
1066
+ # Update properties of this object
1067
+ def update!(**args)
1068
+ @host = args[:host] if args.key?(:host)
1069
+ @http_headers = args[:http_headers] if args.key?(:http_headers)
1070
+ @path = args[:path] if args.key?(:path)
1071
+ @scheme = args[:scheme] if args.key?(:scheme)
1072
+ end
1073
+ end
1074
+
1075
+ # Cloud Run fully managed: not supported Cloud Run for Anthos: supported
1076
+ # HTTPHeader describes a custom header to be used in HTTP probes
1077
+ class HttpHeader
1078
+ include Google::Apis::Core::Hashable
1079
+
1080
+ # Cloud Run fully managed: not supported Cloud Run for Anthos: supported The
1081
+ # header field name
1082
+ # Corresponds to the JSON property `name`
1083
+ # @return [String]
1084
+ attr_accessor :name
1085
+
1086
+ # Cloud Run fully managed: not supported Cloud Run for Anthos: supported The
1087
+ # header field value
1088
+ # Corresponds to the JSON property `value`
1089
+ # @return [String]
1090
+ attr_accessor :value
1091
+
1092
+ def initialize(**args)
1093
+ update!(**args)
1094
+ end
1095
+
1096
+ # Update properties of this object
1097
+ def update!(**args)
1098
+ @name = args[:name] if args.key?(:name)
1099
+ @value = args[:value] if args.key?(:value)
1100
+ end
1101
+ end
1102
+
1103
+ # Cloud Run fully managed: not supported Cloud Run for Anthos: supported Maps a
1104
+ # string key to a path within a volume.
1105
+ class KeyToPath
1106
+ include Google::Apis::Core::Hashable
1107
+
1108
+ # Cloud Run fully managed: not supported Cloud Run for Anthos: supported The key
1109
+ # to project.
1110
+ # Corresponds to the JSON property `key`
1111
+ # @return [String]
1112
+ attr_accessor :key
1113
+
1114
+ # (Optional) Cloud Run fully managed: not supported Cloud Run for Anthos:
1115
+ # supported Mode bits to use on this file, must be a value between 0000 and 0777.
1116
+ # If not specified, the volume defaultMode will be used. This might be in
1117
+ # conflict with other options that affect the file mode, like fsGroup, and the
1118
+ # result can be other mode bits set.
1119
+ # Corresponds to the JSON property `mode`
1120
+ # @return [Fixnum]
1121
+ attr_accessor :mode
1122
+
1123
+ # Cloud Run fully managed: not supported Cloud Run for Anthos: supported The
1124
+ # relative path of the file to map the key to. May not be an absolute path. May
1125
+ # not contain the path element '..'. May not start with the string '..'.
1126
+ # Corresponds to the JSON property `path`
1127
+ # @return [String]
1128
+ attr_accessor :path
1129
+
1130
+ def initialize(**args)
1131
+ update!(**args)
1132
+ end
1133
+
1134
+ # Update properties of this object
1135
+ def update!(**args)
1136
+ @key = args[:key] if args.key?(:key)
1137
+ @mode = args[:mode] if args.key?(:mode)
1138
+ @path = args[:path] if args.key?(:path)
1139
+ end
1140
+ end
1141
+
1142
+ # A list of Authorized Domains.
1143
+ class ListAuthorizedDomainsResponse
1144
+ include Google::Apis::Core::Hashable
1145
+
1146
+ # The authorized domains belonging to the user.
1147
+ # Corresponds to the JSON property `domains`
1148
+ # @return [Array<Google::Apis::RunV1::AuthorizedDomain>]
1149
+ attr_accessor :domains
1150
+
1151
+ # Continuation token for fetching the next page of results.
1152
+ # Corresponds to the JSON property `nextPageToken`
1153
+ # @return [String]
1154
+ attr_accessor :next_page_token
1155
+
1156
+ def initialize(**args)
1157
+ update!(**args)
1158
+ end
1159
+
1160
+ # Update properties of this object
1161
+ def update!(**args)
1162
+ @domains = args[:domains] if args.key?(:domains)
1163
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1164
+ end
1165
+ end
1166
+
1167
+ # ListConfigurationsResponse is a list of Configuration resources.
1168
+ class ListConfigurationsResponse
1169
+ include Google::Apis::Core::Hashable
1170
+
1171
+ # The API version for this call such as "serving.knative.dev/v1".
1172
+ # Corresponds to the JSON property `apiVersion`
1173
+ # @return [String]
1174
+ attr_accessor :api_version
1175
+
1176
+ # List of Configurations.
1177
+ # Corresponds to the JSON property `items`
1178
+ # @return [Array<Google::Apis::RunV1::Configuration>]
1179
+ attr_accessor :items
1180
+
1181
+ # The kind of this resource, in this case "ConfigurationList".
1182
+ # Corresponds to the JSON property `kind`
1183
+ # @return [String]
1184
+ attr_accessor :kind
1185
+
1186
+ # ListMeta describes metadata that synthetic resources must have, including
1187
+ # lists and various status objects. A resource may have only one of `ObjectMeta,
1188
+ # ListMeta`.
1189
+ # Corresponds to the JSON property `metadata`
1190
+ # @return [Google::Apis::RunV1::ListMeta]
1191
+ attr_accessor :metadata
1192
+
1193
+ # Locations that could not be reached.
1194
+ # Corresponds to the JSON property `unreachable`
1195
+ # @return [Array<String>]
1196
+ attr_accessor :unreachable
1197
+
1198
+ def initialize(**args)
1199
+ update!(**args)
1200
+ end
1201
+
1202
+ # Update properties of this object
1203
+ def update!(**args)
1204
+ @api_version = args[:api_version] if args.key?(:api_version)
1205
+ @items = args[:items] if args.key?(:items)
1206
+ @kind = args[:kind] if args.key?(:kind)
1207
+ @metadata = args[:metadata] if args.key?(:metadata)
1208
+ @unreachable = args[:unreachable] if args.key?(:unreachable)
1209
+ end
1210
+ end
1211
+
1212
+ # ListDomainMappingsResponse is a list of DomainMapping resources.
1213
+ class ListDomainMappingsResponse
1214
+ include Google::Apis::Core::Hashable
1215
+
1216
+ # The API version for this call such as "domains.cloudrun.com/v1".
1217
+ # Corresponds to the JSON property `apiVersion`
1218
+ # @return [String]
1219
+ attr_accessor :api_version
1220
+
1221
+ # List of DomainMappings.
1222
+ # Corresponds to the JSON property `items`
1223
+ # @return [Array<Google::Apis::RunV1::DomainMapping>]
1224
+ attr_accessor :items
1225
+
1226
+ # The kind of this resource, in this case "DomainMappingList".
1227
+ # Corresponds to the JSON property `kind`
1228
+ # @return [String]
1229
+ attr_accessor :kind
1230
+
1231
+ # ListMeta describes metadata that synthetic resources must have, including
1232
+ # lists and various status objects. A resource may have only one of `ObjectMeta,
1233
+ # ListMeta`.
1234
+ # Corresponds to the JSON property `metadata`
1235
+ # @return [Google::Apis::RunV1::ListMeta]
1236
+ attr_accessor :metadata
1237
+
1238
+ # Locations that could not be reached.
1239
+ # Corresponds to the JSON property `unreachable`
1240
+ # @return [Array<String>]
1241
+ attr_accessor :unreachable
1242
+
1243
+ def initialize(**args)
1244
+ update!(**args)
1245
+ end
1246
+
1247
+ # Update properties of this object
1248
+ def update!(**args)
1249
+ @api_version = args[:api_version] if args.key?(:api_version)
1250
+ @items = args[:items] if args.key?(:items)
1251
+ @kind = args[:kind] if args.key?(:kind)
1252
+ @metadata = args[:metadata] if args.key?(:metadata)
1253
+ @unreachable = args[:unreachable] if args.key?(:unreachable)
1254
+ end
1255
+ end
1256
+
1257
+ # The response message for Locations.ListLocations.
1258
+ class ListLocationsResponse
1259
+ include Google::Apis::Core::Hashable
1260
+
1261
+ # A list of locations that matches the specified filter in the request.
1262
+ # Corresponds to the JSON property `locations`
1263
+ # @return [Array<Google::Apis::RunV1::Location>]
1264
+ attr_accessor :locations
1265
+
1266
+ # The standard List next-page token.
1267
+ # Corresponds to the JSON property `nextPageToken`
1268
+ # @return [String]
1269
+ attr_accessor :next_page_token
1270
+
1271
+ def initialize(**args)
1272
+ update!(**args)
1273
+ end
1274
+
1275
+ # Update properties of this object
1276
+ def update!(**args)
1277
+ @locations = args[:locations] if args.key?(:locations)
1278
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1279
+ end
1280
+ end
1281
+
1282
+ # ListMeta describes metadata that synthetic resources must have, including
1283
+ # lists and various status objects. A resource may have only one of `ObjectMeta,
1284
+ # ListMeta`.
1285
+ class ListMeta
1286
+ include Google::Apis::Core::Hashable
1287
+
1288
+ # continue may be set if the user set a limit on the number of items returned,
1289
+ # and indicates that the server has more data available. The value is opaque and
1290
+ # may be used to issue another request to the endpoint that served this list to
1291
+ # retrieve the next set of available objects. Continuing a list may not be
1292
+ # possible if the server configuration has changed or more than a few minutes
1293
+ # have passed. The resourceVersion field returned when using this continue value
1294
+ # will be identical to the value in the first response.
1295
+ # Corresponds to the JSON property `continue`
1296
+ # @return [String]
1297
+ attr_accessor :continue
1298
+
1299
+ # String that identifies the server's internal version of this object that can
1300
+ # be used by clients to determine when objects have changed. Value must be
1301
+ # treated as opaque by clients and passed unmodified back to the server.
1302
+ # Populated by the system. Read-only. More info: https://git.k8s.io/community/
1303
+ # contributors/devel/api-conventions.md#concurrency-control-and-consistency +
1304
+ # optional
1305
+ # Corresponds to the JSON property `resourceVersion`
1306
+ # @return [String]
1307
+ attr_accessor :resource_version
1308
+
1309
+ # SelfLink is a URL representing this object. Populated by the system. Read-only.
1310
+ # +optional
1311
+ # Corresponds to the JSON property `selfLink`
1312
+ # @return [String]
1313
+ attr_accessor :self_link
1314
+
1315
+ def initialize(**args)
1316
+ update!(**args)
1317
+ end
1318
+
1319
+ # Update properties of this object
1320
+ def update!(**args)
1321
+ @continue = args[:continue] if args.key?(:continue)
1322
+ @resource_version = args[:resource_version] if args.key?(:resource_version)
1323
+ @self_link = args[:self_link] if args.key?(:self_link)
1324
+ end
1325
+ end
1326
+
1327
+ # ListRevisionsResponse is a list of Revision resources.
1328
+ class ListRevisionsResponse
1329
+ include Google::Apis::Core::Hashable
1330
+
1331
+ # The API version for this call such as "serving.knative.dev/v1".
1332
+ # Corresponds to the JSON property `apiVersion`
1333
+ # @return [String]
1334
+ attr_accessor :api_version
1335
+
1336
+ # List of Revisions.
1337
+ # Corresponds to the JSON property `items`
1338
+ # @return [Array<Google::Apis::RunV1::Revision>]
1339
+ attr_accessor :items
1340
+
1341
+ # The kind of this resource, in this case "RevisionList".
1342
+ # Corresponds to the JSON property `kind`
1343
+ # @return [String]
1344
+ attr_accessor :kind
1345
+
1346
+ # ListMeta describes metadata that synthetic resources must have, including
1347
+ # lists and various status objects. A resource may have only one of `ObjectMeta,
1348
+ # ListMeta`.
1349
+ # Corresponds to the JSON property `metadata`
1350
+ # @return [Google::Apis::RunV1::ListMeta]
1351
+ attr_accessor :metadata
1352
+
1353
+ # Locations that could not be reached.
1354
+ # Corresponds to the JSON property `unreachable`
1355
+ # @return [Array<String>]
1356
+ attr_accessor :unreachable
1357
+
1358
+ def initialize(**args)
1359
+ update!(**args)
1360
+ end
1361
+
1362
+ # Update properties of this object
1363
+ def update!(**args)
1364
+ @api_version = args[:api_version] if args.key?(:api_version)
1365
+ @items = args[:items] if args.key?(:items)
1366
+ @kind = args[:kind] if args.key?(:kind)
1367
+ @metadata = args[:metadata] if args.key?(:metadata)
1368
+ @unreachable = args[:unreachable] if args.key?(:unreachable)
1369
+ end
1370
+ end
1371
+
1372
+ # ListRoutesResponse is a list of Route resources.
1373
+ class ListRoutesResponse
1374
+ include Google::Apis::Core::Hashable
1375
+
1376
+ # The API version for this call such as "serving.knative.dev/v1".
1377
+ # Corresponds to the JSON property `apiVersion`
1378
+ # @return [String]
1379
+ attr_accessor :api_version
1380
+
1381
+ # List of Routes.
1382
+ # Corresponds to the JSON property `items`
1383
+ # @return [Array<Google::Apis::RunV1::Route>]
1384
+ attr_accessor :items
1385
+
1386
+ # The kind of this resource, in this case always "RouteList".
1387
+ # Corresponds to the JSON property `kind`
1388
+ # @return [String]
1389
+ attr_accessor :kind
1390
+
1391
+ # ListMeta describes metadata that synthetic resources must have, including
1392
+ # lists and various status objects. A resource may have only one of `ObjectMeta,
1393
+ # ListMeta`.
1394
+ # Corresponds to the JSON property `metadata`
1395
+ # @return [Google::Apis::RunV1::ListMeta]
1396
+ attr_accessor :metadata
1397
+
1398
+ # Locations that could not be reached.
1399
+ # Corresponds to the JSON property `unreachable`
1400
+ # @return [Array<String>]
1401
+ attr_accessor :unreachable
1402
+
1403
+ def initialize(**args)
1404
+ update!(**args)
1405
+ end
1406
+
1407
+ # Update properties of this object
1408
+ def update!(**args)
1409
+ @api_version = args[:api_version] if args.key?(:api_version)
1410
+ @items = args[:items] if args.key?(:items)
1411
+ @kind = args[:kind] if args.key?(:kind)
1412
+ @metadata = args[:metadata] if args.key?(:metadata)
1413
+ @unreachable = args[:unreachable] if args.key?(:unreachable)
1414
+ end
1415
+ end
1416
+
1417
+ # A list of Service resources.
1418
+ class ListServicesResponse
1419
+ include Google::Apis::Core::Hashable
1420
+
1421
+ # The API version for this call such as "serving.knative.dev/v1".
1422
+ # Corresponds to the JSON property `apiVersion`
1423
+ # @return [String]
1424
+ attr_accessor :api_version
1425
+
1426
+ # List of Services.
1427
+ # Corresponds to the JSON property `items`
1428
+ # @return [Array<Google::Apis::RunV1::Service>]
1429
+ attr_accessor :items
1430
+
1431
+ # The kind of this resource, in this case "ServiceList".
1432
+ # Corresponds to the JSON property `kind`
1433
+ # @return [String]
1434
+ attr_accessor :kind
1435
+
1436
+ # ListMeta describes metadata that synthetic resources must have, including
1437
+ # lists and various status objects. A resource may have only one of `ObjectMeta,
1438
+ # ListMeta`.
1439
+ # Corresponds to the JSON property `metadata`
1440
+ # @return [Google::Apis::RunV1::ListMeta]
1441
+ attr_accessor :metadata
1442
+
1443
+ # Locations that could not be reached.
1444
+ # Corresponds to the JSON property `unreachable`
1445
+ # @return [Array<String>]
1446
+ attr_accessor :unreachable
1447
+
1448
+ def initialize(**args)
1449
+ update!(**args)
1450
+ end
1451
+
1452
+ # Update properties of this object
1453
+ def update!(**args)
1454
+ @api_version = args[:api_version] if args.key?(:api_version)
1455
+ @items = args[:items] if args.key?(:items)
1456
+ @kind = args[:kind] if args.key?(:kind)
1457
+ @metadata = args[:metadata] if args.key?(:metadata)
1458
+ @unreachable = args[:unreachable] if args.key?(:unreachable)
1459
+ end
1460
+ end
1461
+
1462
+ # Cloud Run fully managed: not supported Cloud Run for Anthos: supported
1463
+ # LocalObjectReference contains enough information to let you locate the
1464
+ # referenced object inside the same namespace.
1465
+ class LocalObjectReference
1466
+ include Google::Apis::Core::Hashable
1467
+
1468
+ # (Optional) Cloud Run fully managed: not supported Cloud Run for Anthos:
1469
+ # supported Name of the referent. More info: https://kubernetes.io/docs/concepts/
1470
+ # overview/working-with-objects/names/#names
1471
+ # Corresponds to the JSON property `name`
1472
+ # @return [String]
1473
+ attr_accessor :name
1474
+
1475
+ def initialize(**args)
1476
+ update!(**args)
1477
+ end
1478
+
1479
+ # Update properties of this object
1480
+ def update!(**args)
1481
+ @name = args[:name] if args.key?(:name)
1482
+ end
1483
+ end
1484
+
1485
+ # A resource that represents Google Cloud Platform location.
1486
+ class Location
1487
+ include Google::Apis::Core::Hashable
1488
+
1489
+ # The friendly name for this location, typically a nearby city name. For example,
1490
+ # "Tokyo".
1491
+ # Corresponds to the JSON property `displayName`
1492
+ # @return [String]
1493
+ attr_accessor :display_name
1494
+
1495
+ # Cross-service attributes for the location. For example `"cloud.googleapis.com/
1496
+ # region": "us-east1"`
1497
+ # Corresponds to the JSON property `labels`
1498
+ # @return [Hash<String,String>]
1499
+ attr_accessor :labels
1500
+
1501
+ # The canonical id for this location. For example: `"us-east1"`.
1502
+ # Corresponds to the JSON property `locationId`
1503
+ # @return [String]
1504
+ attr_accessor :location_id
1505
+
1506
+ # Service-specific metadata. For example the available capacity at the given
1507
+ # location.
1508
+ # Corresponds to the JSON property `metadata`
1509
+ # @return [Hash<String,Object>]
1510
+ attr_accessor :metadata
1511
+
1512
+ # Resource name for the location, which may vary between implementations. For
1513
+ # example: `"projects/example-project/locations/us-east1"`
1514
+ # Corresponds to the JSON property `name`
1515
+ # @return [String]
1516
+ attr_accessor :name
1517
+
1518
+ def initialize(**args)
1519
+ update!(**args)
1520
+ end
1521
+
1522
+ # Update properties of this object
1523
+ def update!(**args)
1524
+ @display_name = args[:display_name] if args.key?(:display_name)
1525
+ @labels = args[:labels] if args.key?(:labels)
1526
+ @location_id = args[:location_id] if args.key?(:location_id)
1527
+ @metadata = args[:metadata] if args.key?(:metadata)
1528
+ @name = args[:name] if args.key?(:name)
1529
+ end
1530
+ end
1531
+
1532
+ # k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta is metadata that all persisted
1533
+ # resources must have, which includes all objects users must create.
1534
+ class ObjectMeta
1535
+ include Google::Apis::Core::Hashable
1536
+
1537
+ # (Optional) Annotations is an unstructured key value map stored with a resource
1538
+ # that may be set by external tools to store and retrieve arbitrary metadata.
1539
+ # They are not queryable and should be preserved when modifying objects. More
1540
+ # info: http://kubernetes.io/docs/user-guide/annotations
1541
+ # Corresponds to the JSON property `annotations`
1542
+ # @return [Hash<String,String>]
1543
+ attr_accessor :annotations
1544
+
1545
+ # (Optional) Cloud Run fully managed: not supported Cloud Run for Anthos:
1546
+ # supported The name of the cluster which the object belongs to. This is used to
1547
+ # distinguish resources with same name and namespace in different clusters. This
1548
+ # field is not set anywhere right now and apiserver is going to ignore it if set
1549
+ # in create or update request.
1550
+ # Corresponds to the JSON property `clusterName`
1551
+ # @return [String]
1552
+ attr_accessor :cluster_name
1553
+
1554
+ # (Optional) CreationTimestamp is a timestamp representing the server time when
1555
+ # this object was created. It is not guaranteed to be set in happens-before
1556
+ # order across separate operations. Clients may not set this value. It is
1557
+ # represented in RFC3339 form and is in UTC. Populated by the system. Read-only.
1558
+ # Null for lists. More info: https://git.k8s.io/community/contributors/devel/api-
1559
+ # conventions.md#metadata
1560
+ # Corresponds to the JSON property `creationTimestamp`
1561
+ # @return [String]
1562
+ attr_accessor :creation_timestamp
1563
+
1564
+ # (Optional) Cloud Run fully managed: not supported Cloud Run for Anthos:
1565
+ # supported Number of seconds allowed for this object to gracefully terminate
1566
+ # before it will be removed from the system. Only set when deletionTimestamp is
1567
+ # also set. May only be shortened. Read-only.
1568
+ # Corresponds to the JSON property `deletionGracePeriodSeconds`
1569
+ # @return [Fixnum]
1570
+ attr_accessor :deletion_grace_period_seconds
1571
+
1572
+ # (Optional) Cloud Run fully managed: not supported Cloud Run for Anthos:
1573
+ # supported DeletionTimestamp is RFC 3339 date and time at which this resource
1574
+ # will be deleted. This field is set by the server when a graceful deletion is
1575
+ # requested by the user, and is not directly settable by a client. The resource
1576
+ # is expected to be deleted (no longer visible from resource lists, and not
1577
+ # reachable by name) after the time in this field, once the finalizers list is
1578
+ # empty. As long as the finalizers list contains items, deletion is blocked.
1579
+ # Once the deletionTimestamp is set, this value may not be unset or be set
1580
+ # further into the future, although it may be shortened or the resource may be
1581
+ # deleted prior to this time. For example, a user may request that a pod is
1582
+ # deleted in 30 seconds. The Kubelet will react by sending a graceful
1583
+ # termination signal to the containers in the pod. After that 30 seconds, the
1584
+ # Kubelet will send a hard termination signal (SIGKILL) to the container and
1585
+ # after cleanup, remove the pod from the API. In the presence of network
1586
+ # partitions, this object may still exist after this timestamp, until an
1587
+ # administrator or automated process can determine the resource is fully
1588
+ # terminated. If not set, graceful deletion of the object has not been requested.
1589
+ # Populated by the system when a graceful deletion is requested. Read-only.
1590
+ # More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#
1591
+ # metadata
1592
+ # Corresponds to the JSON property `deletionTimestamp`
1593
+ # @return [String]
1594
+ attr_accessor :deletion_timestamp
1595
+
1596
+ # (Optional) Cloud Run fully managed: not supported Cloud Run for Anthos:
1597
+ # supported Must be empty before the object is deleted from the registry. Each
1598
+ # entry is an identifier for the responsible component that will remove the
1599
+ # entry from the list. If the deletionTimestamp of the object is non-nil,
1600
+ # entries in this list can only be removed. +patchStrategy=merge
1601
+ # Corresponds to the JSON property `finalizers`
1602
+ # @return [Array<String>]
1603
+ attr_accessor :finalizers
1604
+
1605
+ # (Optional) Cloud Run fully managed: not supported Cloud Run for Anthos:
1606
+ # supported GenerateName is an optional prefix, used by the server, to generate
1607
+ # a unique name ONLY IF the Name field has not been provided. If this field is
1608
+ # used, the name returned to the client will be different than the name passed.
1609
+ # This value will also be combined with a unique suffix. The provided value has
1610
+ # the same validation rules as the Name field, and may be truncated by the
1611
+ # length of the suffix required to make the value unique on the server. If this
1612
+ # field is specified and the generated name exists, the server will NOT return a
1613
+ # 409 - instead, it will either return 201 Created or 500 with Reason
1614
+ # ServerTimeout indicating a unique name could not be found in the time allotted,
1615
+ # and the client should retry (optionally after the time indicated in the Retry-
1616
+ # After header). Applied only if Name is not specified. More info: https://git.
1617
+ # k8s.io/community/contributors/devel/api-conventions.md#idempotency string
1618
+ # generateName = 2;
1619
+ # Corresponds to the JSON property `generateName`
1620
+ # @return [String]
1621
+ attr_accessor :generate_name
1622
+
1623
+ # (Optional) A sequence number representing a specific generation of the desired
1624
+ # state. Populated by the system. Read-only.
1625
+ # Corresponds to the JSON property `generation`
1626
+ # @return [Fixnum]
1627
+ attr_accessor :generation
1628
+
1629
+ # (Optional) Map of string keys and values that can be used to organize and
1630
+ # categorize (scope and select) objects. May match selectors of replication
1631
+ # controllers and routes. More info: http://kubernetes.io/docs/user-guide/labels
1632
+ # Corresponds to the JSON property `labels`
1633
+ # @return [Hash<String,String>]
1634
+ attr_accessor :labels
1635
+
1636
+ # Name must be unique within a namespace, within a Cloud Run region. Is required
1637
+ # when creating resources, although some resources may allow a client to request
1638
+ # the generation of an appropriate name automatically. Name is primarily
1639
+ # intended for creation idempotence and configuration definition. Cannot be
1640
+ # updated. More info: http://kubernetes.io/docs/user-guide/identifiers#names +
1641
+ # optional
1642
+ # Corresponds to the JSON property `name`
1643
+ # @return [String]
1644
+ attr_accessor :name
1645
+
1646
+ # Namespace defines the space within each name must be unique, within a Cloud
1647
+ # Run region. In Cloud Run the namespace must be equal to either the project ID
1648
+ # or project number.
1649
+ # Corresponds to the JSON property `namespace`
1650
+ # @return [String]
1651
+ attr_accessor :namespace
1652
+
1653
+ # (Optional) Cloud Run fully managed: not supported Cloud Run for Anthos:
1654
+ # supported List of objects that own this object. If ALL objects in the list
1655
+ # have been deleted, this object will be garbage collected.
1656
+ # Corresponds to the JSON property `ownerReferences`
1657
+ # @return [Array<Google::Apis::RunV1::OwnerReference>]
1658
+ attr_accessor :owner_references
1659
+
1660
+ # (Optional) An opaque value that represents the internal version of this object
1661
+ # that can be used by clients to determine when objects have changed. May be
1662
+ # used for optimistic concurrency, change detection, and the watch operation on
1663
+ # a resource or set of resources. Clients must treat these values as opaque and
1664
+ # passed unmodified back to the server. They may only be valid for a particular
1665
+ # resource or set of resources. Populated by the system. Read-only. Value must
1666
+ # be treated as opaque by clients. More info: https://git.k8s.io/community/
1667
+ # contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-
1668
+ # consistency
1669
+ # Corresponds to the JSON property `resourceVersion`
1670
+ # @return [String]
1671
+ attr_accessor :resource_version
1672
+
1673
+ # (Optional) SelfLink is a URL representing this object. Populated by the system.
1674
+ # Read-only. string selfLink = 4;
1675
+ # Corresponds to the JSON property `selfLink`
1676
+ # @return [String]
1677
+ attr_accessor :self_link
1678
+
1679
+ # (Optional) UID is the unique in time and space value for this object. It is
1680
+ # typically generated by the server on successful creation of a resource and is
1681
+ # not allowed to change on PUT operations. Populated by the system. Read-only.
1682
+ # More info: http://kubernetes.io/docs/user-guide/identifiers#uids
1683
+ # Corresponds to the JSON property `uid`
1684
+ # @return [String]
1685
+ attr_accessor :uid
1686
+
1687
+ def initialize(**args)
1688
+ update!(**args)
1689
+ end
1690
+
1691
+ # Update properties of this object
1692
+ def update!(**args)
1693
+ @annotations = args[:annotations] if args.key?(:annotations)
1694
+ @cluster_name = args[:cluster_name] if args.key?(:cluster_name)
1695
+ @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
1696
+ @deletion_grace_period_seconds = args[:deletion_grace_period_seconds] if args.key?(:deletion_grace_period_seconds)
1697
+ @deletion_timestamp = args[:deletion_timestamp] if args.key?(:deletion_timestamp)
1698
+ @finalizers = args[:finalizers] if args.key?(:finalizers)
1699
+ @generate_name = args[:generate_name] if args.key?(:generate_name)
1700
+ @generation = args[:generation] if args.key?(:generation)
1701
+ @labels = args[:labels] if args.key?(:labels)
1702
+ @name = args[:name] if args.key?(:name)
1703
+ @namespace = args[:namespace] if args.key?(:namespace)
1704
+ @owner_references = args[:owner_references] if args.key?(:owner_references)
1705
+ @resource_version = args[:resource_version] if args.key?(:resource_version)
1706
+ @self_link = args[:self_link] if args.key?(:self_link)
1707
+ @uid = args[:uid] if args.key?(:uid)
1708
+ end
1709
+ end
1710
+
1711
+ # OwnerReference contains enough information to let you identify an owning
1712
+ # object. Currently, an owning object must be in the same namespace, so there is
1713
+ # no namespace field.
1714
+ class OwnerReference
1715
+ include Google::Apis::Core::Hashable
1716
+
1717
+ # API version of the referent.
1718
+ # Corresponds to the JSON property `apiVersion`
1719
+ # @return [String]
1720
+ attr_accessor :api_version
1721
+
1722
+ # If true, AND if the owner has the "foregroundDeletion" finalizer, then the
1723
+ # owner cannot be deleted from the key-value store until this reference is
1724
+ # removed. Defaults to false. To set this field, a user needs "delete"
1725
+ # permission of the owner, otherwise 422 (Unprocessable Entity) will be returned.
1726
+ # +optional
1727
+ # Corresponds to the JSON property `blockOwnerDeletion`
1728
+ # @return [Boolean]
1729
+ attr_accessor :block_owner_deletion
1730
+ alias_method :block_owner_deletion?, :block_owner_deletion
1731
+
1732
+ # If true, this reference points to the managing controller. +optional
1733
+ # Corresponds to the JSON property `controller`
1734
+ # @return [Boolean]
1735
+ attr_accessor :controller
1736
+ alias_method :controller?, :controller
1737
+
1738
+ # Kind of the referent. More info: https://git.k8s.io/community/contributors/
1739
+ # devel/api-conventions.md#types-kinds
1740
+ # Corresponds to the JSON property `kind`
1741
+ # @return [String]
1742
+ attr_accessor :kind
1743
+
1744
+ # Name of the referent. More info: http://kubernetes.io/docs/user-guide/
1745
+ # identifiers#names
1746
+ # Corresponds to the JSON property `name`
1747
+ # @return [String]
1748
+ attr_accessor :name
1749
+
1750
+ # UID of the referent. More info: http://kubernetes.io/docs/user-guide/
1751
+ # identifiers#uids
1752
+ # Corresponds to the JSON property `uid`
1753
+ # @return [String]
1754
+ attr_accessor :uid
1755
+
1756
+ def initialize(**args)
1757
+ update!(**args)
1758
+ end
1759
+
1760
+ # Update properties of this object
1761
+ def update!(**args)
1762
+ @api_version = args[:api_version] if args.key?(:api_version)
1763
+ @block_owner_deletion = args[:block_owner_deletion] if args.key?(:block_owner_deletion)
1764
+ @controller = args[:controller] if args.key?(:controller)
1765
+ @kind = args[:kind] if args.key?(:kind)
1766
+ @name = args[:name] if args.key?(:name)
1767
+ @uid = args[:uid] if args.key?(:uid)
1768
+ end
1769
+ end
1770
+
1771
+ # An Identity and Access Management (IAM) policy, which specifies access
1772
+ # controls for Google Cloud resources. A `Policy` is a collection of `bindings`.
1773
+ # A `binding` binds one or more `members` to a single `role`. Members can be
1774
+ # user accounts, service accounts, Google groups, and domains (such as G Suite).
1775
+ # A `role` is a named list of permissions; each `role` can be an IAM predefined
1776
+ # role or a user-created custom role. For some types of Google Cloud resources,
1777
+ # a `binding` can also specify a `condition`, which is a logical expression that
1778
+ # allows access to a resource only if the expression evaluates to `true`. A
1779
+ # condition can add constraints based on attributes of the request, the resource,
1780
+ # or both. To learn which resources support conditions in their IAM policies,
1781
+ # see the [IAM documentation](https://cloud.google.com/iam/help/conditions/
1782
+ # resource-policies). **JSON example:** ` "bindings": [ ` "role": "roles/
1783
+ # resourcemanager.organizationAdmin", "members": [ "user:mike@example.com", "
1784
+ # group:admins@example.com", "domain:google.com", "serviceAccount:my-project-id@
1785
+ # appspot.gserviceaccount.com" ] `, ` "role": "roles/resourcemanager.
1786
+ # organizationViewer", "members": [ "user:eve@example.com" ], "condition": ` "
1787
+ # title": "expirable access", "description": "Does not grant access after Sep
1788
+ # 2020", "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')", `
1789
+ # ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:** bindings: -
1790
+ # members: - user:mike@example.com - group:admins@example.com - domain:google.
1791
+ # com - serviceAccount:my-project-id@appspot.gserviceaccount.com role: roles/
1792
+ # resourcemanager.organizationAdmin - members: - user:eve@example.com role:
1793
+ # roles/resourcemanager.organizationViewer condition: title: expirable access
1794
+ # description: Does not grant access after Sep 2020 expression: request.time <
1795
+ # timestamp('2020-10-01T00:00:00.000Z') - etag: BwWWja0YfJA= - version: 3 For a
1796
+ # description of IAM and its features, see the [IAM documentation](https://cloud.
1797
+ # google.com/iam/docs/).
1798
+ class Policy
1799
+ include Google::Apis::Core::Hashable
1800
+
1801
+ # Specifies cloud audit logging configuration for this policy.
1802
+ # Corresponds to the JSON property `auditConfigs`
1803
+ # @return [Array<Google::Apis::RunV1::AuditConfig>]
1804
+ attr_accessor :audit_configs
1805
+
1806
+ # Associates a list of `members` to a `role`. Optionally, may specify a `
1807
+ # condition` that determines how and when the `bindings` are applied. Each of
1808
+ # the `bindings` must contain at least one member.
1809
+ # Corresponds to the JSON property `bindings`
1810
+ # @return [Array<Google::Apis::RunV1::Binding>]
1811
+ attr_accessor :bindings
1812
+
1813
+ # `etag` is used for optimistic concurrency control as a way to help prevent
1814
+ # simultaneous updates of a policy from overwriting each other. It is strongly
1815
+ # suggested that systems make use of the `etag` in the read-modify-write cycle
1816
+ # to perform policy updates in order to avoid race conditions: An `etag` is
1817
+ # returned in the response to `getIamPolicy`, and systems are expected to put
1818
+ # that etag in the request to `setIamPolicy` to ensure that their change will be
1819
+ # applied to the same version of the policy. **Important:** If you use IAM
1820
+ # Conditions, you must include the `etag` field whenever you call `setIamPolicy`.
1821
+ # If you omit this field, then IAM allows you to overwrite a version `3` policy
1822
+ # with a version `1` policy, and all of the conditions in the version `3` policy
1823
+ # are lost.
1824
+ # Corresponds to the JSON property `etag`
1825
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
1826
+ # @return [String]
1827
+ attr_accessor :etag
1828
+
1829
+ # Specifies the format of the policy. Valid values are `0`, `1`, and `3`.
1830
+ # Requests that specify an invalid value are rejected. Any operation that
1831
+ # affects conditional role bindings must specify version `3`. This requirement
1832
+ # applies to the following operations: * Getting a policy that includes a
1833
+ # conditional role binding * Adding a conditional role binding to a policy *
1834
+ # Changing a conditional role binding in a policy * Removing any role binding,
1835
+ # with or without a condition, from a policy that includes conditions **
1836
+ # Important:** If you use IAM Conditions, you must include the `etag` field
1837
+ # whenever you call `setIamPolicy`. If you omit this field, then IAM allows you
1838
+ # to overwrite a version `3` policy with a version `1` policy, and all of the
1839
+ # conditions in the version `3` policy are lost. If a policy does not include
1840
+ # any conditions, operations on that policy may specify any valid version or
1841
+ # leave the field unset. To learn which resources support conditions in their
1842
+ # IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/
1843
+ # conditions/resource-policies).
1844
+ # Corresponds to the JSON property `version`
1845
+ # @return [Fixnum]
1846
+ attr_accessor :version
1847
+
1848
+ def initialize(**args)
1849
+ update!(**args)
1850
+ end
1851
+
1852
+ # Update properties of this object
1853
+ def update!(**args)
1854
+ @audit_configs = args[:audit_configs] if args.key?(:audit_configs)
1855
+ @bindings = args[:bindings] if args.key?(:bindings)
1856
+ @etag = args[:etag] if args.key?(:etag)
1857
+ @version = args[:version] if args.key?(:version)
1858
+ end
1859
+ end
1860
+
1861
+ # Cloud Run fully managed: not supported Cloud Run for Anthos: supported Probe
1862
+ # describes a health check to be performed against a container to determine
1863
+ # whether it is alive or ready to receive traffic.
1864
+ class Probe
1865
+ include Google::Apis::Core::Hashable
1866
+
1867
+ # Cloud Run fully managed: not supported Cloud Run for Anthos: supported
1868
+ # ExecAction describes a "run in container" action.
1869
+ # Corresponds to the JSON property `exec`
1870
+ # @return [Google::Apis::RunV1::ExecAction]
1871
+ attr_accessor :exec
1872
+
1873
+ # (Optional) Cloud Run fully managed: not supported Cloud Run for Anthos:
1874
+ # supported Minimum consecutive failures for the probe to be considered failed
1875
+ # after having succeeded. Defaults to 3. Minimum value is 1.
1876
+ # Corresponds to the JSON property `failureThreshold`
1877
+ # @return [Fixnum]
1878
+ attr_accessor :failure_threshold
1879
+
1880
+ # Cloud Run fully managed: not supported Cloud Run for Anthos: supported
1881
+ # HTTPGetAction describes an action based on HTTP Get requests.
1882
+ # Corresponds to the JSON property `httpGet`
1883
+ # @return [Google::Apis::RunV1::HttpGetAction]
1884
+ attr_accessor :http_get
1885
+
1886
+ # (Optional) Cloud Run fully managed: not supported Cloud Run for Anthos:
1887
+ # supported Number of seconds after the container has started before liveness
1888
+ # probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/
1889
+ # pods/pod-lifecycle#container-probes
1890
+ # Corresponds to the JSON property `initialDelaySeconds`
1891
+ # @return [Fixnum]
1892
+ attr_accessor :initial_delay_seconds
1893
+
1894
+ # (Optional) Cloud Run fully managed: not supported Cloud Run for Anthos:
1895
+ # supported How often (in seconds) to perform the probe. Default to 10 seconds.
1896
+ # Minimum value is 1.
1897
+ # Corresponds to the JSON property `periodSeconds`
1898
+ # @return [Fixnum]
1899
+ attr_accessor :period_seconds
1900
+
1901
+ # (Optional) Cloud Run fully managed: not supported Cloud Run for Anthos:
1902
+ # supported Minimum consecutive successes for the probe to be considered
1903
+ # successful after having failed. Defaults to 1. Must be 1 for liveness. Minimum
1904
+ # value is 1.
1905
+ # Corresponds to the JSON property `successThreshold`
1906
+ # @return [Fixnum]
1907
+ attr_accessor :success_threshold
1908
+
1909
+ # Cloud Run fully managed: not supported Cloud Run for Anthos: supported
1910
+ # TCPSocketAction describes an action based on opening a socket
1911
+ # Corresponds to the JSON property `tcpSocket`
1912
+ # @return [Google::Apis::RunV1::TcpSocketAction]
1913
+ attr_accessor :tcp_socket
1914
+
1915
+ # (Optional) Cloud Run fully managed: not supported Cloud Run for Anthos:
1916
+ # supported Number of seconds after which the probe times out. Defaults to 1
1917
+ # second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/
1918
+ # workloads/pods/pod-lifecycle#container-probes
1919
+ # Corresponds to the JSON property `timeoutSeconds`
1920
+ # @return [Fixnum]
1921
+ attr_accessor :timeout_seconds
1922
+
1923
+ def initialize(**args)
1924
+ update!(**args)
1925
+ end
1926
+
1927
+ # Update properties of this object
1928
+ def update!(**args)
1929
+ @exec = args[:exec] if args.key?(:exec)
1930
+ @failure_threshold = args[:failure_threshold] if args.key?(:failure_threshold)
1931
+ @http_get = args[:http_get] if args.key?(:http_get)
1932
+ @initial_delay_seconds = args[:initial_delay_seconds] if args.key?(:initial_delay_seconds)
1933
+ @period_seconds = args[:period_seconds] if args.key?(:period_seconds)
1934
+ @success_threshold = args[:success_threshold] if args.key?(:success_threshold)
1935
+ @tcp_socket = args[:tcp_socket] if args.key?(:tcp_socket)
1936
+ @timeout_seconds = args[:timeout_seconds] if args.key?(:timeout_seconds)
1937
+ end
1938
+ end
1939
+
1940
+ # A DNS resource record.
1941
+ class ResourceRecord
1942
+ include Google::Apis::Core::Hashable
1943
+
1944
+ # Relative name of the object affected by this record. Only applicable for `
1945
+ # CNAME` records. Example: 'www'.
1946
+ # Corresponds to the JSON property `name`
1947
+ # @return [String]
1948
+ attr_accessor :name
1949
+
1950
+ # Data for this record. Values vary by record type, as defined in RFC 1035 (
1951
+ # section 5) and RFC 1034 (section 3.6.1).
1952
+ # Corresponds to the JSON property `rrdata`
1953
+ # @return [String]
1954
+ attr_accessor :rrdata
1955
+
1956
+ # Resource record type. Example: `AAAA`.
1957
+ # Corresponds to the JSON property `type`
1958
+ # @return [String]
1959
+ attr_accessor :type
1960
+
1961
+ def initialize(**args)
1962
+ update!(**args)
1963
+ end
1964
+
1965
+ # Update properties of this object
1966
+ def update!(**args)
1967
+ @name = args[:name] if args.key?(:name)
1968
+ @rrdata = args[:rrdata] if args.key?(:rrdata)
1969
+ @type = args[:type] if args.key?(:type)
1970
+ end
1971
+ end
1972
+
1973
+ # ResourceRequirements describes the compute resource requirements.
1974
+ class ResourceRequirements
1975
+ include Google::Apis::Core::Hashable
1976
+
1977
+ # (Optional) Cloud Run fully managed: Only memory and CPU are supported. Note:
1978
+ # The only supported values for CPU are '1', '2', and '4'. Setting 4 CPU
1979
+ # requires at least 2Gi of memory. Cloud Run for Anthos: supported Limits
1980
+ # describes the maximum amount of compute resources allowed. The values of the
1981
+ # map is string form of the 'quantity' k8s type: https://github.com/kubernetes/
1982
+ # kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/
1983
+ # quantity.go
1984
+ # Corresponds to the JSON property `limits`
1985
+ # @return [Hash<String,String>]
1986
+ attr_accessor :limits
1987
+
1988
+ # (Optional) Cloud Run fully managed: Only memory and CPU are supported. Note:
1989
+ # The only supported values for CPU are '1' and '2'. Cloud Run for Anthos:
1990
+ # supported Requests describes the minimum amount of compute resources required.
1991
+ # If Requests is omitted for a container, it defaults to Limits if that is
1992
+ # explicitly specified, otherwise to an implementation-defined value. The values
1993
+ # of the map is string form of the 'quantity' k8s type: https://github.com/
1994
+ # kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/
1995
+ # resource/quantity.go
1996
+ # Corresponds to the JSON property `requests`
1997
+ # @return [Hash<String,String>]
1998
+ attr_accessor :requests
1999
+
2000
+ def initialize(**args)
2001
+ update!(**args)
2002
+ end
2003
+
2004
+ # Update properties of this object
2005
+ def update!(**args)
2006
+ @limits = args[:limits] if args.key?(:limits)
2007
+ @requests = args[:requests] if args.key?(:requests)
2008
+ end
2009
+ end
2010
+
2011
+ # Revision is an immutable snapshot of code and configuration. A revision
2012
+ # references a container image. Revisions are created by updates to a
2013
+ # Configuration. See also: https://github.com/knative/serving/blob/master/docs/
2014
+ # spec/overview.md#revision
2015
+ class Revision
2016
+ include Google::Apis::Core::Hashable
2017
+
2018
+ # The API version for this call such as "serving.knative.dev/v1".
2019
+ # Corresponds to the JSON property `apiVersion`
2020
+ # @return [String]
2021
+ attr_accessor :api_version
2022
+
2023
+ # The kind of this resource, in this case "Revision".
2024
+ # Corresponds to the JSON property `kind`
2025
+ # @return [String]
2026
+ attr_accessor :kind
2027
+
2028
+ # k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta is metadata that all persisted
2029
+ # resources must have, which includes all objects users must create.
2030
+ # Corresponds to the JSON property `metadata`
2031
+ # @return [Google::Apis::RunV1::ObjectMeta]
2032
+ attr_accessor :metadata
2033
+
2034
+ # RevisionSpec holds the desired state of the Revision (from the client).
2035
+ # Corresponds to the JSON property `spec`
2036
+ # @return [Google::Apis::RunV1::RevisionSpec]
2037
+ attr_accessor :spec
2038
+
2039
+ # RevisionStatus communicates the observed state of the Revision (from the
2040
+ # controller).
2041
+ # Corresponds to the JSON property `status`
2042
+ # @return [Google::Apis::RunV1::RevisionStatus]
2043
+ attr_accessor :status
2044
+
2045
+ def initialize(**args)
2046
+ update!(**args)
2047
+ end
2048
+
2049
+ # Update properties of this object
2050
+ def update!(**args)
2051
+ @api_version = args[:api_version] if args.key?(:api_version)
2052
+ @kind = args[:kind] if args.key?(:kind)
2053
+ @metadata = args[:metadata] if args.key?(:metadata)
2054
+ @spec = args[:spec] if args.key?(:spec)
2055
+ @status = args[:status] if args.key?(:status)
2056
+ end
2057
+ end
2058
+
2059
+ # RevisionSpec holds the desired state of the Revision (from the client).
2060
+ class RevisionSpec
2061
+ include Google::Apis::Core::Hashable
2062
+
2063
+ # (Optional) ContainerConcurrency specifies the maximum allowed in-flight (
2064
+ # concurrent) requests per container instance of the Revision. Cloud Run fully
2065
+ # managed: supported, defaults to 80 Cloud Run for Anthos: supported, defaults
2066
+ # to 0, which means concurrency to the application is not limited, and the
2067
+ # system decides the target concurrency for the autoscaler.
2068
+ # Corresponds to the JSON property `containerConcurrency`
2069
+ # @return [Fixnum]
2070
+ attr_accessor :container_concurrency
2071
+
2072
+ # Containers holds the single container that defines the unit of execution for
2073
+ # this Revision. In the context of a Revision, we disallow a number of fields on
2074
+ # this Container, including: name and lifecycle. In Cloud Run, only a single
2075
+ # container may be provided. The runtime contract is documented here: https://
2076
+ # github.com/knative/serving/blob/master/docs/runtime-contract.md
2077
+ # Corresponds to the JSON property `containers`
2078
+ # @return [Array<Google::Apis::RunV1::Container>]
2079
+ attr_accessor :containers
2080
+
2081
+ # Email address of the IAM service account associated with the revision of the
2082
+ # service. The service account represents the identity of the running revision,
2083
+ # and determines what permissions the revision has. If not provided, the
2084
+ # revision will use the project's default service account.
2085
+ # Corresponds to the JSON property `serviceAccountName`
2086
+ # @return [String]
2087
+ attr_accessor :service_account_name
2088
+
2089
+ # TimeoutSeconds holds the max duration the instance is allowed for responding
2090
+ # to a request. Cloud Run fully managed: defaults to 300 seconds (5 minutes).
2091
+ # Maximum allowed value is 900 seconds (15 minutes). Cloud Run for Anthos:
2092
+ # defaults to 300 seconds (5 minutes). Maximum allowed value is configurable by
2093
+ # the cluster operator.
2094
+ # Corresponds to the JSON property `timeoutSeconds`
2095
+ # @return [Fixnum]
2096
+ attr_accessor :timeout_seconds
2097
+
2098
+ #
2099
+ # Corresponds to the JSON property `volumes`
2100
+ # @return [Array<Google::Apis::RunV1::Volume>]
2101
+ attr_accessor :volumes
2102
+
2103
+ def initialize(**args)
2104
+ update!(**args)
2105
+ end
2106
+
2107
+ # Update properties of this object
2108
+ def update!(**args)
2109
+ @container_concurrency = args[:container_concurrency] if args.key?(:container_concurrency)
2110
+ @containers = args[:containers] if args.key?(:containers)
2111
+ @service_account_name = args[:service_account_name] if args.key?(:service_account_name)
2112
+ @timeout_seconds = args[:timeout_seconds] if args.key?(:timeout_seconds)
2113
+ @volumes = args[:volumes] if args.key?(:volumes)
2114
+ end
2115
+ end
2116
+
2117
+ # RevisionStatus communicates the observed state of the Revision (from the
2118
+ # controller).
2119
+ class RevisionStatus
2120
+ include Google::Apis::Core::Hashable
2121
+
2122
+ # Conditions communicates information about ongoing/complete reconciliation
2123
+ # processes that bring the "spec" inline with the observed state of the world.
2124
+ # As a Revision is being prepared, it will incrementally update conditions.
2125
+ # Revision-specific conditions include: * "ResourcesAvailable": True when
2126
+ # underlying resources have been provisioned. * "ContainerHealthy": True when
2127
+ # the Revision readiness check completes. * "Active": True when the Revision may
2128
+ # receive traffic.
2129
+ # Corresponds to the JSON property `conditions`
2130
+ # @return [Array<Google::Apis::RunV1::GoogleCloudRunV1Condition>]
2131
+ attr_accessor :conditions
2132
+
2133
+ # ImageDigest holds the resolved digest for the image specified within .Spec.
2134
+ # Container.Image. The digest is resolved during the creation of Revision. This
2135
+ # field holds the digest value regardless of whether a tag or digest was
2136
+ # originally specified in the Container object.
2137
+ # Corresponds to the JSON property `imageDigest`
2138
+ # @return [String]
2139
+ attr_accessor :image_digest
2140
+
2141
+ # Specifies the generated logging url for this particular revision based on the
2142
+ # revision url template specified in the controller's config. +optional
2143
+ # Corresponds to the JSON property `logUrl`
2144
+ # @return [String]
2145
+ attr_accessor :log_url
2146
+
2147
+ # ObservedGeneration is the 'Generation' of the Revision that was last processed
2148
+ # by the controller. Clients polling for completed reconciliation should poll
2149
+ # until observedGeneration = metadata.generation, and the Ready condition's
2150
+ # status is True or False.
2151
+ # Corresponds to the JSON property `observedGeneration`
2152
+ # @return [Fixnum]
2153
+ attr_accessor :observed_generation
2154
+
2155
+ # Not currently used by Cloud Run.
2156
+ # Corresponds to the JSON property `serviceName`
2157
+ # @return [String]
2158
+ attr_accessor :service_name
2159
+
2160
+ def initialize(**args)
2161
+ update!(**args)
2162
+ end
2163
+
2164
+ # Update properties of this object
2165
+ def update!(**args)
2166
+ @conditions = args[:conditions] if args.key?(:conditions)
2167
+ @image_digest = args[:image_digest] if args.key?(:image_digest)
2168
+ @log_url = args[:log_url] if args.key?(:log_url)
2169
+ @observed_generation = args[:observed_generation] if args.key?(:observed_generation)
2170
+ @service_name = args[:service_name] if args.key?(:service_name)
2171
+ end
2172
+ end
2173
+
2174
+ # RevisionTemplateSpec describes the data a revision should have when created
2175
+ # from a template. Based on: https://github.com/kubernetes/api/blob/e771f807/
2176
+ # core/v1/types.go#L3179-L3190
2177
+ class RevisionTemplate
2178
+ include Google::Apis::Core::Hashable
2179
+
2180
+ # k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta is metadata that all persisted
2181
+ # resources must have, which includes all objects users must create.
2182
+ # Corresponds to the JSON property `metadata`
2183
+ # @return [Google::Apis::RunV1::ObjectMeta]
2184
+ attr_accessor :metadata
2185
+
2186
+ # RevisionSpec holds the desired state of the Revision (from the client).
2187
+ # Corresponds to the JSON property `spec`
2188
+ # @return [Google::Apis::RunV1::RevisionSpec]
2189
+ attr_accessor :spec
2190
+
2191
+ def initialize(**args)
2192
+ update!(**args)
2193
+ end
2194
+
2195
+ # Update properties of this object
2196
+ def update!(**args)
2197
+ @metadata = args[:metadata] if args.key?(:metadata)
2198
+ @spec = args[:spec] if args.key?(:spec)
2199
+ end
2200
+ end
2201
+
2202
+ # Route is responsible for configuring ingress over a collection of Revisions.
2203
+ # Some of the Revisions a Route distributes traffic over may be specified by
2204
+ # referencing the Configuration responsible for creating them; in these cases
2205
+ # the Route is additionally responsible for monitoring the Configuration for "
2206
+ # latest ready" revision changes, and smoothly rolling out latest revisions. See
2207
+ # also: https://github.com/knative/serving/blob/master/docs/spec/overview.md#
2208
+ # route Cloud Run currently supports referencing a single Configuration to
2209
+ # automatically deploy the "latest ready" Revision from that Configuration.
2210
+ class Route
2211
+ include Google::Apis::Core::Hashable
2212
+
2213
+ # The API version for this call such as "serving.knative.dev/v1".
2214
+ # Corresponds to the JSON property `apiVersion`
2215
+ # @return [String]
2216
+ attr_accessor :api_version
2217
+
2218
+ # The kind of this resource, in this case always "Route".
2219
+ # Corresponds to the JSON property `kind`
2220
+ # @return [String]
2221
+ attr_accessor :kind
2222
+
2223
+ # k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta is metadata that all persisted
2224
+ # resources must have, which includes all objects users must create.
2225
+ # Corresponds to the JSON property `metadata`
2226
+ # @return [Google::Apis::RunV1::ObjectMeta]
2227
+ attr_accessor :metadata
2228
+
2229
+ # RouteSpec holds the desired state of the Route (from the client).
2230
+ # Corresponds to the JSON property `spec`
2231
+ # @return [Google::Apis::RunV1::RouteSpec]
2232
+ attr_accessor :spec
2233
+
2234
+ # RouteStatus communicates the observed state of the Route (from the controller).
2235
+ # Corresponds to the JSON property `status`
2236
+ # @return [Google::Apis::RunV1::RouteStatus]
2237
+ attr_accessor :status
2238
+
2239
+ def initialize(**args)
2240
+ update!(**args)
2241
+ end
2242
+
2243
+ # Update properties of this object
2244
+ def update!(**args)
2245
+ @api_version = args[:api_version] if args.key?(:api_version)
2246
+ @kind = args[:kind] if args.key?(:kind)
2247
+ @metadata = args[:metadata] if args.key?(:metadata)
2248
+ @spec = args[:spec] if args.key?(:spec)
2249
+ @status = args[:status] if args.key?(:status)
2250
+ end
2251
+ end
2252
+
2253
+ # RouteSpec holds the desired state of the Route (from the client).
2254
+ class RouteSpec
2255
+ include Google::Apis::Core::Hashable
2256
+
2257
+ # Traffic specifies how to distribute traffic over a collection of Knative
2258
+ # Revisions and Configurations. Cloud Run currently supports a single
2259
+ # configurationName.
2260
+ # Corresponds to the JSON property `traffic`
2261
+ # @return [Array<Google::Apis::RunV1::TrafficTarget>]
2262
+ attr_accessor :traffic
2263
+
2264
+ def initialize(**args)
2265
+ update!(**args)
2266
+ end
2267
+
2268
+ # Update properties of this object
2269
+ def update!(**args)
2270
+ @traffic = args[:traffic] if args.key?(:traffic)
2271
+ end
2272
+ end
2273
+
2274
+ # RouteStatus communicates the observed state of the Route (from the controller).
2275
+ class RouteStatus
2276
+ include Google::Apis::Core::Hashable
2277
+
2278
+ # Information for connecting over HTTP(s).
2279
+ # Corresponds to the JSON property `address`
2280
+ # @return [Google::Apis::RunV1::Addressable]
2281
+ attr_accessor :address
2282
+
2283
+ # Conditions communicates information about ongoing/complete reconciliation
2284
+ # processes that bring the "spec" inline with the observed state of the world.
2285
+ # Corresponds to the JSON property `conditions`
2286
+ # @return [Array<Google::Apis::RunV1::GoogleCloudRunV1Condition>]
2287
+ attr_accessor :conditions
2288
+
2289
+ # ObservedGeneration is the 'Generation' of the Route that was last processed by
2290
+ # the controller. Clients polling for completed reconciliation should poll until
2291
+ # observedGeneration = metadata.generation and the Ready condition's status is
2292
+ # True or False. Note that providing a trafficTarget that only has a
2293
+ # configurationName will result in a Route that does not increment either its
2294
+ # metadata.generation or its observedGeneration, as new "latest ready" revisions
2295
+ # from the Configuration are processed without an update to the Route's spec.
2296
+ # Corresponds to the JSON property `observedGeneration`
2297
+ # @return [Fixnum]
2298
+ attr_accessor :observed_generation
2299
+
2300
+ # Traffic holds the configured traffic distribution. These entries will always
2301
+ # contain RevisionName references. When ConfigurationName appears in the spec,
2302
+ # this will hold the LatestReadyRevisionName that we last observed.
2303
+ # Corresponds to the JSON property `traffic`
2304
+ # @return [Array<Google::Apis::RunV1::TrafficTarget>]
2305
+ attr_accessor :traffic
2306
+
2307
+ # URL holds the url that will distribute traffic over the provided traffic
2308
+ # targets. It generally has the form: https://`route-hash`-`project-hash`-`
2309
+ # cluster-level-suffix`.a.run.app
2310
+ # Corresponds to the JSON property `url`
2311
+ # @return [String]
2312
+ attr_accessor :url
2313
+
2314
+ def initialize(**args)
2315
+ update!(**args)
2316
+ end
2317
+
2318
+ # Update properties of this object
2319
+ def update!(**args)
2320
+ @address = args[:address] if args.key?(:address)
2321
+ @conditions = args[:conditions] if args.key?(:conditions)
2322
+ @observed_generation = args[:observed_generation] if args.key?(:observed_generation)
2323
+ @traffic = args[:traffic] if args.key?(:traffic)
2324
+ @url = args[:url] if args.key?(:url)
2325
+ end
2326
+ end
2327
+
2328
+ # Cloud Run fully managed: not supported Cloud Run for Anthos: supported
2329
+ # SecretEnvSource selects a Secret to populate the environment variables with.
2330
+ # The contents of the target Secret's Data field will represent the key-value
2331
+ # pairs as environment variables.
2332
+ class SecretEnvSource
2333
+ include Google::Apis::Core::Hashable
2334
+
2335
+ # Cloud Run fully managed: not supported Cloud Run for Anthos: supported
2336
+ # LocalObjectReference contains enough information to let you locate the
2337
+ # referenced object inside the same namespace.
2338
+ # Corresponds to the JSON property `localObjectReference`
2339
+ # @return [Google::Apis::RunV1::LocalObjectReference]
2340
+ attr_accessor :local_object_reference
2341
+
2342
+ # Cloud Run fully managed: not supported Cloud Run for Anthos: supported The
2343
+ # Secret to select from.
2344
+ # Corresponds to the JSON property `name`
2345
+ # @return [String]
2346
+ attr_accessor :name
2347
+
2348
+ # (Optional) Cloud Run fully managed: not supported Cloud Run for Anthos:
2349
+ # supported Specify whether the Secret must be defined
2350
+ # Corresponds to the JSON property `optional`
2351
+ # @return [Boolean]
2352
+ attr_accessor :optional
2353
+ alias_method :optional?, :optional
2354
+
2355
+ def initialize(**args)
2356
+ update!(**args)
2357
+ end
2358
+
2359
+ # Update properties of this object
2360
+ def update!(**args)
2361
+ @local_object_reference = args[:local_object_reference] if args.key?(:local_object_reference)
2362
+ @name = args[:name] if args.key?(:name)
2363
+ @optional = args[:optional] if args.key?(:optional)
2364
+ end
2365
+ end
2366
+
2367
+ # Cloud Run fully managed: not supported Cloud Run for Anthos: supported
2368
+ # SecretKeySelector selects a key of a Secret.
2369
+ class SecretKeySelector
2370
+ include Google::Apis::Core::Hashable
2371
+
2372
+ # Cloud Run fully managed: not supported Cloud Run for Anthos: supported The key
2373
+ # of the secret to select from. Must be a valid secret key.
2374
+ # Corresponds to the JSON property `key`
2375
+ # @return [String]
2376
+ attr_accessor :key
2377
+
2378
+ # Cloud Run fully managed: not supported Cloud Run for Anthos: supported
2379
+ # LocalObjectReference contains enough information to let you locate the
2380
+ # referenced object inside the same namespace.
2381
+ # Corresponds to the JSON property `localObjectReference`
2382
+ # @return [Google::Apis::RunV1::LocalObjectReference]
2383
+ attr_accessor :local_object_reference
2384
+
2385
+ # Cloud Run fully managed: not supported Cloud Run for Anthos: supported The
2386
+ # name of the secret in the pod's namespace to select from.
2387
+ # Corresponds to the JSON property `name`
2388
+ # @return [String]
2389
+ attr_accessor :name
2390
+
2391
+ # (Optional) Cloud Run fully managed: not supported Cloud Run for Anthos:
2392
+ # supported Specify whether the Secret or its key must be defined
2393
+ # Corresponds to the JSON property `optional`
2394
+ # @return [Boolean]
2395
+ attr_accessor :optional
2396
+ alias_method :optional?, :optional
2397
+
2398
+ def initialize(**args)
2399
+ update!(**args)
2400
+ end
2401
+
2402
+ # Update properties of this object
2403
+ def update!(**args)
2404
+ @key = args[:key] if args.key?(:key)
2405
+ @local_object_reference = args[:local_object_reference] if args.key?(:local_object_reference)
2406
+ @name = args[:name] if args.key?(:name)
2407
+ @optional = args[:optional] if args.key?(:optional)
2408
+ end
2409
+ end
2410
+
2411
+ # Cloud Run fully managed: not supported Cloud Run for Anthos: supported The
2412
+ # contents of the target Secret's Data field will be presented in a volume as
2413
+ # files using the keys in the Data field as the file names.
2414
+ class SecretVolumeSource
2415
+ include Google::Apis::Core::Hashable
2416
+
2417
+ # (Optional) Cloud Run fully managed: not supported Cloud Run for Anthos:
2418
+ # supported Mode bits to use on created files by default. Must be a value
2419
+ # between 0000 and 0777. Defaults to 0644. Directories within the path are not
2420
+ # affected by this setting. This might be in conflict with other options that
2421
+ # affect the file mode, like fsGroup, and the result can be other mode bits set.
2422
+ # NOTE: This is an integer representation of the mode bits. So, the integer
2423
+ # value should look exactly as the chmod numeric notation, i.e. Unix chmod "777"
2424
+ # (a=rwx) should have the integer value 777.
2425
+ # Corresponds to the JSON property `defaultMode`
2426
+ # @return [Fixnum]
2427
+ attr_accessor :default_mode
2428
+
2429
+ # (Optional) Cloud Run fully managed: not supported Cloud Run for Anthos:
2430
+ # supported If unspecified, each key-value pair in the Data field of the
2431
+ # referenced Secret will be projected into the volume as a file whose name is
2432
+ # the key and content is the value. If specified, the listed keys will be
2433
+ # projected into the specified paths, and unlisted keys will not be present. If
2434
+ # a key is specified which is not present in the Secret, the volume setup will
2435
+ # error unless it is marked optional.
2436
+ # Corresponds to the JSON property `items`
2437
+ # @return [Array<Google::Apis::RunV1::KeyToPath>]
2438
+ attr_accessor :items
2439
+
2440
+ # (Optional) Cloud Run fully managed: not supported Cloud Run for Anthos:
2441
+ # supported Specify whether the Secret or its keys must be defined.
2442
+ # Corresponds to the JSON property `optional`
2443
+ # @return [Boolean]
2444
+ attr_accessor :optional
2445
+ alias_method :optional?, :optional
2446
+
2447
+ # Cloud Run fully managed: not supported Cloud Run for Anthos: supported Name of
2448
+ # the secret in the container's namespace to use.
2449
+ # Corresponds to the JSON property `secretName`
2450
+ # @return [String]
2451
+ attr_accessor :secret_name
2452
+
2453
+ def initialize(**args)
2454
+ update!(**args)
2455
+ end
2456
+
2457
+ # Update properties of this object
2458
+ def update!(**args)
2459
+ @default_mode = args[:default_mode] if args.key?(:default_mode)
2460
+ @items = args[:items] if args.key?(:items)
2461
+ @optional = args[:optional] if args.key?(:optional)
2462
+ @secret_name = args[:secret_name] if args.key?(:secret_name)
2463
+ end
2464
+ end
2465
+
2466
+ # Cloud Run fully managed: not supported Cloud Run for Anthos: supported
2467
+ # SecurityContext holds security configuration that will be applied to a
2468
+ # container. Some fields are present in both SecurityContext and
2469
+ # PodSecurityContext. When both are set, the values in SecurityContext take
2470
+ # precedence.
2471
+ class SecurityContext
2472
+ include Google::Apis::Core::Hashable
2473
+
2474
+ # (Optional) Cloud Run fully managed: not supported Cloud Run for Anthos:
2475
+ # supported The UID to run the entrypoint of the container process. Defaults to
2476
+ # user specified in image metadata if unspecified. May also be set in
2477
+ # PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the
2478
+ # value specified in SecurityContext takes precedence.
2479
+ # Corresponds to the JSON property `runAsUser`
2480
+ # @return [Fixnum]
2481
+ attr_accessor :run_as_user
2482
+
2483
+ def initialize(**args)
2484
+ update!(**args)
2485
+ end
2486
+
2487
+ # Update properties of this object
2488
+ def update!(**args)
2489
+ @run_as_user = args[:run_as_user] if args.key?(:run_as_user)
2490
+ end
2491
+ end
2492
+
2493
+ # Service acts as a top-level container that manages a set of Routes and
2494
+ # Configurations which implement a network service. Service exists to provide a
2495
+ # singular abstraction which can be access controlled, reasoned about, and which
2496
+ # encapsulates software lifecycle decisions such as rollout policy and team
2497
+ # resource ownership. Service acts only as an orchestrator of the underlying
2498
+ # Routes and Configurations (much as a kubernetes Deployment orchestrates
2499
+ # ReplicaSets). The Service's controller will track the statuses of its owned
2500
+ # Configuration and Route, reflecting their statuses and conditions as its own.
2501
+ # See also: https://github.com/knative/serving/blob/master/docs/spec/overview.md#
2502
+ # service
2503
+ class Service
2504
+ include Google::Apis::Core::Hashable
2505
+
2506
+ # The API version for this call such as "serving.knative.dev/v1".
2507
+ # Corresponds to the JSON property `apiVersion`
2508
+ # @return [String]
2509
+ attr_accessor :api_version
2510
+
2511
+ # The kind of resource, in this case "Service".
2512
+ # Corresponds to the JSON property `kind`
2513
+ # @return [String]
2514
+ attr_accessor :kind
2515
+
2516
+ # k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta is metadata that all persisted
2517
+ # resources must have, which includes all objects users must create.
2518
+ # Corresponds to the JSON property `metadata`
2519
+ # @return [Google::Apis::RunV1::ObjectMeta]
2520
+ attr_accessor :metadata
2521
+
2522
+ # ServiceSpec holds the desired state of the Route (from the client), which is
2523
+ # used to manipulate the underlying Route and Configuration(s).
2524
+ # Corresponds to the JSON property `spec`
2525
+ # @return [Google::Apis::RunV1::ServiceSpec]
2526
+ attr_accessor :spec
2527
+
2528
+ # The current state of the Service. Output only.
2529
+ # Corresponds to the JSON property `status`
2530
+ # @return [Google::Apis::RunV1::ServiceStatus]
2531
+ attr_accessor :status
2532
+
2533
+ def initialize(**args)
2534
+ update!(**args)
2535
+ end
2536
+
2537
+ # Update properties of this object
2538
+ def update!(**args)
2539
+ @api_version = args[:api_version] if args.key?(:api_version)
2540
+ @kind = args[:kind] if args.key?(:kind)
2541
+ @metadata = args[:metadata] if args.key?(:metadata)
2542
+ @spec = args[:spec] if args.key?(:spec)
2543
+ @status = args[:status] if args.key?(:status)
2544
+ end
2545
+ end
2546
+
2547
+ # ServiceSpec holds the desired state of the Route (from the client), which is
2548
+ # used to manipulate the underlying Route and Configuration(s).
2549
+ class ServiceSpec
2550
+ include Google::Apis::Core::Hashable
2551
+
2552
+ # RevisionTemplateSpec describes the data a revision should have when created
2553
+ # from a template. Based on: https://github.com/kubernetes/api/blob/e771f807/
2554
+ # core/v1/types.go#L3179-L3190
2555
+ # Corresponds to the JSON property `template`
2556
+ # @return [Google::Apis::RunV1::RevisionTemplate]
2557
+ attr_accessor :template
2558
+
2559
+ # Traffic specifies how to distribute traffic over a collection of Knative
2560
+ # Revisions and Configurations.
2561
+ # Corresponds to the JSON property `traffic`
2562
+ # @return [Array<Google::Apis::RunV1::TrafficTarget>]
2563
+ attr_accessor :traffic
2564
+
2565
+ def initialize(**args)
2566
+ update!(**args)
2567
+ end
2568
+
2569
+ # Update properties of this object
2570
+ def update!(**args)
2571
+ @template = args[:template] if args.key?(:template)
2572
+ @traffic = args[:traffic] if args.key?(:traffic)
2573
+ end
2574
+ end
2575
+
2576
+ # The current state of the Service. Output only.
2577
+ class ServiceStatus
2578
+ include Google::Apis::Core::Hashable
2579
+
2580
+ # Information for connecting over HTTP(s).
2581
+ # Corresponds to the JSON property `address`
2582
+ # @return [Google::Apis::RunV1::Addressable]
2583
+ attr_accessor :address
2584
+
2585
+ # Conditions communicates information about ongoing/complete reconciliation
2586
+ # processes that bring the "spec" inline with the observed state of the world.
2587
+ # Service-specific conditions include: * "ConfigurationsReady": true when the
2588
+ # underlying Configuration is ready. * "RoutesReady": true when the underlying
2589
+ # Route is ready. * "Ready": true when both the underlying Route and
2590
+ # Configuration are ready.
2591
+ # Corresponds to the JSON property `conditions`
2592
+ # @return [Array<Google::Apis::RunV1::GoogleCloudRunV1Condition>]
2593
+ attr_accessor :conditions
2594
+
2595
+ # From ConfigurationStatus. LatestCreatedRevisionName is the last revision that
2596
+ # was created from this Service's Configuration. It might not be ready yet, for
2597
+ # that use LatestReadyRevisionName.
2598
+ # Corresponds to the JSON property `latestCreatedRevisionName`
2599
+ # @return [String]
2600
+ attr_accessor :latest_created_revision_name
2601
+
2602
+ # From ConfigurationStatus. LatestReadyRevisionName holds the name of the latest
2603
+ # Revision stamped out from this Service's Configuration that has had its "Ready"
2604
+ # condition become "True".
2605
+ # Corresponds to the JSON property `latestReadyRevisionName`
2606
+ # @return [String]
2607
+ attr_accessor :latest_ready_revision_name
2608
+
2609
+ # ObservedGeneration is the 'Generation' of the Route that was last processed by
2610
+ # the controller. Clients polling for completed reconciliation should poll until
2611
+ # observedGeneration = metadata.generation and the Ready condition's status is
2612
+ # True or False.
2613
+ # Corresponds to the JSON property `observedGeneration`
2614
+ # @return [Fixnum]
2615
+ attr_accessor :observed_generation
2616
+
2617
+ # From RouteStatus. Traffic holds the configured traffic distribution. These
2618
+ # entries will always contain RevisionName references. When ConfigurationName
2619
+ # appears in the spec, this will hold the LatestReadyRevisionName that we last
2620
+ # observed.
2621
+ # Corresponds to the JSON property `traffic`
2622
+ # @return [Array<Google::Apis::RunV1::TrafficTarget>]
2623
+ attr_accessor :traffic
2624
+
2625
+ # From RouteStatus. URL holds the url that will distribute traffic over the
2626
+ # provided traffic targets. It generally has the form https://`route-hash`-`
2627
+ # project-hash`-`cluster-level-suffix`.a.run.app
2628
+ # Corresponds to the JSON property `url`
2629
+ # @return [String]
2630
+ attr_accessor :url
2631
+
2632
+ def initialize(**args)
2633
+ update!(**args)
2634
+ end
2635
+
2636
+ # Update properties of this object
2637
+ def update!(**args)
2638
+ @address = args[:address] if args.key?(:address)
2639
+ @conditions = args[:conditions] if args.key?(:conditions)
2640
+ @latest_created_revision_name = args[:latest_created_revision_name] if args.key?(:latest_created_revision_name)
2641
+ @latest_ready_revision_name = args[:latest_ready_revision_name] if args.key?(:latest_ready_revision_name)
2642
+ @observed_generation = args[:observed_generation] if args.key?(:observed_generation)
2643
+ @traffic = args[:traffic] if args.key?(:traffic)
2644
+ @url = args[:url] if args.key?(:url)
2645
+ end
2646
+ end
2647
+
2648
+ # Request message for `SetIamPolicy` method.
2649
+ class SetIamPolicyRequest
2650
+ include Google::Apis::Core::Hashable
2651
+
2652
+ # An Identity and Access Management (IAM) policy, which specifies access
2653
+ # controls for Google Cloud resources. A `Policy` is a collection of `bindings`.
2654
+ # A `binding` binds one or more `members` to a single `role`. Members can be
2655
+ # user accounts, service accounts, Google groups, and domains (such as G Suite).
2656
+ # A `role` is a named list of permissions; each `role` can be an IAM predefined
2657
+ # role or a user-created custom role. For some types of Google Cloud resources,
2658
+ # a `binding` can also specify a `condition`, which is a logical expression that
2659
+ # allows access to a resource only if the expression evaluates to `true`. A
2660
+ # condition can add constraints based on attributes of the request, the resource,
2661
+ # or both. To learn which resources support conditions in their IAM policies,
2662
+ # see the [IAM documentation](https://cloud.google.com/iam/help/conditions/
2663
+ # resource-policies). **JSON example:** ` "bindings": [ ` "role": "roles/
2664
+ # resourcemanager.organizationAdmin", "members": [ "user:mike@example.com", "
2665
+ # group:admins@example.com", "domain:google.com", "serviceAccount:my-project-id@
2666
+ # appspot.gserviceaccount.com" ] `, ` "role": "roles/resourcemanager.
2667
+ # organizationViewer", "members": [ "user:eve@example.com" ], "condition": ` "
2668
+ # title": "expirable access", "description": "Does not grant access after Sep
2669
+ # 2020", "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')", `
2670
+ # ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:** bindings: -
2671
+ # members: - user:mike@example.com - group:admins@example.com - domain:google.
2672
+ # com - serviceAccount:my-project-id@appspot.gserviceaccount.com role: roles/
2673
+ # resourcemanager.organizationAdmin - members: - user:eve@example.com role:
2674
+ # roles/resourcemanager.organizationViewer condition: title: expirable access
2675
+ # description: Does not grant access after Sep 2020 expression: request.time <
2676
+ # timestamp('2020-10-01T00:00:00.000Z') - etag: BwWWja0YfJA= - version: 3 For a
2677
+ # description of IAM and its features, see the [IAM documentation](https://cloud.
2678
+ # google.com/iam/docs/).
2679
+ # Corresponds to the JSON property `policy`
2680
+ # @return [Google::Apis::RunV1::Policy]
2681
+ attr_accessor :policy
2682
+
2683
+ # OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only
2684
+ # the fields in the mask will be modified. If no mask is provided, the following
2685
+ # default mask is used: `paths: "bindings, etag"`
2686
+ # Corresponds to the JSON property `updateMask`
2687
+ # @return [String]
2688
+ attr_accessor :update_mask
2689
+
2690
+ def initialize(**args)
2691
+ update!(**args)
2692
+ end
2693
+
2694
+ # Update properties of this object
2695
+ def update!(**args)
2696
+ @policy = args[:policy] if args.key?(:policy)
2697
+ @update_mask = args[:update_mask] if args.key?(:update_mask)
2698
+ end
2699
+ end
2700
+
2701
+ # Status is a return value for calls that don't return other objects
2702
+ class Status
2703
+ include Google::Apis::Core::Hashable
2704
+
2705
+ # Suggested HTTP return code for this status, 0 if not set. +optional
2706
+ # Corresponds to the JSON property `code`
2707
+ # @return [Fixnum]
2708
+ attr_accessor :code
2709
+
2710
+ # StatusDetails is a set of additional properties that MAY be set by the server
2711
+ # to provide additional information about a response. The Reason field of a
2712
+ # Status object defines what attributes will be set. Clients must ignore fields
2713
+ # that do not match the defined type of each attribute, and should assume that
2714
+ # any attribute may be empty, invalid, or under defined.
2715
+ # Corresponds to the JSON property `details`
2716
+ # @return [Google::Apis::RunV1::StatusDetails]
2717
+ attr_accessor :details
2718
+
2719
+ # A human-readable description of the status of this operation. +optional
2720
+ # Corresponds to the JSON property `message`
2721
+ # @return [String]
2722
+ attr_accessor :message
2723
+
2724
+ # ListMeta describes metadata that synthetic resources must have, including
2725
+ # lists and various status objects. A resource may have only one of `ObjectMeta,
2726
+ # ListMeta`.
2727
+ # Corresponds to the JSON property `metadata`
2728
+ # @return [Google::Apis::RunV1::ListMeta]
2729
+ attr_accessor :metadata
2730
+
2731
+ # A machine-readable description of why this operation is in the "Failure"
2732
+ # status. If this value is empty there is no information available. A Reason
2733
+ # clarifies an HTTP status code but does not override it. +optional
2734
+ # Corresponds to the JSON property `reason`
2735
+ # @return [String]
2736
+ attr_accessor :reason
2737
+
2738
+ # Status of the operation. One of: "Success" or "Failure". More info: https://
2739
+ # git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status +
2740
+ # optional
2741
+ # Corresponds to the JSON property `status`
2742
+ # @return [String]
2743
+ attr_accessor :status
2744
+
2745
+ def initialize(**args)
2746
+ update!(**args)
2747
+ end
2748
+
2749
+ # Update properties of this object
2750
+ def update!(**args)
2751
+ @code = args[:code] if args.key?(:code)
2752
+ @details = args[:details] if args.key?(:details)
2753
+ @message = args[:message] if args.key?(:message)
2754
+ @metadata = args[:metadata] if args.key?(:metadata)
2755
+ @reason = args[:reason] if args.key?(:reason)
2756
+ @status = args[:status] if args.key?(:status)
2757
+ end
2758
+ end
2759
+
2760
+ # StatusCause provides more information about an api.Status failure, including
2761
+ # cases when multiple errors are encountered.
2762
+ class StatusCause
2763
+ include Google::Apis::Core::Hashable
2764
+
2765
+ # The field of the resource that has caused this error, as named by its JSON
2766
+ # serialization. May include dot and postfix notation for nested attributes.
2767
+ # Arrays are zero-indexed. Fields may appear more than once in an array of
2768
+ # causes due to fields having multiple errors. Optional. Examples: "name" - the
2769
+ # field "name" on the current resource "items[0].name" - the field "name" on the
2770
+ # first array entry in "items" +optional
2771
+ # Corresponds to the JSON property `field`
2772
+ # @return [String]
2773
+ attr_accessor :field
2774
+
2775
+ # A human-readable description of the cause of the error. This field may be
2776
+ # presented as-is to a reader. +optional
2777
+ # Corresponds to the JSON property `message`
2778
+ # @return [String]
2779
+ attr_accessor :message
2780
+
2781
+ # A machine-readable description of the cause of the error. If this value is
2782
+ # empty there is no information available. +optional
2783
+ # Corresponds to the JSON property `reason`
2784
+ # @return [String]
2785
+ attr_accessor :reason
2786
+
2787
+ def initialize(**args)
2788
+ update!(**args)
2789
+ end
2790
+
2791
+ # Update properties of this object
2792
+ def update!(**args)
2793
+ @field = args[:field] if args.key?(:field)
2794
+ @message = args[:message] if args.key?(:message)
2795
+ @reason = args[:reason] if args.key?(:reason)
2796
+ end
2797
+ end
2798
+
2799
+ # StatusDetails is a set of additional properties that MAY be set by the server
2800
+ # to provide additional information about a response. The Reason field of a
2801
+ # Status object defines what attributes will be set. Clients must ignore fields
2802
+ # that do not match the defined type of each attribute, and should assume that
2803
+ # any attribute may be empty, invalid, or under defined.
2804
+ class StatusDetails
2805
+ include Google::Apis::Core::Hashable
2806
+
2807
+ # The Causes array includes more details associated with the StatusReason
2808
+ # failure. Not all StatusReasons may provide detailed causes. +optional
2809
+ # Corresponds to the JSON property `causes`
2810
+ # @return [Array<Google::Apis::RunV1::StatusCause>]
2811
+ attr_accessor :causes
2812
+
2813
+ # The group attribute of the resource associated with the status StatusReason. +
2814
+ # optional
2815
+ # Corresponds to the JSON property `group`
2816
+ # @return [String]
2817
+ attr_accessor :group
2818
+
2819
+ # The kind attribute of the resource associated with the status StatusReason. On
2820
+ # some operations may differ from the requested resource Kind. More info: https:/
2821
+ # /git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds +
2822
+ # optional
2823
+ # Corresponds to the JSON property `kind`
2824
+ # @return [String]
2825
+ attr_accessor :kind
2826
+
2827
+ # The name attribute of the resource associated with the status StatusReason (
2828
+ # when there is a single name which can be described). +optional
2829
+ # Corresponds to the JSON property `name`
2830
+ # @return [String]
2831
+ attr_accessor :name
2832
+
2833
+ # If specified, the time in seconds before the operation should be retried. Some
2834
+ # errors may indicate the client must take an alternate action - for those
2835
+ # errors this field may indicate how long to wait before taking the alternate
2836
+ # action. +optional
2837
+ # Corresponds to the JSON property `retryAfterSeconds`
2838
+ # @return [Fixnum]
2839
+ attr_accessor :retry_after_seconds
2840
+
2841
+ # UID of the resource. (when there is a single resource which can be described).
2842
+ # More info: http://kubernetes.io/docs/user-guide/identifiers#uids +optional
2843
+ # Corresponds to the JSON property `uid`
2844
+ # @return [String]
2845
+ attr_accessor :uid
2846
+
2847
+ def initialize(**args)
2848
+ update!(**args)
2849
+ end
2850
+
2851
+ # Update properties of this object
2852
+ def update!(**args)
2853
+ @causes = args[:causes] if args.key?(:causes)
2854
+ @group = args[:group] if args.key?(:group)
2855
+ @kind = args[:kind] if args.key?(:kind)
2856
+ @name = args[:name] if args.key?(:name)
2857
+ @retry_after_seconds = args[:retry_after_seconds] if args.key?(:retry_after_seconds)
2858
+ @uid = args[:uid] if args.key?(:uid)
2859
+ end
2860
+ end
2861
+
2862
+ # Cloud Run fully managed: not supported Cloud Run for Anthos: supported
2863
+ # TCPSocketAction describes an action based on opening a socket
2864
+ class TcpSocketAction
2865
+ include Google::Apis::Core::Hashable
2866
+
2867
+ # (Optional) Cloud Run fully managed: not supported Cloud Run for Anthos:
2868
+ # supported Optional: Host name to connect to, defaults to the pod IP.
2869
+ # Corresponds to the JSON property `host`
2870
+ # @return [String]
2871
+ attr_accessor :host
2872
+
2873
+ # Cloud Run fully managed: not supported Cloud Run for Anthos: supported Number
2874
+ # or name of the port to access on the container. Number must be in the range 1
2875
+ # to 65535. Name must be an IANA_SVC_NAME. This field is currently limited to
2876
+ # integer types only because of proto's inability to properly support the
2877
+ # IntOrString golang type.
2878
+ # Corresponds to the JSON property `port`
2879
+ # @return [Fixnum]
2880
+ attr_accessor :port
2881
+
2882
+ def initialize(**args)
2883
+ update!(**args)
2884
+ end
2885
+
2886
+ # Update properties of this object
2887
+ def update!(**args)
2888
+ @host = args[:host] if args.key?(:host)
2889
+ @port = args[:port] if args.key?(:port)
2890
+ end
2891
+ end
2892
+
2893
+ # Request message for `TestIamPermissions` method.
2894
+ class TestIamPermissionsRequest
2895
+ include Google::Apis::Core::Hashable
2896
+
2897
+ # The set of permissions to check for the `resource`. Permissions with wildcards
2898
+ # (such as '*' or 'storage.*') are not allowed. For more information see [IAM
2899
+ # Overview](https://cloud.google.com/iam/docs/overview#permissions).
2900
+ # Corresponds to the JSON property `permissions`
2901
+ # @return [Array<String>]
2902
+ attr_accessor :permissions
2903
+
2904
+ def initialize(**args)
2905
+ update!(**args)
2906
+ end
2907
+
2908
+ # Update properties of this object
2909
+ def update!(**args)
2910
+ @permissions = args[:permissions] if args.key?(:permissions)
2911
+ end
2912
+ end
2913
+
2914
+ # Response message for `TestIamPermissions` method.
2915
+ class TestIamPermissionsResponse
2916
+ include Google::Apis::Core::Hashable
2917
+
2918
+ # A subset of `TestPermissionsRequest.permissions` that the caller is allowed.
2919
+ # Corresponds to the JSON property `permissions`
2920
+ # @return [Array<String>]
2921
+ attr_accessor :permissions
2922
+
2923
+ def initialize(**args)
2924
+ update!(**args)
2925
+ end
2926
+
2927
+ # Update properties of this object
2928
+ def update!(**args)
2929
+ @permissions = args[:permissions] if args.key?(:permissions)
2930
+ end
2931
+ end
2932
+
2933
+ # TrafficTarget holds a single entry of the routing table for a Route.
2934
+ class TrafficTarget
2935
+ include Google::Apis::Core::Hashable
2936
+
2937
+ # ConfigurationName of a configuration to whose latest revision we will send
2938
+ # this portion of traffic. When the "status.latestReadyRevisionName" of the
2939
+ # referenced configuration changes, we will automatically migrate traffic from
2940
+ # the prior "latest ready" revision to the new one. This field is never set in
2941
+ # Route's status, only its spec. This is mutually exclusive with RevisionName.
2942
+ # Cloud Run currently supports a single ConfigurationName.
2943
+ # Corresponds to the JSON property `configurationName`
2944
+ # @return [String]
2945
+ attr_accessor :configuration_name
2946
+
2947
+ # LatestRevision may be optionally provided to indicate that the latest ready
2948
+ # Revision of the Configuration should be used for this traffic target. When
2949
+ # provided LatestRevision must be true if RevisionName is empty; it must be
2950
+ # false when RevisionName is non-empty. +optional
2951
+ # Corresponds to the JSON property `latestRevision`
2952
+ # @return [Boolean]
2953
+ attr_accessor :latest_revision
2954
+ alias_method :latest_revision?, :latest_revision
2955
+
2956
+ # Percent specifies percent of the traffic to this Revision or Configuration.
2957
+ # This defaults to zero if unspecified. Cloud Run currently requires 100 percent
2958
+ # for a single ConfigurationName TrafficTarget entry.
2959
+ # Corresponds to the JSON property `percent`
2960
+ # @return [Fixnum]
2961
+ attr_accessor :percent
2962
+
2963
+ # RevisionName of a specific revision to which to send this portion of traffic.
2964
+ # This is mutually exclusive with ConfigurationName. Providing RevisionName in
2965
+ # spec is not currently supported by Cloud Run.
2966
+ # Corresponds to the JSON property `revisionName`
2967
+ # @return [String]
2968
+ attr_accessor :revision_name
2969
+
2970
+ # Tag is optionally used to expose a dedicated url for referencing this target
2971
+ # exclusively. +optional
2972
+ # Corresponds to the JSON property `tag`
2973
+ # @return [String]
2974
+ attr_accessor :tag
2975
+
2976
+ # Output only. URL displays the URL for accessing tagged traffic targets. URL is
2977
+ # displayed in status, and is disallowed on spec. URL must contain a scheme (e.g.
2978
+ # http://) and a hostname, but may not contain anything else (e.g. basic auth,
2979
+ # url path, etc. Not currently supported in Cloud Run.
2980
+ # Corresponds to the JSON property `url`
2981
+ # @return [String]
2982
+ attr_accessor :url
2983
+
2984
+ def initialize(**args)
2985
+ update!(**args)
2986
+ end
2987
+
2988
+ # Update properties of this object
2989
+ def update!(**args)
2990
+ @configuration_name = args[:configuration_name] if args.key?(:configuration_name)
2991
+ @latest_revision = args[:latest_revision] if args.key?(:latest_revision)
2992
+ @percent = args[:percent] if args.key?(:percent)
2993
+ @revision_name = args[:revision_name] if args.key?(:revision_name)
2994
+ @tag = args[:tag] if args.key?(:tag)
2995
+ @url = args[:url] if args.key?(:url)
2996
+ end
2997
+ end
2998
+
2999
+ # Cloud Run fully managed: not supported Cloud Run for Anthos: supported Volume
3000
+ # represents a named volume in a container.
3001
+ class Volume
3002
+ include Google::Apis::Core::Hashable
3003
+
3004
+ # Cloud Run fully managed: not supported Cloud Run for Anthos: supported Adapts
3005
+ # a ConfigMap into a volume. The contents of the target ConfigMap's Data field
3006
+ # will be presented in a volume as files using the keys in the Data field as the
3007
+ # file names, unless the items element is populated with specific mappings of
3008
+ # keys to paths.
3009
+ # Corresponds to the JSON property `configMap`
3010
+ # @return [Google::Apis::RunV1::ConfigMapVolumeSource]
3011
+ attr_accessor :config_map
3012
+
3013
+ # Cloud Run fully managed: not supported Cloud Run for Anthos: supported Volume'
3014
+ # s name.
3015
+ # Corresponds to the JSON property `name`
3016
+ # @return [String]
3017
+ attr_accessor :name
3018
+
3019
+ # Cloud Run fully managed: not supported Cloud Run for Anthos: supported The
3020
+ # contents of the target Secret's Data field will be presented in a volume as
3021
+ # files using the keys in the Data field as the file names.
3022
+ # Corresponds to the JSON property `secret`
3023
+ # @return [Google::Apis::RunV1::SecretVolumeSource]
3024
+ attr_accessor :secret
3025
+
3026
+ def initialize(**args)
3027
+ update!(**args)
3028
+ end
3029
+
3030
+ # Update properties of this object
3031
+ def update!(**args)
3032
+ @config_map = args[:config_map] if args.key?(:config_map)
3033
+ @name = args[:name] if args.key?(:name)
3034
+ @secret = args[:secret] if args.key?(:secret)
3035
+ end
3036
+ end
3037
+
3038
+ # Cloud Run fully managed: not supported Cloud Run for Anthos: supported
3039
+ # VolumeMount describes a mounting of a Volume within a container.
3040
+ class VolumeMount
3041
+ include Google::Apis::Core::Hashable
3042
+
3043
+ # Cloud Run fully managed: not supported Cloud Run for Anthos: supported Path
3044
+ # within the container at which the volume should be mounted. Must not contain ':
3045
+ # '.
3046
+ # Corresponds to the JSON property `mountPath`
3047
+ # @return [String]
3048
+ attr_accessor :mount_path
3049
+
3050
+ # Cloud Run fully managed: not supported Cloud Run for Anthos: supported This
3051
+ # must match the Name of a Volume.
3052
+ # Corresponds to the JSON property `name`
3053
+ # @return [String]
3054
+ attr_accessor :name
3055
+
3056
+ # (Optional) Cloud Run fully managed: not supported Cloud Run for Anthos:
3057
+ # supported Only true is accepted. Defaults to true.
3058
+ # Corresponds to the JSON property `readOnly`
3059
+ # @return [Boolean]
3060
+ attr_accessor :read_only
3061
+ alias_method :read_only?, :read_only
3062
+
3063
+ # (Optional) Cloud Run fully managed: not supported Cloud Run for Anthos:
3064
+ # supported Path within the volume from which the container's volume should be
3065
+ # mounted. Defaults to "" (volume's root).
3066
+ # Corresponds to the JSON property `subPath`
3067
+ # @return [String]
3068
+ attr_accessor :sub_path
3069
+
3070
+ def initialize(**args)
3071
+ update!(**args)
3072
+ end
3073
+
3074
+ # Update properties of this object
3075
+ def update!(**args)
3076
+ @mount_path = args[:mount_path] if args.key?(:mount_path)
3077
+ @name = args[:name] if args.key?(:name)
3078
+ @read_only = args[:read_only] if args.key?(:read_only)
3079
+ @sub_path = args[:sub_path] if args.key?(:sub_path)
3080
+ end
3081
+ end
3082
+ end
3083
+ end
3084
+ end