google-apis-gkehub_v1alpha 0.10.0 → 0.14.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +17 -0
- data/OVERVIEW.md +2 -2
- data/lib/google/apis/gkehub_v1alpha/classes.rb +686 -57
- data/lib/google/apis/gkehub_v1alpha/gem_version.rb +2 -2
- data/lib/google/apis/gkehub_v1alpha/representations.rb +275 -0
- data/lib/google/apis/gkehub_v1alpha/service.rb +344 -0
- metadata +5 -5
@@ -22,6 +22,38 @@ module Google
|
|
22
22
|
module Apis
|
23
23
|
module GkehubV1alpha
|
24
24
|
|
25
|
+
# Spec for App Dev Experience Feature.
|
26
|
+
class AppDevExperienceFeatureSpec
|
27
|
+
include Google::Apis::Core::Hashable
|
28
|
+
|
29
|
+
def initialize(**args)
|
30
|
+
update!(**args)
|
31
|
+
end
|
32
|
+
|
33
|
+
# Update properties of this object
|
34
|
+
def update!(**args)
|
35
|
+
end
|
36
|
+
end
|
37
|
+
|
38
|
+
# State for App Dev Exp Feature.
|
39
|
+
class AppDevExperienceFeatureState
|
40
|
+
include Google::Apis::Core::Hashable
|
41
|
+
|
42
|
+
# Status specifies state for the subcomponent.
|
43
|
+
# Corresponds to the JSON property `networkingInstallSucceeded`
|
44
|
+
# @return [Google::Apis::GkehubV1alpha::Status]
|
45
|
+
attr_accessor :networking_install_succeeded
|
46
|
+
|
47
|
+
def initialize(**args)
|
48
|
+
update!(**args)
|
49
|
+
end
|
50
|
+
|
51
|
+
# Update properties of this object
|
52
|
+
def update!(**args)
|
53
|
+
@networking_install_succeeded = args[:networking_install_succeeded] if args.key?(:networking_install_succeeded)
|
54
|
+
end
|
55
|
+
end
|
56
|
+
|
25
57
|
# Specifies the audit configuration for a service. The configuration determines
|
26
58
|
# which permission types are logged, and what identities, if any, are exempted
|
27
59
|
# from logging. An AuditConfig must have one or more AuditLogConfigs. If there
|
@@ -93,7 +125,61 @@ module Google
|
|
93
125
|
end
|
94
126
|
end
|
95
127
|
|
96
|
-
#
|
128
|
+
# Authority encodes how Google will recognize identities from this Membership.
|
129
|
+
# See the workload identity documentation for more details: https://cloud.google.
|
130
|
+
# com/kubernetes-engine/docs/how-to/workload-identity
|
131
|
+
class Authority
|
132
|
+
include Google::Apis::Core::Hashable
|
133
|
+
|
134
|
+
# Output only. An identity provider that reflects the `issuer` in the workload
|
135
|
+
# identity pool.
|
136
|
+
# Corresponds to the JSON property `identityProvider`
|
137
|
+
# @return [String]
|
138
|
+
attr_accessor :identity_provider
|
139
|
+
|
140
|
+
# Optional. A JSON Web Token (JWT) issuer URI. `issuer` must start with `https://
|
141
|
+
# ` and be a valid URL with length <2000 characters. If set, then Google will
|
142
|
+
# allow valid OIDC tokens from this issuer to authenticate within the
|
143
|
+
# workload_identity_pool. OIDC discovery will be performed on this URI to
|
144
|
+
# validate tokens from the issuer. Clearing `issuer` disables Workload Identity.
|
145
|
+
# `issuer` cannot be directly modified; it must be cleared (and Workload
|
146
|
+
# Identity disabled) before using a new issuer (and re-enabling Workload
|
147
|
+
# Identity).
|
148
|
+
# Corresponds to the JSON property `issuer`
|
149
|
+
# @return [String]
|
150
|
+
attr_accessor :issuer
|
151
|
+
|
152
|
+
# Optional. OIDC verification keys for this Membership in JWKS format (RFC 7517).
|
153
|
+
# When this field is set, OIDC discovery will NOT be performed on `issuer`, and
|
154
|
+
# instead OIDC tokens will be validated using this field.
|
155
|
+
# Corresponds to the JSON property `oidcJwks`
|
156
|
+
# NOTE: Values are automatically base64 encoded/decoded in the client library.
|
157
|
+
# @return [String]
|
158
|
+
attr_accessor :oidc_jwks
|
159
|
+
|
160
|
+
# Output only. The name of the workload identity pool in which `issuer` will be
|
161
|
+
# recognized. There is a single Workload Identity Pool per Hub that is shared
|
162
|
+
# between all Memberships that belong to that Hub. For a Hub hosted in `
|
163
|
+
# PROJECT_ID`, the workload pool format is ``PROJECT_ID`.hub.id.goog`, although
|
164
|
+
# this is subject to change in newer versions of this API.
|
165
|
+
# Corresponds to the JSON property `workloadIdentityPool`
|
166
|
+
# @return [String]
|
167
|
+
attr_accessor :workload_identity_pool
|
168
|
+
|
169
|
+
def initialize(**args)
|
170
|
+
update!(**args)
|
171
|
+
end
|
172
|
+
|
173
|
+
# Update properties of this object
|
174
|
+
def update!(**args)
|
175
|
+
@identity_provider = args[:identity_provider] if args.key?(:identity_provider)
|
176
|
+
@issuer = args[:issuer] if args.key?(:issuer)
|
177
|
+
@oidc_jwks = args[:oidc_jwks] if args.key?(:oidc_jwks)
|
178
|
+
@workload_identity_pool = args[:workload_identity_pool] if args.key?(:workload_identity_pool)
|
179
|
+
end
|
180
|
+
end
|
181
|
+
|
182
|
+
# Associates `members`, or principals, with a `role`.
|
97
183
|
class Binding
|
98
184
|
include Google::Apis::Core::Hashable
|
99
185
|
|
@@ -116,7 +202,7 @@ module Google
|
|
116
202
|
# @return [Google::Apis::GkehubV1alpha::Expr]
|
117
203
|
attr_accessor :condition
|
118
204
|
|
119
|
-
# Specifies the
|
205
|
+
# Specifies the principals requesting access for a Cloud Platform resource. `
|
120
206
|
# members` can have the following values: * `allUsers`: A special identifier
|
121
207
|
# that represents anyone who is on the internet; with or without a Google
|
122
208
|
# account. * `allAuthenticatedUsers`: A special identifier that represents
|
@@ -146,8 +232,8 @@ module Google
|
|
146
232
|
# @return [Array<String>]
|
147
233
|
attr_accessor :members
|
148
234
|
|
149
|
-
# Role that is assigned to `members
|
150
|
-
#
|
235
|
+
# Role that is assigned to the list of `members`, or principals. For example, `
|
236
|
+
# roles/viewer`, `roles/editor`, or `roles/owner`.
|
151
237
|
# Corresponds to the JSON property `role`
|
152
238
|
# @return [String]
|
153
239
|
attr_accessor :role
|
@@ -204,6 +290,11 @@ module Google
|
|
204
290
|
class CommonFeatureSpec
|
205
291
|
include Google::Apis::Core::Hashable
|
206
292
|
|
293
|
+
# Spec for App Dev Experience Feature.
|
294
|
+
# Corresponds to the JSON property `appdevexperience`
|
295
|
+
# @return [Google::Apis::GkehubV1alpha::AppDevExperienceFeatureSpec]
|
296
|
+
attr_accessor :appdevexperience
|
297
|
+
|
207
298
|
# **Cloud Audit Logging**: Spec for Audit Logging Allowlisting.
|
208
299
|
# Corresponds to the JSON property `cloudauditlogging`
|
209
300
|
# @return [Google::Apis::GkehubV1alpha::CloudAuditLoggingFeatureSpec]
|
@@ -221,6 +312,7 @@ module Google
|
|
221
312
|
|
222
313
|
# Update properties of this object
|
223
314
|
def update!(**args)
|
315
|
+
@appdevexperience = args[:appdevexperience] if args.key?(:appdevexperience)
|
224
316
|
@cloudauditlogging = args[:cloudauditlogging] if args.key?(:cloudauditlogging)
|
225
317
|
@multiclusteringress = args[:multiclusteringress] if args.key?(:multiclusteringress)
|
226
318
|
end
|
@@ -230,6 +322,11 @@ module Google
|
|
230
322
|
class CommonFeatureState
|
231
323
|
include Google::Apis::Core::Hashable
|
232
324
|
|
325
|
+
# State for App Dev Exp Feature.
|
326
|
+
# Corresponds to the JSON property `appdevexperience`
|
327
|
+
# @return [Google::Apis::GkehubV1alpha::AppDevExperienceFeatureState]
|
328
|
+
attr_accessor :appdevexperience
|
329
|
+
|
233
330
|
# **Service Mesh**: State for the whole Hub, as analyzed by the Service Mesh Hub
|
234
331
|
# Controller.
|
235
332
|
# Corresponds to the JSON property `servicemesh`
|
@@ -249,6 +346,7 @@ module Google
|
|
249
346
|
|
250
347
|
# Update properties of this object
|
251
348
|
def update!(**args)
|
349
|
+
@appdevexperience = args[:appdevexperience] if args.key?(:appdevexperience)
|
252
350
|
@servicemesh = args[:servicemesh] if args.key?(:servicemesh)
|
253
351
|
@state = args[:state] if args.key?(:state)
|
254
352
|
end
|
@@ -322,6 +420,16 @@ module Google
|
|
322
420
|
class ConfigManagementConfigSync
|
323
421
|
include Google::Apis::Core::Hashable
|
324
422
|
|
423
|
+
# Enables the installation of ConfigSync. If set to true, ConfigSync resources
|
424
|
+
# will be created and the other ConfigSync fields will be applied if exist. If
|
425
|
+
# set to false, all other ConfigSync fields will be ignored, ConfigSync
|
426
|
+
# resources will be deleted. If omitted, ConfigSync resources will be managed
|
427
|
+
# depends on the presence of git field.
|
428
|
+
# Corresponds to the JSON property `enabled`
|
429
|
+
# @return [Boolean]
|
430
|
+
attr_accessor :enabled
|
431
|
+
alias_method :enabled?, :enabled
|
432
|
+
|
325
433
|
# Git repo configuration for a single cluster.
|
326
434
|
# Corresponds to the JSON property `git`
|
327
435
|
# @return [Google::Apis::GkehubV1alpha::ConfigManagementGitConfig]
|
@@ -339,6 +447,7 @@ module Google
|
|
339
447
|
|
340
448
|
# Update properties of this object
|
341
449
|
def update!(**args)
|
450
|
+
@enabled = args[:enabled] if args.key?(:enabled)
|
342
451
|
@git = args[:git] if args.key?(:git)
|
343
452
|
@source_format = args[:source_format] if args.key?(:source_format)
|
344
453
|
end
|
@@ -348,6 +457,11 @@ module Google
|
|
348
457
|
class ConfigManagementConfigSyncDeploymentState
|
349
458
|
include Google::Apis::Core::Hashable
|
350
459
|
|
460
|
+
# Deployment state of admission-webhook
|
461
|
+
# Corresponds to the JSON property `admissionWebhook`
|
462
|
+
# @return [String]
|
463
|
+
attr_accessor :admission_webhook
|
464
|
+
|
351
465
|
# Deployment state of the git-sync pod
|
352
466
|
# Corresponds to the JSON property `gitSync`
|
353
467
|
# @return [String]
|
@@ -384,6 +498,7 @@ module Google
|
|
384
498
|
|
385
499
|
# Update properties of this object
|
386
500
|
def update!(**args)
|
501
|
+
@admission_webhook = args[:admission_webhook] if args.key?(:admission_webhook)
|
387
502
|
@git_sync = args[:git_sync] if args.key?(:git_sync)
|
388
503
|
@importer = args[:importer] if args.key?(:importer)
|
389
504
|
@monitor = args[:monitor] if args.key?(:monitor)
|
@@ -428,6 +543,11 @@ module Google
|
|
428
543
|
class ConfigManagementConfigSyncVersion
|
429
544
|
include Google::Apis::Core::Hashable
|
430
545
|
|
546
|
+
# Version of the deployed admission_webhook pod
|
547
|
+
# Corresponds to the JSON property `admissionWebhook`
|
548
|
+
# @return [String]
|
549
|
+
attr_accessor :admission_webhook
|
550
|
+
|
431
551
|
# Version of the deployed git-sync pod
|
432
552
|
# Corresponds to the JSON property `gitSync`
|
433
553
|
# @return [String]
|
@@ -464,6 +584,7 @@ module Google
|
|
464
584
|
|
465
585
|
# Update properties of this object
|
466
586
|
def update!(**args)
|
587
|
+
@admission_webhook = args[:admission_webhook] if args.key?(:admission_webhook)
|
467
588
|
@git_sync = args[:git_sync] if args.key?(:git_sync)
|
468
589
|
@importer = args[:importer] if args.key?(:importer)
|
469
590
|
@monitor = args[:monitor] if args.key?(:monitor)
|
@@ -1096,6 +1217,33 @@ module Google
|
|
1096
1217
|
end
|
1097
1218
|
end
|
1098
1219
|
|
1220
|
+
# ConnectAgentResource represents a Kubernetes resource manifest for Connect
|
1221
|
+
# Agent deployment.
|
1222
|
+
class ConnectAgentResource
|
1223
|
+
include Google::Apis::Core::Hashable
|
1224
|
+
|
1225
|
+
# YAML manifest of the resource.
|
1226
|
+
# Corresponds to the JSON property `manifest`
|
1227
|
+
# @return [String]
|
1228
|
+
attr_accessor :manifest
|
1229
|
+
|
1230
|
+
# TypeMeta is the type information needed for content unmarshalling of
|
1231
|
+
# Kubernetes resources in the manifest.
|
1232
|
+
# Corresponds to the JSON property `type`
|
1233
|
+
# @return [Google::Apis::GkehubV1alpha::TypeMeta]
|
1234
|
+
attr_accessor :type
|
1235
|
+
|
1236
|
+
def initialize(**args)
|
1237
|
+
update!(**args)
|
1238
|
+
end
|
1239
|
+
|
1240
|
+
# Update properties of this object
|
1241
|
+
def update!(**args)
|
1242
|
+
@manifest = args[:manifest] if args.key?(:manifest)
|
1243
|
+
@type = args[:type] if args.key?(:type)
|
1244
|
+
end
|
1245
|
+
end
|
1246
|
+
|
1099
1247
|
# A generic empty message that you can re-use to avoid defining duplicated empty
|
1100
1248
|
# messages in your APIs. A typical example is to use it as the request or the
|
1101
1249
|
# response type of an API method. For instance: service Foo ` rpc Bar(google.
|
@@ -1312,6 +1460,56 @@ module Google
|
|
1312
1460
|
end
|
1313
1461
|
end
|
1314
1462
|
|
1463
|
+
# GenerateConnectManifestResponse contains manifest information for installing/
|
1464
|
+
# upgrading a Connect agent.
|
1465
|
+
class GenerateConnectManifestResponse
|
1466
|
+
include Google::Apis::Core::Hashable
|
1467
|
+
|
1468
|
+
# The ordered list of Kubernetes resources that need to be applied to the
|
1469
|
+
# cluster for GKE Connect agent installation/upgrade.
|
1470
|
+
# Corresponds to the JSON property `manifest`
|
1471
|
+
# @return [Array<Google::Apis::GkehubV1alpha::ConnectAgentResource>]
|
1472
|
+
attr_accessor :manifest
|
1473
|
+
|
1474
|
+
def initialize(**args)
|
1475
|
+
update!(**args)
|
1476
|
+
end
|
1477
|
+
|
1478
|
+
# Update properties of this object
|
1479
|
+
def update!(**args)
|
1480
|
+
@manifest = args[:manifest] if args.key?(:manifest)
|
1481
|
+
end
|
1482
|
+
end
|
1483
|
+
|
1484
|
+
# GkeCluster contains information specific to GKE clusters.
|
1485
|
+
class GkeCluster
|
1486
|
+
include Google::Apis::Core::Hashable
|
1487
|
+
|
1488
|
+
# Output only. If cluster_missing is set then it denotes that the GKE cluster no
|
1489
|
+
# longer exists in the GKE Control Plane.
|
1490
|
+
# Corresponds to the JSON property `clusterMissing`
|
1491
|
+
# @return [Boolean]
|
1492
|
+
attr_accessor :cluster_missing
|
1493
|
+
alias_method :cluster_missing?, :cluster_missing
|
1494
|
+
|
1495
|
+
# Immutable. Self-link of the GCP resource for the GKE cluster. For example: //
|
1496
|
+
# container.googleapis.com/projects/my-project/locations/us-west1-a/clusters/my-
|
1497
|
+
# cluster Zonal clusters are also supported.
|
1498
|
+
# Corresponds to the JSON property `resourceLink`
|
1499
|
+
# @return [String]
|
1500
|
+
attr_accessor :resource_link
|
1501
|
+
|
1502
|
+
def initialize(**args)
|
1503
|
+
update!(**args)
|
1504
|
+
end
|
1505
|
+
|
1506
|
+
# Update properties of this object
|
1507
|
+
def update!(**args)
|
1508
|
+
@cluster_missing = args[:cluster_missing] if args.key?(:cluster_missing)
|
1509
|
+
@resource_link = args[:resource_link] if args.key?(:resource_link)
|
1510
|
+
end
|
1511
|
+
end
|
1512
|
+
|
1315
1513
|
# The `Status` type defines a logical error model that is suitable for different
|
1316
1514
|
# programming environments, including REST APIs and RPC APIs. It is used by [
|
1317
1515
|
# gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
|
@@ -1523,6 +1721,95 @@ module Google
|
|
1523
1721
|
end
|
1524
1722
|
end
|
1525
1723
|
|
1724
|
+
# KubernetesMetadata provides informational metadata for Memberships
|
1725
|
+
# representing Kubernetes clusters.
|
1726
|
+
class KubernetesMetadata
|
1727
|
+
include Google::Apis::Core::Hashable
|
1728
|
+
|
1729
|
+
# Output only. Kubernetes API server version string as reported by `/version`.
|
1730
|
+
# Corresponds to the JSON property `kubernetesApiServerVersion`
|
1731
|
+
# @return [String]
|
1732
|
+
attr_accessor :kubernetes_api_server_version
|
1733
|
+
|
1734
|
+
# Output only. The total memory capacity as reported by the sum of all
|
1735
|
+
# Kubernetes nodes resources, defined in MB.
|
1736
|
+
# Corresponds to the JSON property `memoryMb`
|
1737
|
+
# @return [Fixnum]
|
1738
|
+
attr_accessor :memory_mb
|
1739
|
+
|
1740
|
+
# Output only. Node count as reported by Kubernetes nodes resources.
|
1741
|
+
# Corresponds to the JSON property `nodeCount`
|
1742
|
+
# @return [Fixnum]
|
1743
|
+
attr_accessor :node_count
|
1744
|
+
|
1745
|
+
# Output only. Node providerID as reported by the first node in the list of
|
1746
|
+
# nodes on the Kubernetes endpoint. On Kubernetes platforms that support zero-
|
1747
|
+
# node clusters (like GKE-on-GCP), the node_count will be zero and the
|
1748
|
+
# node_provider_id will be empty.
|
1749
|
+
# Corresponds to the JSON property `nodeProviderId`
|
1750
|
+
# @return [String]
|
1751
|
+
attr_accessor :node_provider_id
|
1752
|
+
|
1753
|
+
# Output only. The time at which these details were last updated. This
|
1754
|
+
# update_time is different from the Membership-level update_time since
|
1755
|
+
# EndpointDetails are updated internally for API consumers.
|
1756
|
+
# Corresponds to the JSON property `updateTime`
|
1757
|
+
# @return [String]
|
1758
|
+
attr_accessor :update_time
|
1759
|
+
|
1760
|
+
# Output only. vCPU count as reported by Kubernetes nodes resources.
|
1761
|
+
# Corresponds to the JSON property `vcpuCount`
|
1762
|
+
# @return [Fixnum]
|
1763
|
+
attr_accessor :vcpu_count
|
1764
|
+
|
1765
|
+
def initialize(**args)
|
1766
|
+
update!(**args)
|
1767
|
+
end
|
1768
|
+
|
1769
|
+
# Update properties of this object
|
1770
|
+
def update!(**args)
|
1771
|
+
@kubernetes_api_server_version = args[:kubernetes_api_server_version] if args.key?(:kubernetes_api_server_version)
|
1772
|
+
@memory_mb = args[:memory_mb] if args.key?(:memory_mb)
|
1773
|
+
@node_count = args[:node_count] if args.key?(:node_count)
|
1774
|
+
@node_provider_id = args[:node_provider_id] if args.key?(:node_provider_id)
|
1775
|
+
@update_time = args[:update_time] if args.key?(:update_time)
|
1776
|
+
@vcpu_count = args[:vcpu_count] if args.key?(:vcpu_count)
|
1777
|
+
end
|
1778
|
+
end
|
1779
|
+
|
1780
|
+
# Response message for the `GkeHub.ListAdminClusterMemberships` method.
|
1781
|
+
class ListAdminClusterMembershipsResponse
|
1782
|
+
include Google::Apis::Core::Hashable
|
1783
|
+
|
1784
|
+
# The list of matching Memberships of admin clusters.
|
1785
|
+
# Corresponds to the JSON property `adminClusterMemberships`
|
1786
|
+
# @return [Array<Google::Apis::GkehubV1alpha::Membership>]
|
1787
|
+
attr_accessor :admin_cluster_memberships
|
1788
|
+
|
1789
|
+
# A token to request the next page of resources from the `
|
1790
|
+
# ListAdminClusterMemberships` method. The value of an empty string means that
|
1791
|
+
# there are no more resources to return.
|
1792
|
+
# Corresponds to the JSON property `nextPageToken`
|
1793
|
+
# @return [String]
|
1794
|
+
attr_accessor :next_page_token
|
1795
|
+
|
1796
|
+
# List of locations that could not be reached while fetching this list.
|
1797
|
+
# Corresponds to the JSON property `unreachable`
|
1798
|
+
# @return [Array<String>]
|
1799
|
+
attr_accessor :unreachable
|
1800
|
+
|
1801
|
+
def initialize(**args)
|
1802
|
+
update!(**args)
|
1803
|
+
end
|
1804
|
+
|
1805
|
+
# Update properties of this object
|
1806
|
+
def update!(**args)
|
1807
|
+
@admin_cluster_memberships = args[:admin_cluster_memberships] if args.key?(:admin_cluster_memberships)
|
1808
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
1809
|
+
@unreachable = args[:unreachable] if args.key?(:unreachable)
|
1810
|
+
end
|
1811
|
+
end
|
1812
|
+
|
1526
1813
|
# Response message for the `GkeHub.ListFeatures` method.
|
1527
1814
|
class ListFeaturesResponse
|
1528
1815
|
include Google::Apis::Core::Hashable
|
@@ -1574,6 +1861,39 @@ module Google
|
|
1574
1861
|
end
|
1575
1862
|
end
|
1576
1863
|
|
1864
|
+
# Response message for the `GkeHub.ListMemberships` method.
|
1865
|
+
class ListMembershipsResponse
|
1866
|
+
include Google::Apis::Core::Hashable
|
1867
|
+
|
1868
|
+
# A token to request the next page of resources from the `ListMemberships`
|
1869
|
+
# method. The value of an empty string means that there are no more resources to
|
1870
|
+
# return.
|
1871
|
+
# Corresponds to the JSON property `nextPageToken`
|
1872
|
+
# @return [String]
|
1873
|
+
attr_accessor :next_page_token
|
1874
|
+
|
1875
|
+
# The list of matching Memberships.
|
1876
|
+
# Corresponds to the JSON property `resources`
|
1877
|
+
# @return [Array<Google::Apis::GkehubV1alpha::Membership>]
|
1878
|
+
attr_accessor :resources
|
1879
|
+
|
1880
|
+
# List of locations that could not be reached while fetching this list.
|
1881
|
+
# Corresponds to the JSON property `unreachable`
|
1882
|
+
# @return [Array<String>]
|
1883
|
+
attr_accessor :unreachable
|
1884
|
+
|
1885
|
+
def initialize(**args)
|
1886
|
+
update!(**args)
|
1887
|
+
end
|
1888
|
+
|
1889
|
+
# Update properties of this object
|
1890
|
+
def update!(**args)
|
1891
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
1892
|
+
@resources = args[:resources] if args.key?(:resources)
|
1893
|
+
@unreachable = args[:unreachable] if args.key?(:unreachable)
|
1894
|
+
end
|
1895
|
+
end
|
1896
|
+
|
1577
1897
|
# The response message for Operations.ListOperations.
|
1578
1898
|
class ListOperationsResponse
|
1579
1899
|
include Google::Apis::Core::Hashable
|
@@ -1646,6 +1966,148 @@ module Google
|
|
1646
1966
|
end
|
1647
1967
|
end
|
1648
1968
|
|
1969
|
+
# Membership contains information about a member cluster.
|
1970
|
+
class Membership
|
1971
|
+
include Google::Apis::Core::Hashable
|
1972
|
+
|
1973
|
+
# Authority encodes how Google will recognize identities from this Membership.
|
1974
|
+
# See the workload identity documentation for more details: https://cloud.google.
|
1975
|
+
# com/kubernetes-engine/docs/how-to/workload-identity
|
1976
|
+
# Corresponds to the JSON property `authority`
|
1977
|
+
# @return [Google::Apis::GkehubV1alpha::Authority]
|
1978
|
+
attr_accessor :authority
|
1979
|
+
|
1980
|
+
# Output only. When the Membership was created.
|
1981
|
+
# Corresponds to the JSON property `createTime`
|
1982
|
+
# @return [String]
|
1983
|
+
attr_accessor :create_time
|
1984
|
+
|
1985
|
+
# Output only. When the Membership was deleted.
|
1986
|
+
# Corresponds to the JSON property `deleteTime`
|
1987
|
+
# @return [String]
|
1988
|
+
attr_accessor :delete_time
|
1989
|
+
|
1990
|
+
# Output only. Description of this membership, limited to 63 characters. Must
|
1991
|
+
# match the regex: `a-zA-Z0-9*` This field is present for legacy purposes.
|
1992
|
+
# Corresponds to the JSON property `description`
|
1993
|
+
# @return [String]
|
1994
|
+
attr_accessor :description
|
1995
|
+
|
1996
|
+
# MembershipEndpoint contains information needed to contact a Kubernetes API,
|
1997
|
+
# endpoint and any additional Kubernetes metadata.
|
1998
|
+
# Corresponds to the JSON property `endpoint`
|
1999
|
+
# @return [Google::Apis::GkehubV1alpha::MembershipEndpoint]
|
2000
|
+
attr_accessor :endpoint
|
2001
|
+
|
2002
|
+
# Optional. An externally-generated and managed ID for this Membership. This ID
|
2003
|
+
# may be modified after creation, but this is not recommended. The ID must match
|
2004
|
+
# the regex: `a-zA-Z0-9*` If this Membership represents a Kubernetes cluster,
|
2005
|
+
# this value should be set to the UID of the `kube-system` namespace object.
|
2006
|
+
# Corresponds to the JSON property `externalId`
|
2007
|
+
# @return [String]
|
2008
|
+
attr_accessor :external_id
|
2009
|
+
|
2010
|
+
# Optional. GCP labels for this membership.
|
2011
|
+
# Corresponds to the JSON property `labels`
|
2012
|
+
# @return [Hash<String,String>]
|
2013
|
+
attr_accessor :labels
|
2014
|
+
|
2015
|
+
# Output only. For clusters using Connect, the timestamp of the most recent
|
2016
|
+
# connection established with Google Cloud. This time is updated every several
|
2017
|
+
# minutes, not continuously. For clusters that do not use GKE Connect, or that
|
2018
|
+
# have never connected successfully, this field will be unset.
|
2019
|
+
# Corresponds to the JSON property `lastConnectionTime`
|
2020
|
+
# @return [String]
|
2021
|
+
attr_accessor :last_connection_time
|
2022
|
+
|
2023
|
+
# Output only. The full, unique name of this Membership resource in the format `
|
2024
|
+
# projects/*/locations/*/memberships/`membership_id``, set during creation. `
|
2025
|
+
# membership_id` must be a valid RFC 1123 compliant DNS label: 1. At most 63
|
2026
|
+
# characters in length 2. It must consist of lower case alphanumeric characters
|
2027
|
+
# or `-` 3. It must start and end with an alphanumeric character Which can be
|
2028
|
+
# expressed as the regex: `[a-z0-9]([-a-z0-9]*[a-z0-9])?`, with a maximum length
|
2029
|
+
# of 63 characters.
|
2030
|
+
# Corresponds to the JSON property `name`
|
2031
|
+
# @return [String]
|
2032
|
+
attr_accessor :name
|
2033
|
+
|
2034
|
+
# MembershipState describes the state of a Membership resource.
|
2035
|
+
# Corresponds to the JSON property `state`
|
2036
|
+
# @return [Google::Apis::GkehubV1alpha::MembershipState]
|
2037
|
+
attr_accessor :state
|
2038
|
+
|
2039
|
+
# Output only. Google-generated UUID for this resource. This is unique across
|
2040
|
+
# all Membership resources. If a Membership resource is deleted and another
|
2041
|
+
# resource with the same name is created, it gets a different unique_id.
|
2042
|
+
# Corresponds to the JSON property `uniqueId`
|
2043
|
+
# @return [String]
|
2044
|
+
attr_accessor :unique_id
|
2045
|
+
|
2046
|
+
# Output only. When the Membership was last updated.
|
2047
|
+
# Corresponds to the JSON property `updateTime`
|
2048
|
+
# @return [String]
|
2049
|
+
attr_accessor :update_time
|
2050
|
+
|
2051
|
+
def initialize(**args)
|
2052
|
+
update!(**args)
|
2053
|
+
end
|
2054
|
+
|
2055
|
+
# Update properties of this object
|
2056
|
+
def update!(**args)
|
2057
|
+
@authority = args[:authority] if args.key?(:authority)
|
2058
|
+
@create_time = args[:create_time] if args.key?(:create_time)
|
2059
|
+
@delete_time = args[:delete_time] if args.key?(:delete_time)
|
2060
|
+
@description = args[:description] if args.key?(:description)
|
2061
|
+
@endpoint = args[:endpoint] if args.key?(:endpoint)
|
2062
|
+
@external_id = args[:external_id] if args.key?(:external_id)
|
2063
|
+
@labels = args[:labels] if args.key?(:labels)
|
2064
|
+
@last_connection_time = args[:last_connection_time] if args.key?(:last_connection_time)
|
2065
|
+
@name = args[:name] if args.key?(:name)
|
2066
|
+
@state = args[:state] if args.key?(:state)
|
2067
|
+
@unique_id = args[:unique_id] if args.key?(:unique_id)
|
2068
|
+
@update_time = args[:update_time] if args.key?(:update_time)
|
2069
|
+
end
|
2070
|
+
end
|
2071
|
+
|
2072
|
+
# MembershipEndpoint contains information needed to contact a Kubernetes API,
|
2073
|
+
# endpoint and any additional Kubernetes metadata.
|
2074
|
+
class MembershipEndpoint
|
2075
|
+
include Google::Apis::Core::Hashable
|
2076
|
+
|
2077
|
+
# GkeCluster contains information specific to GKE clusters.
|
2078
|
+
# Corresponds to the JSON property `gkeCluster`
|
2079
|
+
# @return [Google::Apis::GkehubV1alpha::GkeCluster]
|
2080
|
+
attr_accessor :gke_cluster
|
2081
|
+
|
2082
|
+
# KubernetesMetadata provides informational metadata for Memberships
|
2083
|
+
# representing Kubernetes clusters.
|
2084
|
+
# Corresponds to the JSON property `kubernetesMetadata`
|
2085
|
+
# @return [Google::Apis::GkehubV1alpha::KubernetesMetadata]
|
2086
|
+
attr_accessor :kubernetes_metadata
|
2087
|
+
|
2088
|
+
# MultiCloudCluster contains information specific to GKE Multi-Cloud clusters.
|
2089
|
+
# Corresponds to the JSON property `multiCloudCluster`
|
2090
|
+
# @return [Google::Apis::GkehubV1alpha::MultiCloudCluster]
|
2091
|
+
attr_accessor :multi_cloud_cluster
|
2092
|
+
|
2093
|
+
# OnPremCluster contains information specific to GKE On-Prem clusters.
|
2094
|
+
# Corresponds to the JSON property `onPremCluster`
|
2095
|
+
# @return [Google::Apis::GkehubV1alpha::OnPremCluster]
|
2096
|
+
attr_accessor :on_prem_cluster
|
2097
|
+
|
2098
|
+
def initialize(**args)
|
2099
|
+
update!(**args)
|
2100
|
+
end
|
2101
|
+
|
2102
|
+
# Update properties of this object
|
2103
|
+
def update!(**args)
|
2104
|
+
@gke_cluster = args[:gke_cluster] if args.key?(:gke_cluster)
|
2105
|
+
@kubernetes_metadata = args[:kubernetes_metadata] if args.key?(:kubernetes_metadata)
|
2106
|
+
@multi_cloud_cluster = args[:multi_cloud_cluster] if args.key?(:multi_cloud_cluster)
|
2107
|
+
@on_prem_cluster = args[:on_prem_cluster] if args.key?(:on_prem_cluster)
|
2108
|
+
end
|
2109
|
+
end
|
2110
|
+
|
1649
2111
|
# MembershipFeatureSpec contains configuration information for a single
|
1650
2112
|
# Membership.
|
1651
2113
|
class MembershipFeatureSpec
|
@@ -1662,6 +2124,11 @@ module Google
|
|
1662
2124
|
# @return [Google::Apis::GkehubV1alpha::IdentityServiceMembershipSpec]
|
1663
2125
|
attr_accessor :identityservice
|
1664
2126
|
|
2127
|
+
# **Service Mesh**: Spec for a single Membership for the servicemesh feature
|
2128
|
+
# Corresponds to the JSON property `mesh`
|
2129
|
+
# @return [Google::Apis::GkehubV1alpha::ServiceMeshMembershipSpec]
|
2130
|
+
attr_accessor :mesh
|
2131
|
+
|
1665
2132
|
def initialize(**args)
|
1666
2133
|
update!(**args)
|
1667
2134
|
end
|
@@ -1670,6 +2137,7 @@ module Google
|
|
1670
2137
|
def update!(**args)
|
1671
2138
|
@configmanagement = args[:configmanagement] if args.key?(:configmanagement)
|
1672
2139
|
@identityservice = args[:identityservice] if args.key?(:identityservice)
|
2140
|
+
@mesh = args[:mesh] if args.key?(:mesh)
|
1673
2141
|
end
|
1674
2142
|
end
|
1675
2143
|
|
@@ -1678,6 +2146,11 @@ module Google
|
|
1678
2146
|
class MembershipFeatureState
|
1679
2147
|
include Google::Apis::Core::Hashable
|
1680
2148
|
|
2149
|
+
# State for App Dev Exp Feature.
|
2150
|
+
# Corresponds to the JSON property `appdevexperience`
|
2151
|
+
# @return [Google::Apis::GkehubV1alpha::AppDevExperienceFeatureState]
|
2152
|
+
attr_accessor :appdevexperience
|
2153
|
+
|
1681
2154
|
# **Anthos Config Management**: State for a single cluster.
|
1682
2155
|
# Corresponds to the JSON property `configmanagement`
|
1683
2156
|
# @return [Google::Apis::GkehubV1alpha::ConfigManagementMembershipState]
|
@@ -1712,6 +2185,7 @@ module Google
|
|
1712
2185
|
|
1713
2186
|
# Update properties of this object
|
1714
2187
|
def update!(**args)
|
2188
|
+
@appdevexperience = args[:appdevexperience] if args.key?(:appdevexperience)
|
1715
2189
|
@configmanagement = args[:configmanagement] if args.key?(:configmanagement)
|
1716
2190
|
@identityservice = args[:identityservice] if args.key?(:identityservice)
|
1717
2191
|
@metering = args[:metering] if args.key?(:metering)
|
@@ -1720,6 +2194,25 @@ module Google
|
|
1720
2194
|
end
|
1721
2195
|
end
|
1722
2196
|
|
2197
|
+
# MembershipState describes the state of a Membership resource.
|
2198
|
+
class MembershipState
|
2199
|
+
include Google::Apis::Core::Hashable
|
2200
|
+
|
2201
|
+
# Output only. The current state of the Membership resource.
|
2202
|
+
# Corresponds to the JSON property `code`
|
2203
|
+
# @return [String]
|
2204
|
+
attr_accessor :code
|
2205
|
+
|
2206
|
+
def initialize(**args)
|
2207
|
+
update!(**args)
|
2208
|
+
end
|
2209
|
+
|
2210
|
+
# Update properties of this object
|
2211
|
+
def update!(**args)
|
2212
|
+
@code = args[:code] if args.key?(:code)
|
2213
|
+
end
|
2214
|
+
end
|
2215
|
+
|
1723
2216
|
# **Metering**: Per-Membership Feature State.
|
1724
2217
|
class MeteringMembershipState
|
1725
2218
|
include Google::Apis::Core::Hashable
|
@@ -1747,6 +2240,36 @@ module Google
|
|
1747
2240
|
end
|
1748
2241
|
end
|
1749
2242
|
|
2243
|
+
# MultiCloudCluster contains information specific to GKE Multi-Cloud clusters.
|
2244
|
+
class MultiCloudCluster
|
2245
|
+
include Google::Apis::Core::Hashable
|
2246
|
+
|
2247
|
+
# Output only. If cluster_missing is set then it denotes that API(gkemulticloud.
|
2248
|
+
# googleapis.com) resource for this GKE Multi-Cloud cluster no longer exists.
|
2249
|
+
# Corresponds to the JSON property `clusterMissing`
|
2250
|
+
# @return [Boolean]
|
2251
|
+
attr_accessor :cluster_missing
|
2252
|
+
alias_method :cluster_missing?, :cluster_missing
|
2253
|
+
|
2254
|
+
# Immutable. Self-link of the GCP resource for the GKE Multi-Cloud cluster. For
|
2255
|
+
# example: //gkemulticloud.googleapis.com/projects/my-project/locations/us-west1-
|
2256
|
+
# a/awsClusters/my-cluster //gkemulticloud.googleapis.com/projects/my-project/
|
2257
|
+
# locations/us-west1-a/azureClusters/my-cluster
|
2258
|
+
# Corresponds to the JSON property `resourceLink`
|
2259
|
+
# @return [String]
|
2260
|
+
attr_accessor :resource_link
|
2261
|
+
|
2262
|
+
def initialize(**args)
|
2263
|
+
update!(**args)
|
2264
|
+
end
|
2265
|
+
|
2266
|
+
# Update properties of this object
|
2267
|
+
def update!(**args)
|
2268
|
+
@cluster_missing = args[:cluster_missing] if args.key?(:cluster_missing)
|
2269
|
+
@resource_link = args[:resource_link] if args.key?(:resource_link)
|
2270
|
+
end
|
2271
|
+
end
|
2272
|
+
|
1750
2273
|
# **Multi-cluster Ingress**: The configuration for the MultiClusterIngress
|
1751
2274
|
# feature.
|
1752
2275
|
class MultiClusterIngressFeatureSpec
|
@@ -1775,6 +2298,43 @@ module Google
|
|
1775
2298
|
end
|
1776
2299
|
end
|
1777
2300
|
|
2301
|
+
# OnPremCluster contains information specific to GKE On-Prem clusters.
|
2302
|
+
class OnPremCluster
|
2303
|
+
include Google::Apis::Core::Hashable
|
2304
|
+
|
2305
|
+
# Immutable. Whether the cluster is an admin cluster.
|
2306
|
+
# Corresponds to the JSON property `adminCluster`
|
2307
|
+
# @return [Boolean]
|
2308
|
+
attr_accessor :admin_cluster
|
2309
|
+
alias_method :admin_cluster?, :admin_cluster
|
2310
|
+
|
2311
|
+
# Output only. If cluster_missing is set then it denotes that API(gkeonprem.
|
2312
|
+
# googleapis.com) resource for this GKE On-Prem cluster no longer exists.
|
2313
|
+
# Corresponds to the JSON property `clusterMissing`
|
2314
|
+
# @return [Boolean]
|
2315
|
+
attr_accessor :cluster_missing
|
2316
|
+
alias_method :cluster_missing?, :cluster_missing
|
2317
|
+
|
2318
|
+
# Immutable. Self-link of the GCP resource for the GKE On-Prem cluster. For
|
2319
|
+
# example: //gkeonprem.googleapis.com/projects/my-project/locations/us-west1-a/
|
2320
|
+
# vmwareClusters/my-cluster //gkeonprem.googleapis.com/projects/my-project/
|
2321
|
+
# locations/us-west1-a/bareMetalClusters/my-cluster
|
2322
|
+
# Corresponds to the JSON property `resourceLink`
|
2323
|
+
# @return [String]
|
2324
|
+
attr_accessor :resource_link
|
2325
|
+
|
2326
|
+
def initialize(**args)
|
2327
|
+
update!(**args)
|
2328
|
+
end
|
2329
|
+
|
2330
|
+
# Update properties of this object
|
2331
|
+
def update!(**args)
|
2332
|
+
@admin_cluster = args[:admin_cluster] if args.key?(:admin_cluster)
|
2333
|
+
@cluster_missing = args[:cluster_missing] if args.key?(:cluster_missing)
|
2334
|
+
@resource_link = args[:resource_link] if args.key?(:resource_link)
|
2335
|
+
end
|
2336
|
+
end
|
2337
|
+
|
1778
2338
|
# This resource represents a long-running operation that is the result of a
|
1779
2339
|
# network API call.
|
1780
2340
|
class Operation
|
@@ -1898,31 +2458,31 @@ module Google
|
|
1898
2458
|
|
1899
2459
|
# An Identity and Access Management (IAM) policy, which specifies access
|
1900
2460
|
# controls for Google Cloud resources. A `Policy` is a collection of `bindings`.
|
1901
|
-
# A `binding` binds one or more `members
|
1902
|
-
# user accounts, service accounts, Google groups, and domains (
|
1903
|
-
# A `role` is a named list of permissions; each `role` can be
|
1904
|
-
# role or a user-created custom role. For some types of Google
|
1905
|
-
# a `binding` can also specify a `condition`, which is a
|
1906
|
-
# allows access to a resource only if the expression
|
1907
|
-
# condition can add constraints based on attributes of
|
1908
|
-
# or both. To learn which resources support
|
1909
|
-
# see the [IAM documentation](https://cloud.
|
1910
|
-
# resource-policies). **JSON example:** ` "
|
1911
|
-
# resourcemanager.organizationAdmin", "members": [
|
1912
|
-
# group:admins@example.com", "domain:google.com", "
|
1913
|
-
# appspot.gserviceaccount.com" ] `, ` "role": "
|
1914
|
-
# organizationViewer", "members": [ "user:eve@example.com"
|
1915
|
-
# title": "expirable access", "description": "Does not grant
|
1916
|
-
# 2020", "expression": "request.time < timestamp('2020-10-01T00:
|
1917
|
-
# ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:**
|
1918
|
-
# members: - user:mike@example.com - group:admins@example.com -
|
1919
|
-
# com - serviceAccount:my-project-id@appspot.gserviceaccount.com
|
1920
|
-
# resourcemanager.organizationAdmin - members: - user:eve@example.
|
1921
|
-
# roles/resourcemanager.organizationViewer condition: title: expirable
|
1922
|
-
# description: Does not grant access after Sep 2020 expression: request.
|
1923
|
-
# timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For
|
1924
|
-
# description of IAM and its features, see the [IAM documentation](https://
|
1925
|
-
# google.com/iam/docs/).
|
2461
|
+
# A `binding` binds one or more `members`, or principals, to a single `role`.
|
2462
|
+
# Principals can be user accounts, service accounts, Google groups, and domains (
|
2463
|
+
# such as G Suite). A `role` is a named list of permissions; each `role` can be
|
2464
|
+
# an IAM predefined role or a user-created custom role. For some types of Google
|
2465
|
+
# Cloud resources, a `binding` can also specify a `condition`, which is a
|
2466
|
+
# logical expression that allows access to a resource only if the expression
|
2467
|
+
# evaluates to `true`. A condition can add constraints based on attributes of
|
2468
|
+
# the request, the resource, or both. To learn which resources support
|
2469
|
+
# conditions in their IAM policies, see the [IAM documentation](https://cloud.
|
2470
|
+
# google.com/iam/help/conditions/resource-policies). **JSON example:** ` "
|
2471
|
+
# bindings": [ ` "role": "roles/resourcemanager.organizationAdmin", "members": [
|
2472
|
+
# "user:mike@example.com", "group:admins@example.com", "domain:google.com", "
|
2473
|
+
# serviceAccount:my-project-id@appspot.gserviceaccount.com" ] `, ` "role": "
|
2474
|
+
# roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com"
|
2475
|
+
# ], "condition": ` "title": "expirable access", "description": "Does not grant
|
2476
|
+
# access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:
|
2477
|
+
# 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:**
|
2478
|
+
# bindings: - members: - user:mike@example.com - group:admins@example.com -
|
2479
|
+
# domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com
|
2480
|
+
# role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.
|
2481
|
+
# com role: roles/resourcemanager.organizationViewer condition: title: expirable
|
2482
|
+
# access description: Does not grant access after Sep 2020 expression: request.
|
2483
|
+
# time < timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For
|
2484
|
+
# a description of IAM and its features, see the [IAM documentation](https://
|
2485
|
+
# cloud.google.com/iam/docs/).
|
1926
2486
|
class Policy
|
1927
2487
|
include Google::Apis::Core::Hashable
|
1928
2488
|
|
@@ -1931,9 +2491,14 @@ module Google
|
|
1931
2491
|
# @return [Array<Google::Apis::GkehubV1alpha::AuditConfig>]
|
1932
2492
|
attr_accessor :audit_configs
|
1933
2493
|
|
1934
|
-
# Associates a list of `members
|
1935
|
-
# condition` that determines how and when the `bindings` are applied.
|
1936
|
-
# the `bindings` must contain at least one
|
2494
|
+
# Associates a list of `members`, or principals, with a `role`. Optionally, may
|
2495
|
+
# specify a `condition` that determines how and when the `bindings` are applied.
|
2496
|
+
# Each of the `bindings` must contain at least one principal. The `bindings` in
|
2497
|
+
# a `Policy` can refer to up to 1,500 principals; up to 250 of these principals
|
2498
|
+
# can be Google groups. Each occurrence of a principal counts towards these
|
2499
|
+
# limits. For example, if the `bindings` grant 50 different roles to `user:alice@
|
2500
|
+
# example.com`, and not to any other principal, then you can add another 1,450
|
2501
|
+
# principals to the `bindings` in the `Policy`.
|
1937
2502
|
# Corresponds to the JSON property `bindings`
|
1938
2503
|
# @return [Array<Google::Apis::GkehubV1alpha::Binding>]
|
1939
2504
|
attr_accessor :bindings
|
@@ -2088,6 +2653,19 @@ module Google
|
|
2088
2653
|
end
|
2089
2654
|
end
|
2090
2655
|
|
2656
|
+
# **Service Mesh**: Spec for a single Membership for the servicemesh feature
|
2657
|
+
class ServiceMeshMembershipSpec
|
2658
|
+
include Google::Apis::Core::Hashable
|
2659
|
+
|
2660
|
+
def initialize(**args)
|
2661
|
+
update!(**args)
|
2662
|
+
end
|
2663
|
+
|
2664
|
+
# Update properties of this object
|
2665
|
+
def update!(**args)
|
2666
|
+
end
|
2667
|
+
end
|
2668
|
+
|
2091
2669
|
# **Service Mesh**: State for a single Membership, as analyzed by the Service
|
2092
2670
|
# Mesh Hub Controller.
|
2093
2671
|
class ServiceMeshMembershipState
|
@@ -2147,31 +2725,31 @@ module Google
|
|
2147
2725
|
|
2148
2726
|
# An Identity and Access Management (IAM) policy, which specifies access
|
2149
2727
|
# controls for Google Cloud resources. A `Policy` is a collection of `bindings`.
|
2150
|
-
# A `binding` binds one or more `members
|
2151
|
-
# user accounts, service accounts, Google groups, and domains (
|
2152
|
-
# A `role` is a named list of permissions; each `role` can be
|
2153
|
-
# role or a user-created custom role. For some types of Google
|
2154
|
-
# a `binding` can also specify a `condition`, which is a
|
2155
|
-
# allows access to a resource only if the expression
|
2156
|
-
# condition can add constraints based on attributes of
|
2157
|
-
# or both. To learn which resources support
|
2158
|
-
# see the [IAM documentation](https://cloud.
|
2159
|
-
# resource-policies). **JSON example:** ` "
|
2160
|
-
# resourcemanager.organizationAdmin", "members": [
|
2161
|
-
# group:admins@example.com", "domain:google.com", "
|
2162
|
-
# appspot.gserviceaccount.com" ] `, ` "role": "
|
2163
|
-
# organizationViewer", "members": [ "user:eve@example.com"
|
2164
|
-
# title": "expirable access", "description": "Does not grant
|
2165
|
-
# 2020", "expression": "request.time < timestamp('2020-10-01T00:
|
2166
|
-
# ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:**
|
2167
|
-
# members: - user:mike@example.com - group:admins@example.com -
|
2168
|
-
# com - serviceAccount:my-project-id@appspot.gserviceaccount.com
|
2169
|
-
# resourcemanager.organizationAdmin - members: - user:eve@example.
|
2170
|
-
# roles/resourcemanager.organizationViewer condition: title: expirable
|
2171
|
-
# description: Does not grant access after Sep 2020 expression: request.
|
2172
|
-
# timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For
|
2173
|
-
# description of IAM and its features, see the [IAM documentation](https://
|
2174
|
-
# google.com/iam/docs/).
|
2728
|
+
# A `binding` binds one or more `members`, or principals, to a single `role`.
|
2729
|
+
# Principals can be user accounts, service accounts, Google groups, and domains (
|
2730
|
+
# such as G Suite). A `role` is a named list of permissions; each `role` can be
|
2731
|
+
# an IAM predefined role or a user-created custom role. For some types of Google
|
2732
|
+
# Cloud resources, a `binding` can also specify a `condition`, which is a
|
2733
|
+
# logical expression that allows access to a resource only if the expression
|
2734
|
+
# evaluates to `true`. A condition can add constraints based on attributes of
|
2735
|
+
# the request, the resource, or both. To learn which resources support
|
2736
|
+
# conditions in their IAM policies, see the [IAM documentation](https://cloud.
|
2737
|
+
# google.com/iam/help/conditions/resource-policies). **JSON example:** ` "
|
2738
|
+
# bindings": [ ` "role": "roles/resourcemanager.organizationAdmin", "members": [
|
2739
|
+
# "user:mike@example.com", "group:admins@example.com", "domain:google.com", "
|
2740
|
+
# serviceAccount:my-project-id@appspot.gserviceaccount.com" ] `, ` "role": "
|
2741
|
+
# roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com"
|
2742
|
+
# ], "condition": ` "title": "expirable access", "description": "Does not grant
|
2743
|
+
# access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:
|
2744
|
+
# 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:**
|
2745
|
+
# bindings: - members: - user:mike@example.com - group:admins@example.com -
|
2746
|
+
# domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com
|
2747
|
+
# role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.
|
2748
|
+
# com role: roles/resourcemanager.organizationViewer condition: title: expirable
|
2749
|
+
# access description: Does not grant access after Sep 2020 expression: request.
|
2750
|
+
# time < timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For
|
2751
|
+
# a description of IAM and its features, see the [IAM documentation](https://
|
2752
|
+
# cloud.google.com/iam/docs/).
|
2175
2753
|
# Corresponds to the JSON property `policy`
|
2176
2754
|
# @return [Google::Apis::GkehubV1alpha::Policy]
|
2177
2755
|
attr_accessor :policy
|
@@ -2194,6 +2772,31 @@ module Google
|
|
2194
2772
|
end
|
2195
2773
|
end
|
2196
2774
|
|
2775
|
+
# Status specifies state for the subcomponent.
|
2776
|
+
class Status
|
2777
|
+
include Google::Apis::Core::Hashable
|
2778
|
+
|
2779
|
+
# Code specifies AppDevExperienceFeature's subcomponent ready state.
|
2780
|
+
# Corresponds to the JSON property `code`
|
2781
|
+
# @return [String]
|
2782
|
+
attr_accessor :code
|
2783
|
+
|
2784
|
+
# Description is populated if Code is Failed, explaining why it has failed.
|
2785
|
+
# Corresponds to the JSON property `description`
|
2786
|
+
# @return [String]
|
2787
|
+
attr_accessor :description
|
2788
|
+
|
2789
|
+
def initialize(**args)
|
2790
|
+
update!(**args)
|
2791
|
+
end
|
2792
|
+
|
2793
|
+
# Update properties of this object
|
2794
|
+
def update!(**args)
|
2795
|
+
@code = args[:code] if args.key?(:code)
|
2796
|
+
@description = args[:description] if args.key?(:description)
|
2797
|
+
end
|
2798
|
+
end
|
2799
|
+
|
2197
2800
|
# Request message for `TestIamPermissions` method.
|
2198
2801
|
class TestIamPermissionsRequest
|
2199
2802
|
include Google::Apis::Core::Hashable
|
@@ -2233,6 +2836,32 @@ module Google
|
|
2233
2836
|
@permissions = args[:permissions] if args.key?(:permissions)
|
2234
2837
|
end
|
2235
2838
|
end
|
2839
|
+
|
2840
|
+
# TypeMeta is the type information needed for content unmarshalling of
|
2841
|
+
# Kubernetes resources in the manifest.
|
2842
|
+
class TypeMeta
|
2843
|
+
include Google::Apis::Core::Hashable
|
2844
|
+
|
2845
|
+
# APIVersion of the resource (e.g. v1).
|
2846
|
+
# Corresponds to the JSON property `apiVersion`
|
2847
|
+
# @return [String]
|
2848
|
+
attr_accessor :api_version
|
2849
|
+
|
2850
|
+
# Kind of the resource (e.g. Deployment).
|
2851
|
+
# Corresponds to the JSON property `kind`
|
2852
|
+
# @return [String]
|
2853
|
+
attr_accessor :kind
|
2854
|
+
|
2855
|
+
def initialize(**args)
|
2856
|
+
update!(**args)
|
2857
|
+
end
|
2858
|
+
|
2859
|
+
# Update properties of this object
|
2860
|
+
def update!(**args)
|
2861
|
+
@api_version = args[:api_version] if args.key?(:api_version)
|
2862
|
+
@kind = args[:kind] if args.key?(:kind)
|
2863
|
+
end
|
2864
|
+
end
|
2236
2865
|
end
|
2237
2866
|
end
|
2238
2867
|
end
|