google-apis-gkehub_v1alpha 0.10.0 → 0.14.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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
|