blob: ffc309a4d76b6d111aaf342e246963aa11db6af2 [file] [log] [blame]
Bu Sun Kim65020912020-05-20 12:08:20 -07001<html><body>
2<style>
3
4body, h1, h2, h3, div, span, p, pre, a {
5 margin: 0;
6 padding: 0;
7 border: 0;
8 font-weight: inherit;
9 font-style: inherit;
10 font-size: 100%;
11 font-family: inherit;
12 vertical-align: baseline;
13}
14
15body {
16 font-size: 13px;
17 padding: 1em;
18}
19
20h1 {
21 font-size: 26px;
22 margin-bottom: 1em;
23}
24
25h2 {
26 font-size: 24px;
27 margin-bottom: 1em;
28}
29
30h3 {
31 font-size: 20px;
32 margin-bottom: 1em;
33 margin-top: 1em;
34}
35
36pre, code {
37 line-height: 1.5;
38 font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace;
39}
40
41pre {
42 margin-top: 0.5em;
43}
44
45h1, h2, h3, p {
46 font-family: Arial, sans serif;
47}
48
49h1, h2, h3 {
50 border-bottom: solid #CCC 1px;
51}
52
53.toc_element {
54 margin-top: 0.5em;
55}
56
57.firstline {
58 margin-left: 2 em;
59}
60
61.method {
62 margin-top: 1em;
63 border: solid 1px #CCC;
64 padding: 1em;
65 background: #EEE;
66}
67
68.details {
69 font-weight: bold;
70 font-size: 14px;
71}
72
73</style>
74
75<h1><a href="gameservices_v1beta.html">Game Services API</a> . <a href="gameservices_v1beta.projects.html">projects</a> . <a href="gameservices_v1beta.projects.locations.html">locations</a> . <a href="gameservices_v1beta.projects.locations.gameServerDeployments.html">gameServerDeployments</a></h1>
76<h2>Instance Methods</h2>
77<p class="toc_element">
78 <code><a href="gameservices_v1beta.projects.locations.gameServerDeployments.configs.html">configs()</a></code>
79</p>
80<p class="firstline">Returns the configs Resource.</p>
81
82<p class="toc_element">
83 <code><a href="#create">create(parent, body=None, deploymentId=None, x__xgafv=None)</a></code></p>
84<p class="firstline">Creates a new game server deployment in a given project and location.</p>
85<p class="toc_element">
86 <code><a href="#delete">delete(name, x__xgafv=None)</a></code></p>
87<p class="firstline">Deletes a single game server deployment.</p>
88<p class="toc_element">
89 <code><a href="#fetchDeploymentState">fetchDeploymentState(name, body=None, x__xgafv=None)</a></code></p>
90<p class="firstline">Retrieves information about the current state of the game server</p>
91<p class="toc_element">
92 <code><a href="#get">get(name, x__xgafv=None)</a></code></p>
93<p class="firstline">Gets details of a single game server deployment.</p>
94<p class="toc_element">
95 <code><a href="#getIamPolicy">getIamPolicy(resource, options_requestedPolicyVersion=None, x__xgafv=None)</a></code></p>
96<p class="firstline">Gets the access control policy for a resource.</p>
97<p class="toc_element">
98 <code><a href="#getRollout">getRollout(name, x__xgafv=None)</a></code></p>
99<p class="firstline">Gets details a single game server deployment rollout.</p>
100<p class="toc_element">
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700101 <code><a href="#list">list(parent, pageToken=None, orderBy=None, pageSize=None, filter=None, x__xgafv=None)</a></code></p>
Bu Sun Kim65020912020-05-20 12:08:20 -0700102<p class="firstline">Lists game server deployments in a given project and location.</p>
103<p class="toc_element">
104 <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
105<p class="firstline">Retrieves the next page of results.</p>
106<p class="toc_element">
107 <code><a href="#patch">patch(name, body=None, updateMask=None, x__xgafv=None)</a></code></p>
108<p class="firstline">Patches a game server deployment.</p>
109<p class="toc_element">
110 <code><a href="#previewRollout">previewRollout(name, body=None, previewTime=None, updateMask=None, x__xgafv=None)</a></code></p>
111<p class="firstline">Previews the game server deployment rollout. This API does not mutate the</p>
112<p class="toc_element">
113 <code><a href="#setIamPolicy">setIamPolicy(resource, body=None, x__xgafv=None)</a></code></p>
114<p class="firstline">Sets the access control policy on the specified resource. Replaces any</p>
115<p class="toc_element">
116 <code><a href="#testIamPermissions">testIamPermissions(resource, body=None, x__xgafv=None)</a></code></p>
117<p class="firstline">Returns permissions that a caller has on the specified resource.</p>
118<p class="toc_element">
119 <code><a href="#updateRollout">updateRollout(name, body=None, updateMask=None, x__xgafv=None)</a></code></p>
120<p class="firstline">Patches a single game server deployment rollout.</p>
121<h3>Method Details</h3>
122<div class="method">
123 <code class="details" id="create">create(parent, body=None, deploymentId=None, x__xgafv=None)</code>
124 <pre>Creates a new game server deployment in a given project and location.
125
126Args:
127 parent: string, Required. The parent resource name. Uses the form:
128`projects/{project}/locations/{location}`. (required)
129 body: object, The request body.
130 The object takes the form of:
131
132{ # A game server deployment resource.
133 &quot;description&quot;: &quot;A String&quot;, # Human readable description of the game server delpoyment.
134 &quot;etag&quot;: &quot;A String&quot;, # ETag of the resource.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700135 &quot;createTime&quot;: &quot;A String&quot;, # Output only. The creation time.
Bu Sun Kim65020912020-05-20 12:08:20 -0700136 &quot;labels&quot;: { # The labels associated with this game server deployment. Each label is a
137 # key-value pair.
138 &quot;a_key&quot;: &quot;A String&quot;,
139 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700140 &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The last-modified time.
141 &quot;name&quot;: &quot;A String&quot;, # The resource name of the game server deployment. Uses the form:
142 #
143 # `projects/{project}/locations/{location}/gameServerDeployments/{deployment}`.
144 # For example,
145 #
146 # `projects/my-project/locations/{location}/gameServerDeployments/my-deployment`.
147}
148
149 deploymentId: string, Required. The ID of the game server delpoyment resource to be created.
150 x__xgafv: string, V1 error format.
151 Allowed values
152 1 - v1 error format
153 2 - v2 error format
154
155Returns:
156 An object of the form:
157
158 { # This resource represents a long-running operation that is the result of a
159 # network API call.
160 &quot;done&quot;: True or False, # If the value is `false`, it means the operation is still in progress.
161 # If `true`, the operation is completed, and either `error` or `response` is
162 # available.
163 &quot;response&quot;: { # The normal response of the operation in case of success. If the original
164 # method returns no data on success, such as `Delete`, the response is
165 # `google.protobuf.Empty`. If the original method is standard
166 # `Get`/`Create`/`Update`, the response should be the resource. For other
167 # methods, the response should have the type `XxxResponse`, where `Xxx`
168 # is the original method name. For example, if the original method name
169 # is `TakeSnapshot()`, the inferred response type is
170 # `TakeSnapshotResponse`.
171 &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
172 },
173 &quot;name&quot;: &quot;A String&quot;, # The server-assigned name, which is only unique within the same service that
174 # originally returns it. If you use the default HTTP mapping, the
175 # `name` should be a resource name ending with `operations/{unique_id}`.
176 &quot;error&quot;: { # The `Status` type defines a logical error model that is suitable for # The error result of the operation in case of failure or cancellation.
177 # different programming environments, including REST APIs and RPC APIs. It is
178 # used by [gRPC](https://github.com/grpc). Each `Status` message contains
179 # three pieces of data: error code, error message, and error details.
180 #
181 # You can find out more about this error model and how to work with it in the
182 # [API Design Guide](https://cloud.google.com/apis/design/errors).
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700183 &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
184 &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any
185 # user-facing error message should be localized and sent in the
186 # google.rpc.Status.details field, or localized by the client.
Bu Sun Kim65020912020-05-20 12:08:20 -0700187 &quot;details&quot;: [ # A list of messages that carry the error details. There is a common set of
188 # message types for APIs to use.
189 {
190 &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
191 },
192 ],
Bu Sun Kim65020912020-05-20 12:08:20 -0700193 },
194 &quot;metadata&quot;: { # Service-specific metadata associated with the operation. It typically
195 # contains progress information and common metadata such as create time.
196 # Some services might not provide such metadata. Any method that returns a
197 # long-running operation should document the metadata type, if any.
198 &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
199 },
200 }</pre>
201</div>
202
203<div class="method">
204 <code class="details" id="delete">delete(name, x__xgafv=None)</code>
205 <pre>Deletes a single game server deployment.
206
207Args:
208 name: string, Required. The name of the game server delpoyment to delete. Uses the form:
209
210`projects/{project}/locations/{location}/gameServerDeployments/{deployment}`. (required)
211 x__xgafv: string, V1 error format.
212 Allowed values
213 1 - v1 error format
214 2 - v2 error format
215
216Returns:
217 An object of the form:
218
219 { # This resource represents a long-running operation that is the result of a
220 # network API call.
221 &quot;done&quot;: True or False, # If the value is `false`, it means the operation is still in progress.
222 # If `true`, the operation is completed, and either `error` or `response` is
223 # available.
224 &quot;response&quot;: { # The normal response of the operation in case of success. If the original
225 # method returns no data on success, such as `Delete`, the response is
226 # `google.protobuf.Empty`. If the original method is standard
227 # `Get`/`Create`/`Update`, the response should be the resource. For other
228 # methods, the response should have the type `XxxResponse`, where `Xxx`
229 # is the original method name. For example, if the original method name
230 # is `TakeSnapshot()`, the inferred response type is
231 # `TakeSnapshotResponse`.
232 &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
233 },
234 &quot;name&quot;: &quot;A String&quot;, # The server-assigned name, which is only unique within the same service that
235 # originally returns it. If you use the default HTTP mapping, the
236 # `name` should be a resource name ending with `operations/{unique_id}`.
237 &quot;error&quot;: { # The `Status` type defines a logical error model that is suitable for # The error result of the operation in case of failure or cancellation.
238 # different programming environments, including REST APIs and RPC APIs. It is
239 # used by [gRPC](https://github.com/grpc). Each `Status` message contains
240 # three pieces of data: error code, error message, and error details.
241 #
242 # You can find out more about this error model and how to work with it in the
243 # [API Design Guide](https://cloud.google.com/apis/design/errors).
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700244 &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
245 &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any
246 # user-facing error message should be localized and sent in the
247 # google.rpc.Status.details field, or localized by the client.
Bu Sun Kim65020912020-05-20 12:08:20 -0700248 &quot;details&quot;: [ # A list of messages that carry the error details. There is a common set of
249 # message types for APIs to use.
250 {
251 &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
252 },
253 ],
Bu Sun Kim65020912020-05-20 12:08:20 -0700254 },
255 &quot;metadata&quot;: { # Service-specific metadata associated with the operation. It typically
256 # contains progress information and common metadata such as create time.
257 # Some services might not provide such metadata. Any method that returns a
258 # long-running operation should document the metadata type, if any.
259 &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
260 },
261 }</pre>
262</div>
263
264<div class="method">
265 <code class="details" id="fetchDeploymentState">fetchDeploymentState(name, body=None, x__xgafv=None)</code>
266 <pre>Retrieves information about the current state of the game server
267deployment. Gathers all the Agones fleets and Agones autoscalers,
268including fleets running an older version of the game server deployment.
269
270Args:
271 name: string, Required. The name of the game server delpoyment. Uses the form:
272
273`projects/{project}/locations/{location}/gameServerDeployments/{deployment}`. (required)
274 body: object, The request body.
275 The object takes the form of:
276
277{ # Request message for GameServerDeploymentsService.FetchDeploymentState.
278 }
279
280 x__xgafv: string, V1 error format.
281 Allowed values
282 1 - v1 error format
283 2 - v2 error format
284
285Returns:
286 An object of the form:
287
288 { # Response message for GameServerDeploymentsService.FetchDeploymentState.
289 &quot;unavailable&quot;: [ # List of locations that could not be reached.
290 &quot;A String&quot;,
291 ],
292 &quot;clusterState&quot;: [ # The state of the game server deployment in each game server cluster.
293 { # The game server cluster changes made by the game server deployment.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700294 &quot;cluster&quot;: &quot;A String&quot;, # The name of the cluster.
Bu Sun Kim65020912020-05-20 12:08:20 -0700295 &quot;fleetDetails&quot;: [ # The details about the Agones fleets and autoscalers created in the
296 # game server cluster.
297 { # Details of the deployed Agones fleet.
298 &quot;deployedAutoscaler&quot;: { # Details about the Agones autoscaler. # Information about the Agones autoscaler for that fleet.
Bu Sun Kim65020912020-05-20 12:08:20 -0700299 &quot;specSource&quot;: { # Encapsulates Agones fleet spec and Agones autoscaler spec sources. # The source spec that is used to create the autoscaler.
300 # The GameServerConfig resource may no longer exist in the system.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700301 &quot;name&quot;: &quot;A String&quot;, # The name of the Agones leet config or Agones scaling config used to derive
302 # the Agones fleet or Agones autoscaler spec.
Bu Sun Kim65020912020-05-20 12:08:20 -0700303 &quot;gameServerConfigName&quot;: &quot;A String&quot;, # The game server config resource. Uses the form:
304 #
305 # `projects/{project}/locations/{location}/gameServerDeployments/{deployment_id}/configs/{config_id}`.
Bu Sun Kim65020912020-05-20 12:08:20 -0700306 },
307 &quot;fleetAutoscalerSpec&quot;: &quot;A String&quot;, # The autoscaler spec retrieved from Agones.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700308 &quot;autoscaler&quot;: &quot;A String&quot;, # The name of the Agones autoscaler.
Bu Sun Kim65020912020-05-20 12:08:20 -0700309 },
310 &quot;deployedFleet&quot;: { # Agones fleet specification and details. # Information about the Agones fleet.
311 &quot;specSource&quot;: { # Encapsulates Agones fleet spec and Agones autoscaler spec sources. # The source spec that is used to create the Agones fleet.
312 # The GameServerConfig resource may no longer exist in the system.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700313 &quot;name&quot;: &quot;A String&quot;, # The name of the Agones leet config or Agones scaling config used to derive
314 # the Agones fleet or Agones autoscaler spec.
Bu Sun Kim65020912020-05-20 12:08:20 -0700315 &quot;gameServerConfigName&quot;: &quot;A String&quot;, # The game server config resource. Uses the form:
316 #
317 # `projects/{project}/locations/{location}/gameServerDeployments/{deployment_id}/configs/{config_id}`.
Bu Sun Kim65020912020-05-20 12:08:20 -0700318 },
319 &quot;fleetSpec&quot;: &quot;A String&quot;, # The fleet spec retrieved from the Agones fleet.
320 &quot;fleet&quot;: &quot;A String&quot;, # The name of the Agones fleet.
321 &quot;status&quot;: { # DeployedFleetStatus has details about the Agones fleets such as how many # The current status of the Agones fleet.
322 # Includes count of game servers in various states.
323 # are running, how many allocated, and so on.
324 &quot;replicas&quot;: &quot;A String&quot;, # The total number of current GameServer replicas in this fleet.
325 &quot;readyReplicas&quot;: &quot;A String&quot;, # The number of GameServer replicas in the READY state in this fleet.
326 &quot;allocatedReplicas&quot;: &quot;A String&quot;, # The number of GameServer replicas in the ALLOCATED state in this fleet.
327 &quot;reservedReplicas&quot;: &quot;A String&quot;, # The number of GameServer replicas in the RESERVED state in this fleet.
328 # Reserved instances won&#x27;t be deleted on scale down, but won&#x27;t cause
329 # an autoscaler to scale up.
330 },
331 },
332 },
333 ],
Bu Sun Kim65020912020-05-20 12:08:20 -0700334 },
335 ],
336 }</pre>
337</div>
338
339<div class="method">
340 <code class="details" id="get">get(name, x__xgafv=None)</code>
341 <pre>Gets details of a single game server deployment.
342
343Args:
344 name: string, Required. The name of the game server delpoyment to retrieve. Uses the form:
345
346`projects/{project}/locations/{location}/gameServerDeployments/{deployment}`. (required)
347 x__xgafv: string, V1 error format.
348 Allowed values
349 1 - v1 error format
350 2 - v2 error format
351
352Returns:
353 An object of the form:
354
355 { # A game server deployment resource.
356 &quot;description&quot;: &quot;A String&quot;, # Human readable description of the game server delpoyment.
357 &quot;etag&quot;: &quot;A String&quot;, # ETag of the resource.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700358 &quot;createTime&quot;: &quot;A String&quot;, # Output only. The creation time.
Bu Sun Kim65020912020-05-20 12:08:20 -0700359 &quot;labels&quot;: { # The labels associated with this game server deployment. Each label is a
360 # key-value pair.
361 &quot;a_key&quot;: &quot;A String&quot;,
362 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700363 &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The last-modified time.
364 &quot;name&quot;: &quot;A String&quot;, # The resource name of the game server deployment. Uses the form:
365 #
366 # `projects/{project}/locations/{location}/gameServerDeployments/{deployment}`.
367 # For example,
368 #
369 # `projects/my-project/locations/{location}/gameServerDeployments/my-deployment`.
370 }</pre>
371</div>
372
373<div class="method">
374 <code class="details" id="getIamPolicy">getIamPolicy(resource, options_requestedPolicyVersion=None, x__xgafv=None)</code>
375 <pre>Gets the access control policy for a resource.
376Returns an empty policy if the resource exists and does not have a policy
377set.
378
379Args:
380 resource: string, REQUIRED: The resource for which the policy is being requested.
381See the operation documentation for the appropriate value for this field. (required)
382 options_requestedPolicyVersion: integer, Optional. The policy format version to be returned.
383
384Valid values are 0, 1, and 3. Requests specifying an invalid value will be
385rejected.
386
387Requests for policies with any conditional bindings must specify version 3.
388Policies without any conditional bindings may specify any valid value or
389leave the field unset.
390
391To learn which resources support conditions in their IAM policies, see the
392[IAM
393documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
394 x__xgafv: string, V1 error format.
395 Allowed values
396 1 - v1 error format
397 2 - v2 error format
398
399Returns:
400 An object of the form:
401
402 { # An Identity and Access Management (IAM) policy, which specifies access
403 # controls for Google Cloud resources.
404 #
405 #
406 # A `Policy` is a collection of `bindings`. A `binding` binds one or more
407 # `members` to a single `role`. Members can be user accounts, service accounts,
408 # Google groups, and domains (such as G Suite). A `role` is a named list of
409 # permissions; each `role` can be an IAM predefined role or a user-created
410 # custom role.
411 #
412 # For some types of Google Cloud resources, a `binding` can also specify a
413 # `condition`, which is a logical expression that allows access to a resource
414 # only if the expression evaluates to `true`. A condition can add constraints
415 # based on attributes of the request, the resource, or both. To learn which
416 # resources support conditions in their IAM policies, see the
417 # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
418 #
419 # **JSON example:**
420 #
421 # {
422 # &quot;bindings&quot;: [
423 # {
424 # &quot;role&quot;: &quot;roles/resourcemanager.organizationAdmin&quot;,
425 # &quot;members&quot;: [
426 # &quot;user:mike@example.com&quot;,
427 # &quot;group:admins@example.com&quot;,
428 # &quot;domain:google.com&quot;,
429 # &quot;serviceAccount:my-project-id@appspot.gserviceaccount.com&quot;
430 # ]
431 # },
432 # {
433 # &quot;role&quot;: &quot;roles/resourcemanager.organizationViewer&quot;,
434 # &quot;members&quot;: [
435 # &quot;user:eve@example.com&quot;
436 # ],
437 # &quot;condition&quot;: {
438 # &quot;title&quot;: &quot;expirable access&quot;,
439 # &quot;description&quot;: &quot;Does not grant access after Sep 2020&quot;,
440 # &quot;expression&quot;: &quot;request.time &lt; timestamp(&#x27;2020-10-01T00:00:00.000Z&#x27;)&quot;,
441 # }
442 # }
443 # ],
444 # &quot;etag&quot;: &quot;BwWWja0YfJA=&quot;,
445 # &quot;version&quot;: 3
446 # }
447 #
448 # **YAML example:**
449 #
450 # bindings:
451 # - members:
452 # - user:mike@example.com
453 # - group:admins@example.com
454 # - domain:google.com
455 # - serviceAccount:my-project-id@appspot.gserviceaccount.com
456 # role: roles/resourcemanager.organizationAdmin
457 # - members:
458 # - user:eve@example.com
459 # role: roles/resourcemanager.organizationViewer
460 # condition:
461 # title: expirable access
462 # description: Does not grant access after Sep 2020
463 # expression: request.time &lt; timestamp(&#x27;2020-10-01T00:00:00.000Z&#x27;)
464 # - etag: BwWWja0YfJA=
465 # - version: 3
466 #
467 # For a description of IAM and its features, see the
468 # [IAM documentation](https://cloud.google.com/iam/docs/).
Bu Sun Kim65020912020-05-20 12:08:20 -0700469 &quot;iamOwned&quot;: True or False,
470 &quot;rules&quot;: [ # If more than one rule is specified, the rules are applied in the following
471 # manner:
472 # - All matching LOG rules are always applied.
473 # - If any DENY/DENY_WITH_LOG rule matches, permission is denied.
474 # Logging will be applied if one or more matching rule requires logging.
475 # - Otherwise, if any ALLOW/ALLOW_WITH_LOG rule matches, permission is
476 # granted.
477 # Logging will be applied if one or more matching rule requires logging.
478 # - Otherwise, if no rule applies, permission is denied.
479 { # A rule to be applied in a Policy.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700480 &quot;conditions&quot;: [ # Additional restrictions that must be met. All conditions must pass for the
481 # rule to match.
482 { # A condition to be met.
483 &quot;svc&quot;: &quot;A String&quot;, # Trusted attributes discharged by the service.
484 &quot;iam&quot;: &quot;A String&quot;, # Trusted attributes supplied by the IAM system.
485 &quot;values&quot;: [ # The objects of the condition.
486 &quot;A String&quot;,
487 ],
488 &quot;sys&quot;: &quot;A String&quot;, # Trusted attributes supplied by any service that owns resources and uses
489 # the IAM system for access control.
490 &quot;op&quot;: &quot;A String&quot;, # An operator to apply the subject with.
491 },
492 ],
Bu Sun Kim65020912020-05-20 12:08:20 -0700493 &quot;logConfig&quot;: [ # The config returned to callers of tech.iam.IAM.CheckPolicy for any entries
494 # that match the LOG action.
495 { # Specifies what kind of log the caller must write
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700496 &quot;dataAccess&quot;: { # Write a Data Access (Gin) log # Data access options.
497 &quot;logMode&quot;: &quot;A String&quot;,
498 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700499 &quot;cloudAudit&quot;: { # Write a Cloud Audit log # Cloud audit options.
500 &quot;logName&quot;: &quot;A String&quot;, # The log_name to populate in the Cloud Audit Record.
501 &quot;authorizationLoggingOptions&quot;: { # Authorization-related information used by Cloud Audit Logging. # Information used by the Cloud Audit Logging pipeline.
502 &quot;permissionType&quot;: &quot;A String&quot;, # The type of the permission that was checked.
503 },
504 },
505 &quot;counter&quot;: { # Increment a streamz counter with the specified metric and field names. # Counter options.
506 #
507 # Metric names should start with a &#x27;/&#x27;, generally be lowercase-only,
508 # and end in &quot;_count&quot;. Field names should not contain an initial slash.
509 # The actual exported metric names will have &quot;/iam/policy&quot; prepended.
510 #
511 # Field names correspond to IAM request parameters and field values are
512 # their respective values.
513 #
514 # Supported field names:
515 # - &quot;authority&quot;, which is &quot;[token]&quot; if IAMContext.token is present,
516 # otherwise the value of IAMContext.authority_selector if present, and
517 # otherwise a representation of IAMContext.principal; or
518 # - &quot;iam_principal&quot;, a representation of IAMContext.principal even if a
519 # token or authority selector is present; or
520 # - &quot;&quot; (empty string), resulting in a counter with no fields.
521 #
522 # Examples:
523 # counter { metric: &quot;/debug_access_count&quot; field: &quot;iam_principal&quot; }
524 # ==&gt; increment counter /iam/policy/debug_access_count
525 # {iam_principal=[value of IAMContext.principal]}
Bu Sun Kim65020912020-05-20 12:08:20 -0700526 &quot;customFields&quot;: [ # Custom fields.
527 { # Custom fields.
528 # These can be used to create a counter with arbitrary field/value
529 # pairs.
530 # See: go/rpcsp-custom-fields.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700531 &quot;name&quot;: &quot;A String&quot;, # Name is the field name.
Bu Sun Kim65020912020-05-20 12:08:20 -0700532 &quot;value&quot;: &quot;A String&quot;, # Value is the field value. It is important that in contrast to the
533 # CounterOptions.field, the value here is a constant that is not
534 # derived from the IAMContext.
Bu Sun Kim65020912020-05-20 12:08:20 -0700535 },
536 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700537 &quot;metric&quot;: &quot;A String&quot;, # The metric to update.
538 &quot;field&quot;: &quot;A String&quot;, # The field value to attribute.
Bu Sun Kim65020912020-05-20 12:08:20 -0700539 },
540 },
541 ],
542 &quot;in&quot;: [ # If one or more &#x27;in&#x27; clauses are specified, the rule matches if
543 # the PRINCIPAL/AUTHORITY_SELECTOR is in at least one of these entries.
544 &quot;A String&quot;,
545 ],
546 &quot;permissions&quot;: [ # A permission is a string of form &#x27;&lt;service&gt;.&lt;resource type&gt;.&lt;verb&gt;&#x27;
547 # (e.g., &#x27;storage.buckets.list&#x27;). A value of &#x27;*&#x27; matches all permissions,
548 # and a verb part of &#x27;*&#x27; (e.g., &#x27;storage.buckets.*&#x27;) matches all verbs.
549 &quot;A String&quot;,
550 ],
551 &quot;action&quot;: &quot;A String&quot;, # Required
552 &quot;notIn&quot;: [ # If one or more &#x27;not_in&#x27; clauses are specified, the rule matches
553 # if the PRINCIPAL/AUTHORITY_SELECTOR is in none of the entries.
554 # The format for in and not_in entries can be found at in the Local IAM
555 # documentation (see go/local-iam#features).
556 &quot;A String&quot;,
557 ],
558 &quot;description&quot;: &quot;A String&quot;, # Human-readable description of the rule.
Bu Sun Kim65020912020-05-20 12:08:20 -0700559 },
560 ],
561 &quot;version&quot;: 42, # Specifies the format of the policy.
562 #
563 # Valid values are `0`, `1`, and `3`. Requests that specify an invalid value
564 # are rejected.
565 #
566 # Any operation that affects conditional role bindings must specify version
567 # `3`. This requirement applies to the following operations:
568 #
569 # * Getting a policy that includes a conditional role binding
570 # * Adding a conditional role binding to a policy
571 # * Changing a conditional role binding in a policy
572 # * Removing any role binding, with or without a condition, from a policy
573 # that includes conditions
574 #
575 # **Important:** If you use IAM Conditions, you must include the `etag` field
576 # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
577 # you to overwrite a version `3` policy with a version `1` policy, and all of
578 # the conditions in the version `3` policy are lost.
579 #
580 # If a policy does not include any conditions, operations on that policy may
581 # specify any valid version or leave the field unset.
582 #
583 # To learn which resources support conditions in their IAM policies, see the
584 # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
585 &quot;auditConfigs&quot;: [ # Specifies cloud audit logging configuration for this policy.
586 { # Specifies the audit configuration for a service.
587 # The configuration determines which permission types are logged, and what
588 # identities, if any, are exempted from logging.
589 # An AuditConfig must have one or more AuditLogConfigs.
590 #
591 # If there are AuditConfigs for both `allServices` and a specific service,
592 # the union of the two AuditConfigs is used for that service: the log_types
593 # specified in each AuditConfig are enabled, and the exempted_members in each
594 # AuditLogConfig are exempted.
595 #
596 # Example Policy with multiple AuditConfigs:
597 #
598 # {
599 # &quot;audit_configs&quot;: [
600 # {
601 # &quot;service&quot;: &quot;allServices&quot;
602 # &quot;audit_log_configs&quot;: [
603 # {
604 # &quot;log_type&quot;: &quot;DATA_READ&quot;,
605 # &quot;exempted_members&quot;: [
606 # &quot;user:jose@example.com&quot;
607 # ]
608 # },
609 # {
610 # &quot;log_type&quot;: &quot;DATA_WRITE&quot;,
611 # },
612 # {
613 # &quot;log_type&quot;: &quot;ADMIN_READ&quot;,
614 # }
615 # ]
616 # },
617 # {
618 # &quot;service&quot;: &quot;sampleservice.googleapis.com&quot;
619 # &quot;audit_log_configs&quot;: [
620 # {
621 # &quot;log_type&quot;: &quot;DATA_READ&quot;,
622 # },
623 # {
624 # &quot;log_type&quot;: &quot;DATA_WRITE&quot;,
625 # &quot;exempted_members&quot;: [
626 # &quot;user:aliya@example.com&quot;
627 # ]
628 # }
629 # ]
630 # }
631 # ]
632 # }
633 #
634 # For sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ
635 # logging. It also exempts jose@example.com from DATA_READ logging, and
636 # aliya@example.com from DATA_WRITE logging.
637 &quot;service&quot;: &quot;A String&quot;, # Specifies a service that will be enabled for audit logging.
638 # For example, `storage.googleapis.com`, `cloudsql.googleapis.com`.
639 # `allServices` is a special value that covers all services.
640 &quot;auditLogConfigs&quot;: [ # The configuration for logging of each type of permission.
641 { # Provides the configuration for logging a type of permissions.
642 # Example:
643 #
644 # {
645 # &quot;audit_log_configs&quot;: [
646 # {
647 # &quot;log_type&quot;: &quot;DATA_READ&quot;,
648 # &quot;exempted_members&quot;: [
649 # &quot;user:jose@example.com&quot;
650 # ]
651 # },
652 # {
653 # &quot;log_type&quot;: &quot;DATA_WRITE&quot;,
654 # }
655 # ]
656 # }
657 #
658 # This enables &#x27;DATA_READ&#x27; and &#x27;DATA_WRITE&#x27; logging, while exempting
659 # jose@example.com from DATA_READ logging.
660 &quot;exemptedMembers&quot;: [ # Specifies the identities that do not cause logging for this type of
661 # permission.
662 # Follows the same format of Binding.members.
663 &quot;A String&quot;,
664 ],
665 &quot;logType&quot;: &quot;A String&quot;, # The log type that this config enables.
666 &quot;ignoreChildExemptions&quot;: True or False,
667 },
668 ],
669 &quot;exemptedMembers&quot;: [
670 &quot;A String&quot;,
671 ],
672 },
673 ],
674 &quot;bindings&quot;: [ # Associates a list of `members` to a `role`. Optionally, may specify a
675 # `condition` that determines how and when the `bindings` are applied. Each
676 # of the `bindings` must contain at least one member.
677 { # Associates `members` with a `role`.
678 &quot;condition&quot;: { # Represents a textual expression in the Common Expression Language (CEL) # The condition that is associated with this binding.
679 #
680 # If the condition evaluates to `true`, then this binding applies to the
681 # current request.
682 #
683 # If the condition evaluates to `false`, then this binding does not apply to
684 # the current request. However, a different role binding might grant the same
685 # role to one or more of the members in this binding.
686 #
687 # To learn which resources support conditions in their IAM policies, see the
688 # [IAM
689 # documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
690 # syntax. CEL is a C-like expression language. The syntax and semantics of CEL
691 # are documented at https://github.com/google/cel-spec.
692 #
693 # Example (Comparison):
694 #
695 # title: &quot;Summary size limit&quot;
696 # description: &quot;Determines if a summary is less than 100 chars&quot;
697 # expression: &quot;document.summary.size() &lt; 100&quot;
698 #
699 # Example (Equality):
700 #
701 # title: &quot;Requestor is owner&quot;
702 # description: &quot;Determines if requestor is the document owner&quot;
703 # expression: &quot;document.owner == request.auth.claims.email&quot;
704 #
705 # Example (Logic):
706 #
707 # title: &quot;Public documents&quot;
708 # description: &quot;Determine whether the document should be publicly visible&quot;
709 # expression: &quot;document.type != &#x27;private&#x27; &amp;&amp; document.type != &#x27;internal&#x27;&quot;
710 #
711 # Example (Data Manipulation):
712 #
713 # title: &quot;Notification string&quot;
714 # description: &quot;Create a notification string with a timestamp.&quot;
715 # expression: &quot;&#x27;New message received at &#x27; + string(document.create_time)&quot;
716 #
717 # The exact variables and functions that may be referenced within an expression
718 # are determined by the service that evaluates it. See the service
719 # documentation for additional information.
720 &quot;title&quot;: &quot;A String&quot;, # Optional. Title for the expression, i.e. a short string describing
721 # its purpose. This can be used e.g. in UIs which allow to enter the
722 # expression.
723 &quot;location&quot;: &quot;A String&quot;, # Optional. String indicating the location of the expression for error
724 # reporting, e.g. a file name and a position in the file.
725 &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the expression. This is a longer text which
726 # describes the expression, e.g. when hovered over it in a UI.
727 &quot;expression&quot;: &quot;A String&quot;, # Textual representation of an expression in Common Expression Language
728 # syntax.
729 },
730 &quot;members&quot;: [ # Specifies the identities requesting access for a Cloud Platform resource.
731 # `members` can have the following values:
732 #
733 # * `allUsers`: A special identifier that represents anyone who is
734 # on the internet; with or without a Google account.
735 #
736 # * `allAuthenticatedUsers`: A special identifier that represents anyone
737 # who is authenticated with a Google account or a service account.
738 #
739 # * `user:{emailid}`: An email address that represents a specific Google
740 # account. For example, `alice@example.com` .
741 #
742 #
743 # * `serviceAccount:{emailid}`: An email address that represents a service
744 # account. For example, `my-other-app@appspot.gserviceaccount.com`.
745 #
746 # * `group:{emailid}`: An email address that represents a Google group.
747 # For example, `admins@example.com`.
748 #
749 # * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique
750 # identifier) representing a user that has been recently deleted. For
751 # example, `alice@example.com?uid=123456789012345678901`. If the user is
752 # recovered, this value reverts to `user:{emailid}` and the recovered user
753 # retains the role in the binding.
754 #
755 # * `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus
756 # unique identifier) representing a service account that has been recently
757 # deleted. For example,
758 # `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`.
759 # If the service account is undeleted, this value reverts to
760 # `serviceAccount:{emailid}` and the undeleted service account retains the
761 # role in the binding.
762 #
763 # * `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique
764 # identifier) representing a Google group that has been recently
765 # deleted. For example, `admins@example.com?uid=123456789012345678901`. If
766 # the group is recovered, this value reverts to `group:{emailid}` and the
767 # recovered group retains the role in the binding.
768 #
769 #
770 # * `domain:{domain}`: The G Suite domain (primary) that represents all the
771 # users of that domain. For example, `google.com` or `example.com`.
772 #
773 &quot;A String&quot;,
774 ],
775 &quot;role&quot;: &quot;A String&quot;, # Role that is assigned to `members`.
776 # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
777 },
778 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700779 &quot;etag&quot;: &quot;A String&quot;, # `etag` is used for optimistic concurrency control as a way to help
780 # prevent simultaneous updates of a policy from overwriting each other.
781 # It is strongly suggested that systems make use of the `etag` in the
782 # read-modify-write cycle to perform policy updates in order to avoid race
783 # conditions: An `etag` is returned in the response to `getIamPolicy`, and
784 # systems are expected to put that etag in the request to `setIamPolicy` to
785 # ensure that their change will be applied to the same version of the policy.
786 #
787 # **Important:** If you use IAM Conditions, you must include the `etag` field
788 # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
789 # you to overwrite a version `3` policy with a version `1` policy, and all of
790 # the conditions in the version `3` policy are lost.
Bu Sun Kim65020912020-05-20 12:08:20 -0700791 }</pre>
792</div>
793
794<div class="method">
795 <code class="details" id="getRollout">getRollout(name, x__xgafv=None)</code>
796 <pre>Gets details a single game server deployment rollout.
797
798Args:
799 name: string, Required. The name of the game server delpoyment to retrieve. Uses the form:
800
801`projects/{project}/locations/{location}/gameServerDeployments/{deployment}/rollout`. (required)
802 x__xgafv: string, V1 error format.
803 Allowed values
804 1 - v1 error format
805 2 - v2 error format
806
807Returns:
808 An object of the form:
809
810 { # The game server deployment rollout which represents the desired rollout
811 # state.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700812 &quot;defaultGameServerConfig&quot;: &quot;A String&quot;, # The default game server config is applied to all realms unless overridden
813 # in the rollout. For example,
814 #
815 # `projects/my-project/locations/global/gameServerDeployments/my-game/configs/my-config`.
Bu Sun Kim65020912020-05-20 12:08:20 -0700816 &quot;etag&quot;: &quot;A String&quot;, # ETag of the resource.
817 &quot;createTime&quot;: &quot;A String&quot;, # Output only. The creation time.
818 &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The last-modified time.
819 &quot;name&quot;: &quot;A String&quot;, # The resource name of the game server deployment rollout. Uses the form:
820 #
821 # `projects/{project}/locations/{location}/gameServerDeployments/{deployment}/rollout`.
822 # For example,
823 #
824 # `projects/my-project/locations/{location}/gameServerDeployments/my-deployment/rollout`.
825 &quot;gameServerConfigOverrides&quot;: [ # Contains the game server config rollout overrides. Overrides are processed
826 # in the order they are listed. Once a match is found for a realm, the rest
827 # of the list is not processed.
828 { # A game server config override.
829 &quot;realmsSelector&quot;: { # The realm selector, used to match realm resources. # Selector for choosing applicable realms.
830 &quot;realms&quot;: [ # List of realms to match.
831 &quot;A String&quot;,
832 ],
833 },
834 &quot;configVersion&quot;: &quot;A String&quot;, # The game server config for this override.
835 },
836 ],
Bu Sun Kim65020912020-05-20 12:08:20 -0700837 }</pre>
838</div>
839
840<div class="method">
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700841 <code class="details" id="list">list(parent, pageToken=None, orderBy=None, pageSize=None, filter=None, x__xgafv=None)</code>
Bu Sun Kim65020912020-05-20 12:08:20 -0700842 <pre>Lists game server deployments in a given project and location.
843
844Args:
845 parent: string, Required. The parent resource name. Uses the form:
846`projects/{project}/locations/{location}`. (required)
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700847 pageToken: string, Optional. The next_page_token value returned from a previous List request,
848if any.
849 orderBy: string, Optional. Specifies the ordering of results following syntax at
850https://cloud.google.com/apis/design/design_patterns#sorting_order.
Bu Sun Kim65020912020-05-20 12:08:20 -0700851 pageSize: integer, Optional. The maximum number of items to return. If unspecified, the server
852will pick an appropriate default. The server may return fewer items than
853requested. A caller should only rely on response&#x27;s
854next_page_token to
855determine if there are more GameServerDeployments left to be queried.
856 filter: string, Optional. The filter to apply to list results.
Bu Sun Kim65020912020-05-20 12:08:20 -0700857 x__xgafv: string, V1 error format.
858 Allowed values
859 1 - v1 error format
860 2 - v2 error format
861
862Returns:
863 An object of the form:
864
865 { # Response message for GameServerDeploymentsService.ListGameServerDeployments.
866 &quot;nextPageToken&quot;: &quot;A String&quot;, # Token to retrieve the next page of results, or empty if there are no more
867 # results in the list.
868 &quot;gameServerDeployments&quot;: [ # The list of game server deployments.
869 { # A game server deployment resource.
870 &quot;description&quot;: &quot;A String&quot;, # Human readable description of the game server delpoyment.
871 &quot;etag&quot;: &quot;A String&quot;, # ETag of the resource.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700872 &quot;createTime&quot;: &quot;A String&quot;, # Output only. The creation time.
Bu Sun Kim65020912020-05-20 12:08:20 -0700873 &quot;labels&quot;: { # The labels associated with this game server deployment. Each label is a
874 # key-value pair.
875 &quot;a_key&quot;: &quot;A String&quot;,
876 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700877 &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The last-modified time.
878 &quot;name&quot;: &quot;A String&quot;, # The resource name of the game server deployment. Uses the form:
879 #
880 # `projects/{project}/locations/{location}/gameServerDeployments/{deployment}`.
881 # For example,
882 #
883 # `projects/my-project/locations/{location}/gameServerDeployments/my-deployment`.
884 },
885 ],
886 &quot;unreachable&quot;: [ # List of locations that could not be reached.
887 &quot;A String&quot;,
888 ],
889 }</pre>
890</div>
891
892<div class="method">
893 <code class="details" id="list_next">list_next(previous_request, previous_response)</code>
894 <pre>Retrieves the next page of results.
895
896Args:
897 previous_request: The request for the previous page. (required)
898 previous_response: The response from the request for the previous page. (required)
899
900Returns:
901 A request object that you can call &#x27;execute()&#x27; on to request the next
902 page. Returns None if there are no more items in the collection.
903 </pre>
904</div>
905
906<div class="method">
907 <code class="details" id="patch">patch(name, body=None, updateMask=None, x__xgafv=None)</code>
908 <pre>Patches a game server deployment.
909
910Args:
911 name: string, The resource name of the game server deployment. Uses the form:
912
913`projects/{project}/locations/{location}/gameServerDeployments/{deployment}`.
914For example,
915
916`projects/my-project/locations/{location}/gameServerDeployments/my-deployment`. (required)
917 body: object, The request body.
918 The object takes the form of:
919
920{ # A game server deployment resource.
921 &quot;description&quot;: &quot;A String&quot;, # Human readable description of the game server delpoyment.
922 &quot;etag&quot;: &quot;A String&quot;, # ETag of the resource.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700923 &quot;createTime&quot;: &quot;A String&quot;, # Output only. The creation time.
Bu Sun Kim65020912020-05-20 12:08:20 -0700924 &quot;labels&quot;: { # The labels associated with this game server deployment. Each label is a
925 # key-value pair.
926 &quot;a_key&quot;: &quot;A String&quot;,
927 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700928 &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The last-modified time.
929 &quot;name&quot;: &quot;A String&quot;, # The resource name of the game server deployment. Uses the form:
930 #
931 # `projects/{project}/locations/{location}/gameServerDeployments/{deployment}`.
932 # For example,
933 #
934 # `projects/my-project/locations/{location}/gameServerDeployments/my-deployment`.
935}
936
937 updateMask: string, Required. Mask of fields to update. At least one path must be supplied in
938this field. For the `FieldMask` definition, see
939
940https:
941//developers.google.com/protocol-buffers
942// /docs/reference/google.protobuf#fieldmask
943 x__xgafv: string, V1 error format.
944 Allowed values
945 1 - v1 error format
946 2 - v2 error format
947
948Returns:
949 An object of the form:
950
951 { # This resource represents a long-running operation that is the result of a
952 # network API call.
953 &quot;done&quot;: True or False, # If the value is `false`, it means the operation is still in progress.
954 # If `true`, the operation is completed, and either `error` or `response` is
955 # available.
956 &quot;response&quot;: { # The normal response of the operation in case of success. If the original
957 # method returns no data on success, such as `Delete`, the response is
958 # `google.protobuf.Empty`. If the original method is standard
959 # `Get`/`Create`/`Update`, the response should be the resource. For other
960 # methods, the response should have the type `XxxResponse`, where `Xxx`
961 # is the original method name. For example, if the original method name
962 # is `TakeSnapshot()`, the inferred response type is
963 # `TakeSnapshotResponse`.
964 &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
965 },
966 &quot;name&quot;: &quot;A String&quot;, # The server-assigned name, which is only unique within the same service that
967 # originally returns it. If you use the default HTTP mapping, the
968 # `name` should be a resource name ending with `operations/{unique_id}`.
969 &quot;error&quot;: { # The `Status` type defines a logical error model that is suitable for # The error result of the operation in case of failure or cancellation.
970 # different programming environments, including REST APIs and RPC APIs. It is
971 # used by [gRPC](https://github.com/grpc). Each `Status` message contains
972 # three pieces of data: error code, error message, and error details.
973 #
974 # You can find out more about this error model and how to work with it in the
975 # [API Design Guide](https://cloud.google.com/apis/design/errors).
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700976 &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
977 &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any
978 # user-facing error message should be localized and sent in the
979 # google.rpc.Status.details field, or localized by the client.
Bu Sun Kim65020912020-05-20 12:08:20 -0700980 &quot;details&quot;: [ # A list of messages that carry the error details. There is a common set of
981 # message types for APIs to use.
982 {
983 &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
984 },
985 ],
Bu Sun Kim65020912020-05-20 12:08:20 -0700986 },
987 &quot;metadata&quot;: { # Service-specific metadata associated with the operation. It typically
988 # contains progress information and common metadata such as create time.
989 # Some services might not provide such metadata. Any method that returns a
990 # long-running operation should document the metadata type, if any.
991 &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
992 },
993 }</pre>
994</div>
995
996<div class="method">
997 <code class="details" id="previewRollout">previewRollout(name, body=None, previewTime=None, updateMask=None, x__xgafv=None)</code>
998 <pre>Previews the game server deployment rollout. This API does not mutate the
999rollout resource.
1000
1001Args:
1002 name: string, The resource name of the game server deployment rollout. Uses the form:
1003
1004`projects/{project}/locations/{location}/gameServerDeployments/{deployment}/rollout`.
1005For example,
1006
1007`projects/my-project/locations/{location}/gameServerDeployments/my-deployment/rollout`. (required)
1008 body: object, The request body.
1009 The object takes the form of:
1010
1011{ # The game server deployment rollout which represents the desired rollout
1012 # state.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001013 &quot;defaultGameServerConfig&quot;: &quot;A String&quot;, # The default game server config is applied to all realms unless overridden
1014 # in the rollout. For example,
1015 #
1016 # `projects/my-project/locations/global/gameServerDeployments/my-game/configs/my-config`.
Bu Sun Kim65020912020-05-20 12:08:20 -07001017 &quot;etag&quot;: &quot;A String&quot;, # ETag of the resource.
1018 &quot;createTime&quot;: &quot;A String&quot;, # Output only. The creation time.
1019 &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The last-modified time.
1020 &quot;name&quot;: &quot;A String&quot;, # The resource name of the game server deployment rollout. Uses the form:
1021 #
1022 # `projects/{project}/locations/{location}/gameServerDeployments/{deployment}/rollout`.
1023 # For example,
1024 #
1025 # `projects/my-project/locations/{location}/gameServerDeployments/my-deployment/rollout`.
1026 &quot;gameServerConfigOverrides&quot;: [ # Contains the game server config rollout overrides. Overrides are processed
1027 # in the order they are listed. Once a match is found for a realm, the rest
1028 # of the list is not processed.
1029 { # A game server config override.
1030 &quot;realmsSelector&quot;: { # The realm selector, used to match realm resources. # Selector for choosing applicable realms.
1031 &quot;realms&quot;: [ # List of realms to match.
1032 &quot;A String&quot;,
1033 ],
1034 },
1035 &quot;configVersion&quot;: &quot;A String&quot;, # The game server config for this override.
1036 },
1037 ],
Bu Sun Kim65020912020-05-20 12:08:20 -07001038 }
1039
1040 previewTime: string, Optional. The target timestamp to compute the preview. Defaults to the immediately
1041after the proposed rollout completes.
1042 updateMask: string, Optional. Mask of fields to update. At least one path must be supplied in
1043this field. For the `FieldMask` definition, see
1044
1045https:
1046//developers.google.com/protocol-buffers
1047// /docs/reference/google.protobuf#fieldmask
1048 x__xgafv: string, V1 error format.
1049 Allowed values
1050 1 - v1 error format
1051 2 - v2 error format
1052
1053Returns:
1054 An object of the form:
1055
1056 { # Response message for PreviewGameServerDeploymentRollout.
1057 # This has details about the Agones fleet and autoscaler to be actuated.
Bu Sun Kim65020912020-05-20 12:08:20 -07001058 &quot;unavailable&quot;: [ # Locations that could not be reached on this request.
1059 &quot;A String&quot;,
1060 ],
1061 &quot;targetState&quot;: { # Encapsulates the Target state. # The target state.
1062 &quot;details&quot;: [ # Details about Agones fleets.
1063 { # Details about the Agones resources.
Bu Sun Kim65020912020-05-20 12:08:20 -07001064 &quot;gameServerDeploymentName&quot;: &quot;A String&quot;, # The game server deployment name. Uses the form:
1065 #
1066 # `projects/{project}/locations/{location}/gameServerDeployments/{deployment_id}`.
1067 &quot;fleetDetails&quot;: [ # Agones fleet details for game server clusters and game server deployments.
1068 { # Details of the target Agones fleet.
1069 &quot;autoscaler&quot;: { # Target Agones autoscaler policy reference. # Reference to target Agones fleet autoscaling policy.
1070 &quot;name&quot;: &quot;A String&quot;, # The name of the Agones autoscaler.
1071 &quot;specSource&quot;: { # Encapsulates Agones fleet spec and Agones autoscaler spec sources. # Encapsulates the source of the Agones fleet spec.
1072 # Details about the Agones autoscaler spec.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001073 &quot;name&quot;: &quot;A String&quot;, # The name of the Agones leet config or Agones scaling config used to derive
1074 # the Agones fleet or Agones autoscaler spec.
Bu Sun Kim65020912020-05-20 12:08:20 -07001075 &quot;gameServerConfigName&quot;: &quot;A String&quot;, # The game server config resource. Uses the form:
1076 #
1077 # `projects/{project}/locations/{location}/gameServerDeployments/{deployment_id}/configs/{config_id}`.
Bu Sun Kim65020912020-05-20 12:08:20 -07001078 },
1079 },
1080 &quot;fleet&quot;: { # Target Agones fleet specification. # Reference to target Agones fleet.
1081 &quot;name&quot;: &quot;A String&quot;, # The name of the Agones fleet.
1082 &quot;specSource&quot;: { # Encapsulates Agones fleet spec and Agones autoscaler spec sources. # Encapsulates the source of the Agones fleet spec.
1083 # The Agones fleet spec source.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001084 &quot;name&quot;: &quot;A String&quot;, # The name of the Agones leet config or Agones scaling config used to derive
1085 # the Agones fleet or Agones autoscaler spec.
Bu Sun Kim65020912020-05-20 12:08:20 -07001086 &quot;gameServerConfigName&quot;: &quot;A String&quot;, # The game server config resource. Uses the form:
1087 #
1088 # `projects/{project}/locations/{location}/gameServerDeployments/{deployment_id}/configs/{config_id}`.
Bu Sun Kim65020912020-05-20 12:08:20 -07001089 },
1090 },
1091 },
1092 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001093 &quot;gameServerClusterName&quot;: &quot;A String&quot;, # The game server cluster name. Uses the form:
1094 #
1095 # `projects/{project}/locations/{location}/realms/{realm}/gameServerClusters/{cluster}`.
Bu Sun Kim65020912020-05-20 12:08:20 -07001096 },
1097 ],
1098 },
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001099 &quot;etag&quot;: &quot;A String&quot;, # ETag of the game server deployment.
Bu Sun Kim65020912020-05-20 12:08:20 -07001100 }</pre>
1101</div>
1102
1103<div class="method">
1104 <code class="details" id="setIamPolicy">setIamPolicy(resource, body=None, x__xgafv=None)</code>
1105 <pre>Sets the access control policy on the specified resource. Replaces any
1106existing policy.
1107
1108Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors.
1109
1110Args:
1111 resource: string, REQUIRED: The resource for which the policy is being specified.
1112See the operation documentation for the appropriate value for this field. (required)
1113 body: object, The request body.
1114 The object takes the form of:
1115
1116{ # Request message for `SetIamPolicy` method.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001117 &quot;updateMask&quot;: &quot;A String&quot;, # OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only
1118 # the fields in the mask will be modified. If no mask is provided, the
1119 # following default mask is used:
1120 #
1121 # `paths: &quot;bindings, etag&quot;`
Bu Sun Kim65020912020-05-20 12:08:20 -07001122 &quot;policy&quot;: { # An Identity and Access Management (IAM) policy, which specifies access # REQUIRED: The complete policy to be applied to the `resource`. The size of
1123 # the policy is limited to a few 10s of KB. An empty policy is a
1124 # valid policy but certain Cloud Platform services (such as Projects)
1125 # might reject them.
1126 # controls for Google Cloud resources.
1127 #
1128 #
1129 # A `Policy` is a collection of `bindings`. A `binding` binds one or more
1130 # `members` to a single `role`. Members can be user accounts, service accounts,
1131 # Google groups, and domains (such as G Suite). A `role` is a named list of
1132 # permissions; each `role` can be an IAM predefined role or a user-created
1133 # custom role.
1134 #
1135 # For some types of Google Cloud resources, a `binding` can also specify a
1136 # `condition`, which is a logical expression that allows access to a resource
1137 # only if the expression evaluates to `true`. A condition can add constraints
1138 # based on attributes of the request, the resource, or both. To learn which
1139 # resources support conditions in their IAM policies, see the
1140 # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
1141 #
1142 # **JSON example:**
1143 #
1144 # {
1145 # &quot;bindings&quot;: [
1146 # {
1147 # &quot;role&quot;: &quot;roles/resourcemanager.organizationAdmin&quot;,
1148 # &quot;members&quot;: [
1149 # &quot;user:mike@example.com&quot;,
1150 # &quot;group:admins@example.com&quot;,
1151 # &quot;domain:google.com&quot;,
1152 # &quot;serviceAccount:my-project-id@appspot.gserviceaccount.com&quot;
1153 # ]
1154 # },
1155 # {
1156 # &quot;role&quot;: &quot;roles/resourcemanager.organizationViewer&quot;,
1157 # &quot;members&quot;: [
1158 # &quot;user:eve@example.com&quot;
1159 # ],
1160 # &quot;condition&quot;: {
1161 # &quot;title&quot;: &quot;expirable access&quot;,
1162 # &quot;description&quot;: &quot;Does not grant access after Sep 2020&quot;,
1163 # &quot;expression&quot;: &quot;request.time &lt; timestamp(&#x27;2020-10-01T00:00:00.000Z&#x27;)&quot;,
1164 # }
1165 # }
1166 # ],
1167 # &quot;etag&quot;: &quot;BwWWja0YfJA=&quot;,
1168 # &quot;version&quot;: 3
1169 # }
1170 #
1171 # **YAML example:**
1172 #
1173 # bindings:
1174 # - members:
1175 # - user:mike@example.com
1176 # - group:admins@example.com
1177 # - domain:google.com
1178 # - serviceAccount:my-project-id@appspot.gserviceaccount.com
1179 # role: roles/resourcemanager.organizationAdmin
1180 # - members:
1181 # - user:eve@example.com
1182 # role: roles/resourcemanager.organizationViewer
1183 # condition:
1184 # title: expirable access
1185 # description: Does not grant access after Sep 2020
1186 # expression: request.time &lt; timestamp(&#x27;2020-10-01T00:00:00.000Z&#x27;)
1187 # - etag: BwWWja0YfJA=
1188 # - version: 3
1189 #
1190 # For a description of IAM and its features, see the
1191 # [IAM documentation](https://cloud.google.com/iam/docs/).
Bu Sun Kim65020912020-05-20 12:08:20 -07001192 &quot;iamOwned&quot;: True or False,
1193 &quot;rules&quot;: [ # If more than one rule is specified, the rules are applied in the following
1194 # manner:
1195 # - All matching LOG rules are always applied.
1196 # - If any DENY/DENY_WITH_LOG rule matches, permission is denied.
1197 # Logging will be applied if one or more matching rule requires logging.
1198 # - Otherwise, if any ALLOW/ALLOW_WITH_LOG rule matches, permission is
1199 # granted.
1200 # Logging will be applied if one or more matching rule requires logging.
1201 # - Otherwise, if no rule applies, permission is denied.
1202 { # A rule to be applied in a Policy.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001203 &quot;conditions&quot;: [ # Additional restrictions that must be met. All conditions must pass for the
1204 # rule to match.
1205 { # A condition to be met.
1206 &quot;svc&quot;: &quot;A String&quot;, # Trusted attributes discharged by the service.
1207 &quot;iam&quot;: &quot;A String&quot;, # Trusted attributes supplied by the IAM system.
1208 &quot;values&quot;: [ # The objects of the condition.
1209 &quot;A String&quot;,
1210 ],
1211 &quot;sys&quot;: &quot;A String&quot;, # Trusted attributes supplied by any service that owns resources and uses
1212 # the IAM system for access control.
1213 &quot;op&quot;: &quot;A String&quot;, # An operator to apply the subject with.
1214 },
1215 ],
Bu Sun Kim65020912020-05-20 12:08:20 -07001216 &quot;logConfig&quot;: [ # The config returned to callers of tech.iam.IAM.CheckPolicy for any entries
1217 # that match the LOG action.
1218 { # Specifies what kind of log the caller must write
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001219 &quot;dataAccess&quot;: { # Write a Data Access (Gin) log # Data access options.
1220 &quot;logMode&quot;: &quot;A String&quot;,
1221 },
Bu Sun Kim65020912020-05-20 12:08:20 -07001222 &quot;cloudAudit&quot;: { # Write a Cloud Audit log # Cloud audit options.
1223 &quot;logName&quot;: &quot;A String&quot;, # The log_name to populate in the Cloud Audit Record.
1224 &quot;authorizationLoggingOptions&quot;: { # Authorization-related information used by Cloud Audit Logging. # Information used by the Cloud Audit Logging pipeline.
1225 &quot;permissionType&quot;: &quot;A String&quot;, # The type of the permission that was checked.
1226 },
1227 },
1228 &quot;counter&quot;: { # Increment a streamz counter with the specified metric and field names. # Counter options.
1229 #
1230 # Metric names should start with a &#x27;/&#x27;, generally be lowercase-only,
1231 # and end in &quot;_count&quot;. Field names should not contain an initial slash.
1232 # The actual exported metric names will have &quot;/iam/policy&quot; prepended.
1233 #
1234 # Field names correspond to IAM request parameters and field values are
1235 # their respective values.
1236 #
1237 # Supported field names:
1238 # - &quot;authority&quot;, which is &quot;[token]&quot; if IAMContext.token is present,
1239 # otherwise the value of IAMContext.authority_selector if present, and
1240 # otherwise a representation of IAMContext.principal; or
1241 # - &quot;iam_principal&quot;, a representation of IAMContext.principal even if a
1242 # token or authority selector is present; or
1243 # - &quot;&quot; (empty string), resulting in a counter with no fields.
1244 #
1245 # Examples:
1246 # counter { metric: &quot;/debug_access_count&quot; field: &quot;iam_principal&quot; }
1247 # ==&gt; increment counter /iam/policy/debug_access_count
1248 # {iam_principal=[value of IAMContext.principal]}
Bu Sun Kim65020912020-05-20 12:08:20 -07001249 &quot;customFields&quot;: [ # Custom fields.
1250 { # Custom fields.
1251 # These can be used to create a counter with arbitrary field/value
1252 # pairs.
1253 # See: go/rpcsp-custom-fields.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001254 &quot;name&quot;: &quot;A String&quot;, # Name is the field name.
Bu Sun Kim65020912020-05-20 12:08:20 -07001255 &quot;value&quot;: &quot;A String&quot;, # Value is the field value. It is important that in contrast to the
1256 # CounterOptions.field, the value here is a constant that is not
1257 # derived from the IAMContext.
Bu Sun Kim65020912020-05-20 12:08:20 -07001258 },
1259 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001260 &quot;metric&quot;: &quot;A String&quot;, # The metric to update.
1261 &quot;field&quot;: &quot;A String&quot;, # The field value to attribute.
Bu Sun Kim65020912020-05-20 12:08:20 -07001262 },
1263 },
1264 ],
1265 &quot;in&quot;: [ # If one or more &#x27;in&#x27; clauses are specified, the rule matches if
1266 # the PRINCIPAL/AUTHORITY_SELECTOR is in at least one of these entries.
1267 &quot;A String&quot;,
1268 ],
1269 &quot;permissions&quot;: [ # A permission is a string of form &#x27;&lt;service&gt;.&lt;resource type&gt;.&lt;verb&gt;&#x27;
1270 # (e.g., &#x27;storage.buckets.list&#x27;). A value of &#x27;*&#x27; matches all permissions,
1271 # and a verb part of &#x27;*&#x27; (e.g., &#x27;storage.buckets.*&#x27;) matches all verbs.
1272 &quot;A String&quot;,
1273 ],
1274 &quot;action&quot;: &quot;A String&quot;, # Required
1275 &quot;notIn&quot;: [ # If one or more &#x27;not_in&#x27; clauses are specified, the rule matches
1276 # if the PRINCIPAL/AUTHORITY_SELECTOR is in none of the entries.
1277 # The format for in and not_in entries can be found at in the Local IAM
1278 # documentation (see go/local-iam#features).
1279 &quot;A String&quot;,
1280 ],
1281 &quot;description&quot;: &quot;A String&quot;, # Human-readable description of the rule.
Bu Sun Kim65020912020-05-20 12:08:20 -07001282 },
1283 ],
1284 &quot;version&quot;: 42, # Specifies the format of the policy.
1285 #
1286 # Valid values are `0`, `1`, and `3`. Requests that specify an invalid value
1287 # are rejected.
1288 #
1289 # Any operation that affects conditional role bindings must specify version
1290 # `3`. This requirement applies to the following operations:
1291 #
1292 # * Getting a policy that includes a conditional role binding
1293 # * Adding a conditional role binding to a policy
1294 # * Changing a conditional role binding in a policy
1295 # * Removing any role binding, with or without a condition, from a policy
1296 # that includes conditions
1297 #
1298 # **Important:** If you use IAM Conditions, you must include the `etag` field
1299 # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
1300 # you to overwrite a version `3` policy with a version `1` policy, and all of
1301 # the conditions in the version `3` policy are lost.
1302 #
1303 # If a policy does not include any conditions, operations on that policy may
1304 # specify any valid version or leave the field unset.
1305 #
1306 # To learn which resources support conditions in their IAM policies, see the
1307 # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
1308 &quot;auditConfigs&quot;: [ # Specifies cloud audit logging configuration for this policy.
1309 { # Specifies the audit configuration for a service.
1310 # The configuration determines which permission types are logged, and what
1311 # identities, if any, are exempted from logging.
1312 # An AuditConfig must have one or more AuditLogConfigs.
1313 #
1314 # If there are AuditConfigs for both `allServices` and a specific service,
1315 # the union of the two AuditConfigs is used for that service: the log_types
1316 # specified in each AuditConfig are enabled, and the exempted_members in each
1317 # AuditLogConfig are exempted.
1318 #
1319 # Example Policy with multiple AuditConfigs:
1320 #
1321 # {
1322 # &quot;audit_configs&quot;: [
1323 # {
1324 # &quot;service&quot;: &quot;allServices&quot;
1325 # &quot;audit_log_configs&quot;: [
1326 # {
1327 # &quot;log_type&quot;: &quot;DATA_READ&quot;,
1328 # &quot;exempted_members&quot;: [
1329 # &quot;user:jose@example.com&quot;
1330 # ]
1331 # },
1332 # {
1333 # &quot;log_type&quot;: &quot;DATA_WRITE&quot;,
1334 # },
1335 # {
1336 # &quot;log_type&quot;: &quot;ADMIN_READ&quot;,
1337 # }
1338 # ]
1339 # },
1340 # {
1341 # &quot;service&quot;: &quot;sampleservice.googleapis.com&quot;
1342 # &quot;audit_log_configs&quot;: [
1343 # {
1344 # &quot;log_type&quot;: &quot;DATA_READ&quot;,
1345 # },
1346 # {
1347 # &quot;log_type&quot;: &quot;DATA_WRITE&quot;,
1348 # &quot;exempted_members&quot;: [
1349 # &quot;user:aliya@example.com&quot;
1350 # ]
1351 # }
1352 # ]
1353 # }
1354 # ]
1355 # }
1356 #
1357 # For sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ
1358 # logging. It also exempts jose@example.com from DATA_READ logging, and
1359 # aliya@example.com from DATA_WRITE logging.
1360 &quot;service&quot;: &quot;A String&quot;, # Specifies a service that will be enabled for audit logging.
1361 # For example, `storage.googleapis.com`, `cloudsql.googleapis.com`.
1362 # `allServices` is a special value that covers all services.
1363 &quot;auditLogConfigs&quot;: [ # The configuration for logging of each type of permission.
1364 { # Provides the configuration for logging a type of permissions.
1365 # Example:
1366 #
1367 # {
1368 # &quot;audit_log_configs&quot;: [
1369 # {
1370 # &quot;log_type&quot;: &quot;DATA_READ&quot;,
1371 # &quot;exempted_members&quot;: [
1372 # &quot;user:jose@example.com&quot;
1373 # ]
1374 # },
1375 # {
1376 # &quot;log_type&quot;: &quot;DATA_WRITE&quot;,
1377 # }
1378 # ]
1379 # }
1380 #
1381 # This enables &#x27;DATA_READ&#x27; and &#x27;DATA_WRITE&#x27; logging, while exempting
1382 # jose@example.com from DATA_READ logging.
1383 &quot;exemptedMembers&quot;: [ # Specifies the identities that do not cause logging for this type of
1384 # permission.
1385 # Follows the same format of Binding.members.
1386 &quot;A String&quot;,
1387 ],
1388 &quot;logType&quot;: &quot;A String&quot;, # The log type that this config enables.
1389 &quot;ignoreChildExemptions&quot;: True or False,
1390 },
1391 ],
1392 &quot;exemptedMembers&quot;: [
1393 &quot;A String&quot;,
1394 ],
1395 },
1396 ],
1397 &quot;bindings&quot;: [ # Associates a list of `members` to a `role`. Optionally, may specify a
1398 # `condition` that determines how and when the `bindings` are applied. Each
1399 # of the `bindings` must contain at least one member.
1400 { # Associates `members` with a `role`.
1401 &quot;condition&quot;: { # Represents a textual expression in the Common Expression Language (CEL) # The condition that is associated with this binding.
1402 #
1403 # If the condition evaluates to `true`, then this binding applies to the
1404 # current request.
1405 #
1406 # If the condition evaluates to `false`, then this binding does not apply to
1407 # the current request. However, a different role binding might grant the same
1408 # role to one or more of the members in this binding.
1409 #
1410 # To learn which resources support conditions in their IAM policies, see the
1411 # [IAM
1412 # documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
1413 # syntax. CEL is a C-like expression language. The syntax and semantics of CEL
1414 # are documented at https://github.com/google/cel-spec.
1415 #
1416 # Example (Comparison):
1417 #
1418 # title: &quot;Summary size limit&quot;
1419 # description: &quot;Determines if a summary is less than 100 chars&quot;
1420 # expression: &quot;document.summary.size() &lt; 100&quot;
1421 #
1422 # Example (Equality):
1423 #
1424 # title: &quot;Requestor is owner&quot;
1425 # description: &quot;Determines if requestor is the document owner&quot;
1426 # expression: &quot;document.owner == request.auth.claims.email&quot;
1427 #
1428 # Example (Logic):
1429 #
1430 # title: &quot;Public documents&quot;
1431 # description: &quot;Determine whether the document should be publicly visible&quot;
1432 # expression: &quot;document.type != &#x27;private&#x27; &amp;&amp; document.type != &#x27;internal&#x27;&quot;
1433 #
1434 # Example (Data Manipulation):
1435 #
1436 # title: &quot;Notification string&quot;
1437 # description: &quot;Create a notification string with a timestamp.&quot;
1438 # expression: &quot;&#x27;New message received at &#x27; + string(document.create_time)&quot;
1439 #
1440 # The exact variables and functions that may be referenced within an expression
1441 # are determined by the service that evaluates it. See the service
1442 # documentation for additional information.
1443 &quot;title&quot;: &quot;A String&quot;, # Optional. Title for the expression, i.e. a short string describing
1444 # its purpose. This can be used e.g. in UIs which allow to enter the
1445 # expression.
1446 &quot;location&quot;: &quot;A String&quot;, # Optional. String indicating the location of the expression for error
1447 # reporting, e.g. a file name and a position in the file.
1448 &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the expression. This is a longer text which
1449 # describes the expression, e.g. when hovered over it in a UI.
1450 &quot;expression&quot;: &quot;A String&quot;, # Textual representation of an expression in Common Expression Language
1451 # syntax.
1452 },
1453 &quot;members&quot;: [ # Specifies the identities requesting access for a Cloud Platform resource.
1454 # `members` can have the following values:
1455 #
1456 # * `allUsers`: A special identifier that represents anyone who is
1457 # on the internet; with or without a Google account.
1458 #
1459 # * `allAuthenticatedUsers`: A special identifier that represents anyone
1460 # who is authenticated with a Google account or a service account.
1461 #
1462 # * `user:{emailid}`: An email address that represents a specific Google
1463 # account. For example, `alice@example.com` .
1464 #
1465 #
1466 # * `serviceAccount:{emailid}`: An email address that represents a service
1467 # account. For example, `my-other-app@appspot.gserviceaccount.com`.
1468 #
1469 # * `group:{emailid}`: An email address that represents a Google group.
1470 # For example, `admins@example.com`.
1471 #
1472 # * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique
1473 # identifier) representing a user that has been recently deleted. For
1474 # example, `alice@example.com?uid=123456789012345678901`. If the user is
1475 # recovered, this value reverts to `user:{emailid}` and the recovered user
1476 # retains the role in the binding.
1477 #
1478 # * `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus
1479 # unique identifier) representing a service account that has been recently
1480 # deleted. For example,
1481 # `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`.
1482 # If the service account is undeleted, this value reverts to
1483 # `serviceAccount:{emailid}` and the undeleted service account retains the
1484 # role in the binding.
1485 #
1486 # * `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique
1487 # identifier) representing a Google group that has been recently
1488 # deleted. For example, `admins@example.com?uid=123456789012345678901`. If
1489 # the group is recovered, this value reverts to `group:{emailid}` and the
1490 # recovered group retains the role in the binding.
1491 #
1492 #
1493 # * `domain:{domain}`: The G Suite domain (primary) that represents all the
1494 # users of that domain. For example, `google.com` or `example.com`.
1495 #
1496 &quot;A String&quot;,
1497 ],
1498 &quot;role&quot;: &quot;A String&quot;, # Role that is assigned to `members`.
1499 # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
1500 },
1501 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001502 &quot;etag&quot;: &quot;A String&quot;, # `etag` is used for optimistic concurrency control as a way to help
1503 # prevent simultaneous updates of a policy from overwriting each other.
1504 # It is strongly suggested that systems make use of the `etag` in the
1505 # read-modify-write cycle to perform policy updates in order to avoid race
1506 # conditions: An `etag` is returned in the response to `getIamPolicy`, and
1507 # systems are expected to put that etag in the request to `setIamPolicy` to
1508 # ensure that their change will be applied to the same version of the policy.
1509 #
1510 # **Important:** If you use IAM Conditions, you must include the `etag` field
1511 # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
1512 # you to overwrite a version `3` policy with a version `1` policy, and all of
1513 # the conditions in the version `3` policy are lost.
Bu Sun Kim65020912020-05-20 12:08:20 -07001514 },
Bu Sun Kim65020912020-05-20 12:08:20 -07001515 }
1516
1517 x__xgafv: string, V1 error format.
1518 Allowed values
1519 1 - v1 error format
1520 2 - v2 error format
1521
1522Returns:
1523 An object of the form:
1524
1525 { # An Identity and Access Management (IAM) policy, which specifies access
1526 # controls for Google Cloud resources.
1527 #
1528 #
1529 # A `Policy` is a collection of `bindings`. A `binding` binds one or more
1530 # `members` to a single `role`. Members can be user accounts, service accounts,
1531 # Google groups, and domains (such as G Suite). A `role` is a named list of
1532 # permissions; each `role` can be an IAM predefined role or a user-created
1533 # custom role.
1534 #
1535 # For some types of Google Cloud resources, a `binding` can also specify a
1536 # `condition`, which is a logical expression that allows access to a resource
1537 # only if the expression evaluates to `true`. A condition can add constraints
1538 # based on attributes of the request, the resource, or both. To learn which
1539 # resources support conditions in their IAM policies, see the
1540 # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
1541 #
1542 # **JSON example:**
1543 #
1544 # {
1545 # &quot;bindings&quot;: [
1546 # {
1547 # &quot;role&quot;: &quot;roles/resourcemanager.organizationAdmin&quot;,
1548 # &quot;members&quot;: [
1549 # &quot;user:mike@example.com&quot;,
1550 # &quot;group:admins@example.com&quot;,
1551 # &quot;domain:google.com&quot;,
1552 # &quot;serviceAccount:my-project-id@appspot.gserviceaccount.com&quot;
1553 # ]
1554 # },
1555 # {
1556 # &quot;role&quot;: &quot;roles/resourcemanager.organizationViewer&quot;,
1557 # &quot;members&quot;: [
1558 # &quot;user:eve@example.com&quot;
1559 # ],
1560 # &quot;condition&quot;: {
1561 # &quot;title&quot;: &quot;expirable access&quot;,
1562 # &quot;description&quot;: &quot;Does not grant access after Sep 2020&quot;,
1563 # &quot;expression&quot;: &quot;request.time &lt; timestamp(&#x27;2020-10-01T00:00:00.000Z&#x27;)&quot;,
1564 # }
1565 # }
1566 # ],
1567 # &quot;etag&quot;: &quot;BwWWja0YfJA=&quot;,
1568 # &quot;version&quot;: 3
1569 # }
1570 #
1571 # **YAML example:**
1572 #
1573 # bindings:
1574 # - members:
1575 # - user:mike@example.com
1576 # - group:admins@example.com
1577 # - domain:google.com
1578 # - serviceAccount:my-project-id@appspot.gserviceaccount.com
1579 # role: roles/resourcemanager.organizationAdmin
1580 # - members:
1581 # - user:eve@example.com
1582 # role: roles/resourcemanager.organizationViewer
1583 # condition:
1584 # title: expirable access
1585 # description: Does not grant access after Sep 2020
1586 # expression: request.time &lt; timestamp(&#x27;2020-10-01T00:00:00.000Z&#x27;)
1587 # - etag: BwWWja0YfJA=
1588 # - version: 3
1589 #
1590 # For a description of IAM and its features, see the
1591 # [IAM documentation](https://cloud.google.com/iam/docs/).
Bu Sun Kim65020912020-05-20 12:08:20 -07001592 &quot;iamOwned&quot;: True or False,
1593 &quot;rules&quot;: [ # If more than one rule is specified, the rules are applied in the following
1594 # manner:
1595 # - All matching LOG rules are always applied.
1596 # - If any DENY/DENY_WITH_LOG rule matches, permission is denied.
1597 # Logging will be applied if one or more matching rule requires logging.
1598 # - Otherwise, if any ALLOW/ALLOW_WITH_LOG rule matches, permission is
1599 # granted.
1600 # Logging will be applied if one or more matching rule requires logging.
1601 # - Otherwise, if no rule applies, permission is denied.
1602 { # A rule to be applied in a Policy.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001603 &quot;conditions&quot;: [ # Additional restrictions that must be met. All conditions must pass for the
1604 # rule to match.
1605 { # A condition to be met.
1606 &quot;svc&quot;: &quot;A String&quot;, # Trusted attributes discharged by the service.
1607 &quot;iam&quot;: &quot;A String&quot;, # Trusted attributes supplied by the IAM system.
1608 &quot;values&quot;: [ # The objects of the condition.
1609 &quot;A String&quot;,
1610 ],
1611 &quot;sys&quot;: &quot;A String&quot;, # Trusted attributes supplied by any service that owns resources and uses
1612 # the IAM system for access control.
1613 &quot;op&quot;: &quot;A String&quot;, # An operator to apply the subject with.
1614 },
1615 ],
Bu Sun Kim65020912020-05-20 12:08:20 -07001616 &quot;logConfig&quot;: [ # The config returned to callers of tech.iam.IAM.CheckPolicy for any entries
1617 # that match the LOG action.
1618 { # Specifies what kind of log the caller must write
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001619 &quot;dataAccess&quot;: { # Write a Data Access (Gin) log # Data access options.
1620 &quot;logMode&quot;: &quot;A String&quot;,
1621 },
Bu Sun Kim65020912020-05-20 12:08:20 -07001622 &quot;cloudAudit&quot;: { # Write a Cloud Audit log # Cloud audit options.
1623 &quot;logName&quot;: &quot;A String&quot;, # The log_name to populate in the Cloud Audit Record.
1624 &quot;authorizationLoggingOptions&quot;: { # Authorization-related information used by Cloud Audit Logging. # Information used by the Cloud Audit Logging pipeline.
1625 &quot;permissionType&quot;: &quot;A String&quot;, # The type of the permission that was checked.
1626 },
1627 },
1628 &quot;counter&quot;: { # Increment a streamz counter with the specified metric and field names. # Counter options.
1629 #
1630 # Metric names should start with a &#x27;/&#x27;, generally be lowercase-only,
1631 # and end in &quot;_count&quot;. Field names should not contain an initial slash.
1632 # The actual exported metric names will have &quot;/iam/policy&quot; prepended.
1633 #
1634 # Field names correspond to IAM request parameters and field values are
1635 # their respective values.
1636 #
1637 # Supported field names:
1638 # - &quot;authority&quot;, which is &quot;[token]&quot; if IAMContext.token is present,
1639 # otherwise the value of IAMContext.authority_selector if present, and
1640 # otherwise a representation of IAMContext.principal; or
1641 # - &quot;iam_principal&quot;, a representation of IAMContext.principal even if a
1642 # token or authority selector is present; or
1643 # - &quot;&quot; (empty string), resulting in a counter with no fields.
1644 #
1645 # Examples:
1646 # counter { metric: &quot;/debug_access_count&quot; field: &quot;iam_principal&quot; }
1647 # ==&gt; increment counter /iam/policy/debug_access_count
1648 # {iam_principal=[value of IAMContext.principal]}
Bu Sun Kim65020912020-05-20 12:08:20 -07001649 &quot;customFields&quot;: [ # Custom fields.
1650 { # Custom fields.
1651 # These can be used to create a counter with arbitrary field/value
1652 # pairs.
1653 # See: go/rpcsp-custom-fields.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001654 &quot;name&quot;: &quot;A String&quot;, # Name is the field name.
Bu Sun Kim65020912020-05-20 12:08:20 -07001655 &quot;value&quot;: &quot;A String&quot;, # Value is the field value. It is important that in contrast to the
1656 # CounterOptions.field, the value here is a constant that is not
1657 # derived from the IAMContext.
Bu Sun Kim65020912020-05-20 12:08:20 -07001658 },
1659 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001660 &quot;metric&quot;: &quot;A String&quot;, # The metric to update.
1661 &quot;field&quot;: &quot;A String&quot;, # The field value to attribute.
Bu Sun Kim65020912020-05-20 12:08:20 -07001662 },
1663 },
1664 ],
1665 &quot;in&quot;: [ # If one or more &#x27;in&#x27; clauses are specified, the rule matches if
1666 # the PRINCIPAL/AUTHORITY_SELECTOR is in at least one of these entries.
1667 &quot;A String&quot;,
1668 ],
1669 &quot;permissions&quot;: [ # A permission is a string of form &#x27;&lt;service&gt;.&lt;resource type&gt;.&lt;verb&gt;&#x27;
1670 # (e.g., &#x27;storage.buckets.list&#x27;). A value of &#x27;*&#x27; matches all permissions,
1671 # and a verb part of &#x27;*&#x27; (e.g., &#x27;storage.buckets.*&#x27;) matches all verbs.
1672 &quot;A String&quot;,
1673 ],
1674 &quot;action&quot;: &quot;A String&quot;, # Required
1675 &quot;notIn&quot;: [ # If one or more &#x27;not_in&#x27; clauses are specified, the rule matches
1676 # if the PRINCIPAL/AUTHORITY_SELECTOR is in none of the entries.
1677 # The format for in and not_in entries can be found at in the Local IAM
1678 # documentation (see go/local-iam#features).
1679 &quot;A String&quot;,
1680 ],
1681 &quot;description&quot;: &quot;A String&quot;, # Human-readable description of the rule.
Bu Sun Kim65020912020-05-20 12:08:20 -07001682 },
1683 ],
1684 &quot;version&quot;: 42, # Specifies the format of the policy.
1685 #
1686 # Valid values are `0`, `1`, and `3`. Requests that specify an invalid value
1687 # are rejected.
1688 #
1689 # Any operation that affects conditional role bindings must specify version
1690 # `3`. This requirement applies to the following operations:
1691 #
1692 # * Getting a policy that includes a conditional role binding
1693 # * Adding a conditional role binding to a policy
1694 # * Changing a conditional role binding in a policy
1695 # * Removing any role binding, with or without a condition, from a policy
1696 # that includes conditions
1697 #
1698 # **Important:** If you use IAM Conditions, you must include the `etag` field
1699 # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
1700 # you to overwrite a version `3` policy with a version `1` policy, and all of
1701 # the conditions in the version `3` policy are lost.
1702 #
1703 # If a policy does not include any conditions, operations on that policy may
1704 # specify any valid version or leave the field unset.
1705 #
1706 # To learn which resources support conditions in their IAM policies, see the
1707 # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
1708 &quot;auditConfigs&quot;: [ # Specifies cloud audit logging configuration for this policy.
1709 { # Specifies the audit configuration for a service.
1710 # The configuration determines which permission types are logged, and what
1711 # identities, if any, are exempted from logging.
1712 # An AuditConfig must have one or more AuditLogConfigs.
1713 #
1714 # If there are AuditConfigs for both `allServices` and a specific service,
1715 # the union of the two AuditConfigs is used for that service: the log_types
1716 # specified in each AuditConfig are enabled, and the exempted_members in each
1717 # AuditLogConfig are exempted.
1718 #
1719 # Example Policy with multiple AuditConfigs:
1720 #
1721 # {
1722 # &quot;audit_configs&quot;: [
1723 # {
1724 # &quot;service&quot;: &quot;allServices&quot;
1725 # &quot;audit_log_configs&quot;: [
1726 # {
1727 # &quot;log_type&quot;: &quot;DATA_READ&quot;,
1728 # &quot;exempted_members&quot;: [
1729 # &quot;user:jose@example.com&quot;
1730 # ]
1731 # },
1732 # {
1733 # &quot;log_type&quot;: &quot;DATA_WRITE&quot;,
1734 # },
1735 # {
1736 # &quot;log_type&quot;: &quot;ADMIN_READ&quot;,
1737 # }
1738 # ]
1739 # },
1740 # {
1741 # &quot;service&quot;: &quot;sampleservice.googleapis.com&quot;
1742 # &quot;audit_log_configs&quot;: [
1743 # {
1744 # &quot;log_type&quot;: &quot;DATA_READ&quot;,
1745 # },
1746 # {
1747 # &quot;log_type&quot;: &quot;DATA_WRITE&quot;,
1748 # &quot;exempted_members&quot;: [
1749 # &quot;user:aliya@example.com&quot;
1750 # ]
1751 # }
1752 # ]
1753 # }
1754 # ]
1755 # }
1756 #
1757 # For sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ
1758 # logging. It also exempts jose@example.com from DATA_READ logging, and
1759 # aliya@example.com from DATA_WRITE logging.
1760 &quot;service&quot;: &quot;A String&quot;, # Specifies a service that will be enabled for audit logging.
1761 # For example, `storage.googleapis.com`, `cloudsql.googleapis.com`.
1762 # `allServices` is a special value that covers all services.
1763 &quot;auditLogConfigs&quot;: [ # The configuration for logging of each type of permission.
1764 { # Provides the configuration for logging a type of permissions.
1765 # Example:
1766 #
1767 # {
1768 # &quot;audit_log_configs&quot;: [
1769 # {
1770 # &quot;log_type&quot;: &quot;DATA_READ&quot;,
1771 # &quot;exempted_members&quot;: [
1772 # &quot;user:jose@example.com&quot;
1773 # ]
1774 # },
1775 # {
1776 # &quot;log_type&quot;: &quot;DATA_WRITE&quot;,
1777 # }
1778 # ]
1779 # }
1780 #
1781 # This enables &#x27;DATA_READ&#x27; and &#x27;DATA_WRITE&#x27; logging, while exempting
1782 # jose@example.com from DATA_READ logging.
1783 &quot;exemptedMembers&quot;: [ # Specifies the identities that do not cause logging for this type of
1784 # permission.
1785 # Follows the same format of Binding.members.
1786 &quot;A String&quot;,
1787 ],
1788 &quot;logType&quot;: &quot;A String&quot;, # The log type that this config enables.
1789 &quot;ignoreChildExemptions&quot;: True or False,
1790 },
1791 ],
1792 &quot;exemptedMembers&quot;: [
1793 &quot;A String&quot;,
1794 ],
1795 },
1796 ],
1797 &quot;bindings&quot;: [ # Associates a list of `members` to a `role`. Optionally, may specify a
1798 # `condition` that determines how and when the `bindings` are applied. Each
1799 # of the `bindings` must contain at least one member.
1800 { # Associates `members` with a `role`.
1801 &quot;condition&quot;: { # Represents a textual expression in the Common Expression Language (CEL) # The condition that is associated with this binding.
1802 #
1803 # If the condition evaluates to `true`, then this binding applies to the
1804 # current request.
1805 #
1806 # If the condition evaluates to `false`, then this binding does not apply to
1807 # the current request. However, a different role binding might grant the same
1808 # role to one or more of the members in this binding.
1809 #
1810 # To learn which resources support conditions in their IAM policies, see the
1811 # [IAM
1812 # documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
1813 # syntax. CEL is a C-like expression language. The syntax and semantics of CEL
1814 # are documented at https://github.com/google/cel-spec.
1815 #
1816 # Example (Comparison):
1817 #
1818 # title: &quot;Summary size limit&quot;
1819 # description: &quot;Determines if a summary is less than 100 chars&quot;
1820 # expression: &quot;document.summary.size() &lt; 100&quot;
1821 #
1822 # Example (Equality):
1823 #
1824 # title: &quot;Requestor is owner&quot;
1825 # description: &quot;Determines if requestor is the document owner&quot;
1826 # expression: &quot;document.owner == request.auth.claims.email&quot;
1827 #
1828 # Example (Logic):
1829 #
1830 # title: &quot;Public documents&quot;
1831 # description: &quot;Determine whether the document should be publicly visible&quot;
1832 # expression: &quot;document.type != &#x27;private&#x27; &amp;&amp; document.type != &#x27;internal&#x27;&quot;
1833 #
1834 # Example (Data Manipulation):
1835 #
1836 # title: &quot;Notification string&quot;
1837 # description: &quot;Create a notification string with a timestamp.&quot;
1838 # expression: &quot;&#x27;New message received at &#x27; + string(document.create_time)&quot;
1839 #
1840 # The exact variables and functions that may be referenced within an expression
1841 # are determined by the service that evaluates it. See the service
1842 # documentation for additional information.
1843 &quot;title&quot;: &quot;A String&quot;, # Optional. Title for the expression, i.e. a short string describing
1844 # its purpose. This can be used e.g. in UIs which allow to enter the
1845 # expression.
1846 &quot;location&quot;: &quot;A String&quot;, # Optional. String indicating the location of the expression for error
1847 # reporting, e.g. a file name and a position in the file.
1848 &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the expression. This is a longer text which
1849 # describes the expression, e.g. when hovered over it in a UI.
1850 &quot;expression&quot;: &quot;A String&quot;, # Textual representation of an expression in Common Expression Language
1851 # syntax.
1852 },
1853 &quot;members&quot;: [ # Specifies the identities requesting access for a Cloud Platform resource.
1854 # `members` can have the following values:
1855 #
1856 # * `allUsers`: A special identifier that represents anyone who is
1857 # on the internet; with or without a Google account.
1858 #
1859 # * `allAuthenticatedUsers`: A special identifier that represents anyone
1860 # who is authenticated with a Google account or a service account.
1861 #
1862 # * `user:{emailid}`: An email address that represents a specific Google
1863 # account. For example, `alice@example.com` .
1864 #
1865 #
1866 # * `serviceAccount:{emailid}`: An email address that represents a service
1867 # account. For example, `my-other-app@appspot.gserviceaccount.com`.
1868 #
1869 # * `group:{emailid}`: An email address that represents a Google group.
1870 # For example, `admins@example.com`.
1871 #
1872 # * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique
1873 # identifier) representing a user that has been recently deleted. For
1874 # example, `alice@example.com?uid=123456789012345678901`. If the user is
1875 # recovered, this value reverts to `user:{emailid}` and the recovered user
1876 # retains the role in the binding.
1877 #
1878 # * `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus
1879 # unique identifier) representing a service account that has been recently
1880 # deleted. For example,
1881 # `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`.
1882 # If the service account is undeleted, this value reverts to
1883 # `serviceAccount:{emailid}` and the undeleted service account retains the
1884 # role in the binding.
1885 #
1886 # * `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique
1887 # identifier) representing a Google group that has been recently
1888 # deleted. For example, `admins@example.com?uid=123456789012345678901`. If
1889 # the group is recovered, this value reverts to `group:{emailid}` and the
1890 # recovered group retains the role in the binding.
1891 #
1892 #
1893 # * `domain:{domain}`: The G Suite domain (primary) that represents all the
1894 # users of that domain. For example, `google.com` or `example.com`.
1895 #
1896 &quot;A String&quot;,
1897 ],
1898 &quot;role&quot;: &quot;A String&quot;, # Role that is assigned to `members`.
1899 # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
1900 },
1901 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001902 &quot;etag&quot;: &quot;A String&quot;, # `etag` is used for optimistic concurrency control as a way to help
1903 # prevent simultaneous updates of a policy from overwriting each other.
1904 # It is strongly suggested that systems make use of the `etag` in the
1905 # read-modify-write cycle to perform policy updates in order to avoid race
1906 # conditions: An `etag` is returned in the response to `getIamPolicy`, and
1907 # systems are expected to put that etag in the request to `setIamPolicy` to
1908 # ensure that their change will be applied to the same version of the policy.
1909 #
1910 # **Important:** If you use IAM Conditions, you must include the `etag` field
1911 # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
1912 # you to overwrite a version `3` policy with a version `1` policy, and all of
1913 # the conditions in the version `3` policy are lost.
Bu Sun Kim65020912020-05-20 12:08:20 -07001914 }</pre>
1915</div>
1916
1917<div class="method">
1918 <code class="details" id="testIamPermissions">testIamPermissions(resource, body=None, x__xgafv=None)</code>
1919 <pre>Returns permissions that a caller has on the specified resource.
1920If the resource does not exist, this will return an empty set of
1921permissions, not a `NOT_FOUND` error.
1922
1923Note: This operation is designed to be used for building permission-aware
1924UIs and command-line tools, not for authorization checking. This operation
1925may &quot;fail open&quot; without warning.
1926
1927Args:
1928 resource: string, REQUIRED: The resource for which the policy detail is being requested.
1929See the operation documentation for the appropriate value for this field. (required)
1930 body: object, The request body.
1931 The object takes the form of:
1932
1933{ # Request message for `TestIamPermissions` method.
1934 &quot;permissions&quot;: [ # The set of permissions to check for the `resource`. Permissions with
1935 # wildcards (such as &#x27;*&#x27; or &#x27;storage.*&#x27;) are not allowed. For more
1936 # information see
1937 # [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).
1938 &quot;A String&quot;,
1939 ],
1940 }
1941
1942 x__xgafv: string, V1 error format.
1943 Allowed values
1944 1 - v1 error format
1945 2 - v2 error format
1946
1947Returns:
1948 An object of the form:
1949
1950 { # Response message for `TestIamPermissions` method.
1951 &quot;permissions&quot;: [ # A subset of `TestPermissionsRequest.permissions` that the caller is
1952 # allowed.
1953 &quot;A String&quot;,
1954 ],
1955 }</pre>
1956</div>
1957
1958<div class="method">
1959 <code class="details" id="updateRollout">updateRollout(name, body=None, updateMask=None, x__xgafv=None)</code>
1960 <pre>Patches a single game server deployment rollout.
1961The method will not return an error if the update does not affect any
1962existing realms. For example - if the default_game_server_config is changed
1963but all existing realms use the override, that is valid. Similarly, if a
1964non existing realm is explicitly called out in game_server_config_overrides
1965field, that will also not result in an error.
1966
1967Args:
1968 name: string, The resource name of the game server deployment rollout. Uses the form:
1969
1970`projects/{project}/locations/{location}/gameServerDeployments/{deployment}/rollout`.
1971For example,
1972
1973`projects/my-project/locations/{location}/gameServerDeployments/my-deployment/rollout`. (required)
1974 body: object, The request body.
1975 The object takes the form of:
1976
1977{ # The game server deployment rollout which represents the desired rollout
1978 # state.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001979 &quot;defaultGameServerConfig&quot;: &quot;A String&quot;, # The default game server config is applied to all realms unless overridden
1980 # in the rollout. For example,
1981 #
1982 # `projects/my-project/locations/global/gameServerDeployments/my-game/configs/my-config`.
Bu Sun Kim65020912020-05-20 12:08:20 -07001983 &quot;etag&quot;: &quot;A String&quot;, # ETag of the resource.
1984 &quot;createTime&quot;: &quot;A String&quot;, # Output only. The creation time.
1985 &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The last-modified time.
1986 &quot;name&quot;: &quot;A String&quot;, # The resource name of the game server deployment rollout. Uses the form:
1987 #
1988 # `projects/{project}/locations/{location}/gameServerDeployments/{deployment}/rollout`.
1989 # For example,
1990 #
1991 # `projects/my-project/locations/{location}/gameServerDeployments/my-deployment/rollout`.
1992 &quot;gameServerConfigOverrides&quot;: [ # Contains the game server config rollout overrides. Overrides are processed
1993 # in the order they are listed. Once a match is found for a realm, the rest
1994 # of the list is not processed.
1995 { # A game server config override.
1996 &quot;realmsSelector&quot;: { # The realm selector, used to match realm resources. # Selector for choosing applicable realms.
1997 &quot;realms&quot;: [ # List of realms to match.
1998 &quot;A String&quot;,
1999 ],
2000 },
2001 &quot;configVersion&quot;: &quot;A String&quot;, # The game server config for this override.
2002 },
2003 ],
Bu Sun Kim65020912020-05-20 12:08:20 -07002004 }
2005
2006 updateMask: string, Required. Mask of fields to update. At least one path must be supplied in
2007this field. For the `FieldMask` definition, see
2008
2009https:
2010//developers.google.com/protocol-buffers
2011// /docs/reference/google.protobuf#fieldmask
2012 x__xgafv: string, V1 error format.
2013 Allowed values
2014 1 - v1 error format
2015 2 - v2 error format
2016
2017Returns:
2018 An object of the form:
2019
2020 { # This resource represents a long-running operation that is the result of a
2021 # network API call.
2022 &quot;done&quot;: True or False, # If the value is `false`, it means the operation is still in progress.
2023 # If `true`, the operation is completed, and either `error` or `response` is
2024 # available.
2025 &quot;response&quot;: { # The normal response of the operation in case of success. If the original
2026 # method returns no data on success, such as `Delete`, the response is
2027 # `google.protobuf.Empty`. If the original method is standard
2028 # `Get`/`Create`/`Update`, the response should be the resource. For other
2029 # methods, the response should have the type `XxxResponse`, where `Xxx`
2030 # is the original method name. For example, if the original method name
2031 # is `TakeSnapshot()`, the inferred response type is
2032 # `TakeSnapshotResponse`.
2033 &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
2034 },
2035 &quot;name&quot;: &quot;A String&quot;, # The server-assigned name, which is only unique within the same service that
2036 # originally returns it. If you use the default HTTP mapping, the
2037 # `name` should be a resource name ending with `operations/{unique_id}`.
2038 &quot;error&quot;: { # The `Status` type defines a logical error model that is suitable for # The error result of the operation in case of failure or cancellation.
2039 # different programming environments, including REST APIs and RPC APIs. It is
2040 # used by [gRPC](https://github.com/grpc). Each `Status` message contains
2041 # three pieces of data: error code, error message, and error details.
2042 #
2043 # You can find out more about this error model and how to work with it in the
2044 # [API Design Guide](https://cloud.google.com/apis/design/errors).
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002045 &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
2046 &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any
2047 # user-facing error message should be localized and sent in the
2048 # google.rpc.Status.details field, or localized by the client.
Bu Sun Kim65020912020-05-20 12:08:20 -07002049 &quot;details&quot;: [ # A list of messages that carry the error details. There is a common set of
2050 # message types for APIs to use.
2051 {
2052 &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
2053 },
2054 ],
Bu Sun Kim65020912020-05-20 12:08:20 -07002055 },
2056 &quot;metadata&quot;: { # Service-specific metadata associated with the operation. It typically
2057 # contains progress information and common metadata such as create time.
2058 # Some services might not provide such metadata. Any method that returns a
2059 # long-running operation should document the metadata type, if any.
2060 &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
2061 },
2062 }</pre>
2063</div>
2064
2065</body></html>