google-cloud-gke_hub-v1 0.1.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.
Files changed (35) hide show
  1. checksums.yaml +7 -0
  2. data/.yardopts +12 -0
  3. data/AUTHENTICATION.md +169 -0
  4. data/LICENSE.md +201 -0
  5. data/README.md +139 -0
  6. data/lib/google/cloud/gke_hub/v1/gke_hub/client.rb +1388 -0
  7. data/lib/google/cloud/gke_hub/v1/gke_hub/credentials.rb +51 -0
  8. data/lib/google/cloud/gke_hub/v1/gke_hub/operations.rb +664 -0
  9. data/lib/google/cloud/gke_hub/v1/gke_hub/paths.rb +88 -0
  10. data/lib/google/cloud/gke_hub/v1/gke_hub.rb +63 -0
  11. data/lib/google/cloud/gke_hub/v1/version.rb +28 -0
  12. data/lib/google/cloud/gke_hub/v1.rb +38 -0
  13. data/lib/google/cloud/gkehub/v1/configmanagement/configmanagement_pb.rb +179 -0
  14. data/lib/google/cloud/gkehub/v1/feature_pb.rb +86 -0
  15. data/lib/google/cloud/gkehub/v1/membership_pb.rb +77 -0
  16. data/lib/google/cloud/gkehub/v1/multiclusteringress/multiclusteringress_pb.rb +25 -0
  17. data/lib/google/cloud/gkehub/v1/service_pb.rb +135 -0
  18. data/lib/google/cloud/gkehub/v1/service_services_pb.rb +89 -0
  19. data/lib/google-cloud-gke_hub-v1.rb +21 -0
  20. data/proto_docs/README.md +4 -0
  21. data/proto_docs/google/api/field_behavior.rb +71 -0
  22. data/proto_docs/google/api/resource.rb +283 -0
  23. data/proto_docs/google/cloud/gkehub/v1/configmanagement/configmanagement.rb +446 -0
  24. data/proto_docs/google/cloud/gkehub/v1/feature.rb +230 -0
  25. data/proto_docs/google/cloud/gkehub/v1/membership.rb +229 -0
  26. data/proto_docs/google/cloud/gkehub/v1/multiclusteringress/multiclusteringress.rb +39 -0
  27. data/proto_docs/google/cloud/gkehub/v1/service.rb +473 -0
  28. data/proto_docs/google/longrunning/operations.rb +164 -0
  29. data/proto_docs/google/protobuf/any.rb +141 -0
  30. data/proto_docs/google/protobuf/duration.rb +98 -0
  31. data/proto_docs/google/protobuf/empty.rb +36 -0
  32. data/proto_docs/google/protobuf/field_mask.rb +229 -0
  33. data/proto_docs/google/protobuf/timestamp.rb +129 -0
  34. data/proto_docs/google/rpc/status.rb +46 -0
  35. metadata +225 -0
@@ -0,0 +1,229 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2021 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Cloud
22
+ module GkeHub
23
+ module V1
24
+ # Membership contains information about a member cluster.
25
+ # @!attribute [rw] endpoint
26
+ # @return [::Google::Cloud::GkeHub::V1::MembershipEndpoint]
27
+ # Optional. Endpoint information to reach this member.
28
+ # @!attribute [r] name
29
+ # @return [::String]
30
+ # Output only. The full, unique name of this Membership resource in the format
31
+ # `projects/*/locations/*/memberships/{membership_id}`, set during creation.
32
+ #
33
+ # `membership_id` must be a valid RFC 1123 compliant DNS label:
34
+ #
35
+ # 1. At most 63 characters in length
36
+ # 2. It must consist of lower case alphanumeric characters or `-`
37
+ # 3. It must start and end with an alphanumeric character
38
+ #
39
+ # Which can be expressed as the regex: `[a-z0-9]([-a-z0-9]*[a-z0-9])?`,
40
+ # with a maximum length of 63 characters.
41
+ # @!attribute [rw] labels
42
+ # @return [::Google::Protobuf::Map{::String => ::String}]
43
+ # Optional. GCP labels for this membership.
44
+ # @!attribute [r] description
45
+ # @return [::String]
46
+ # Output only. Description of this membership, limited to 63 characters.
47
+ # Must match the regex: `[a-zA-Z0-9][a-zA-Z0-9_\-\.\ ]*`
48
+ #
49
+ # This field is present for legacy purposes.
50
+ # @!attribute [r] state
51
+ # @return [::Google::Cloud::GkeHub::V1::MembershipState]
52
+ # Output only. State of the Membership resource.
53
+ # @!attribute [r] create_time
54
+ # @return [::Google::Protobuf::Timestamp]
55
+ # Output only. When the Membership was created.
56
+ # @!attribute [r] update_time
57
+ # @return [::Google::Protobuf::Timestamp]
58
+ # Output only. When the Membership was last updated.
59
+ # @!attribute [r] delete_time
60
+ # @return [::Google::Protobuf::Timestamp]
61
+ # Output only. When the Membership was deleted.
62
+ # @!attribute [rw] external_id
63
+ # @return [::String]
64
+ # Optional. An externally-generated and managed ID for this Membership. This ID may
65
+ # be modified after creation, but this is not recommended.
66
+ #
67
+ # The ID must match the regex: `[a-zA-Z0-9][a-zA-Z0-9_\-\.]*`
68
+ #
69
+ # If this Membership represents a Kubernetes cluster, this value should be
70
+ # set to the UID of the `kube-system` namespace object.
71
+ # @!attribute [r] last_connection_time
72
+ # @return [::Google::Protobuf::Timestamp]
73
+ # Output only. For clusters using Connect, the timestamp of the most recent connection
74
+ # established with Google Cloud. This time is updated every several minutes,
75
+ # not continuously. For clusters that do not use GKE Connect, or that have
76
+ # never connected successfully, this field will be unset.
77
+ # @!attribute [r] unique_id
78
+ # @return [::String]
79
+ # Output only. Google-generated UUID for this resource. This is unique across all
80
+ # Membership resources. If a Membership resource is deleted and another
81
+ # resource with the same name is created, it gets a different unique_id.
82
+ # @!attribute [rw] authority
83
+ # @return [::Google::Cloud::GkeHub::V1::Authority]
84
+ # Optional. How to identify workloads from this Membership.
85
+ # See the documentation on Workload Identity for more details:
86
+ # https://cloud.google.com/kubernetes-engine/docs/how-to/workload-identity
87
+ class Membership
88
+ include ::Google::Protobuf::MessageExts
89
+ extend ::Google::Protobuf::MessageExts::ClassMethods
90
+
91
+ # @!attribute [rw] key
92
+ # @return [::String]
93
+ # @!attribute [rw] value
94
+ # @return [::String]
95
+ class LabelsEntry
96
+ include ::Google::Protobuf::MessageExts
97
+ extend ::Google::Protobuf::MessageExts::ClassMethods
98
+ end
99
+ end
100
+
101
+ # MembershipEndpoint contains information needed to contact a Kubernetes API,
102
+ # endpoint and any additional Kubernetes metadata.
103
+ # @!attribute [rw] gke_cluster
104
+ # @return [::Google::Cloud::GkeHub::V1::GkeCluster]
105
+ # Optional. GKE-specific information. Only present if this Membership is a GKE cluster.
106
+ # @!attribute [r] kubernetes_metadata
107
+ # @return [::Google::Cloud::GkeHub::V1::KubernetesMetadata]
108
+ # Output only. Useful Kubernetes-specific metadata.
109
+ class MembershipEndpoint
110
+ include ::Google::Protobuf::MessageExts
111
+ extend ::Google::Protobuf::MessageExts::ClassMethods
112
+ end
113
+
114
+ # GkeCluster contains information specific to GKE clusters.
115
+ # @!attribute [rw] resource_link
116
+ # @return [::String]
117
+ # Immutable. Self-link of the GCP resource for the GKE cluster. For example:
118
+ #
119
+ # //container.googleapis.com/projects/my-project/locations/us-west1-a/clusters/my-cluster
120
+ #
121
+ # Zonal clusters are also supported.
122
+ class GkeCluster
123
+ include ::Google::Protobuf::MessageExts
124
+ extend ::Google::Protobuf::MessageExts::ClassMethods
125
+ end
126
+
127
+ # KubernetesMetadata provides informational metadata for Memberships
128
+ # representing Kubernetes clusters.
129
+ # @!attribute [r] kubernetes_api_server_version
130
+ # @return [::String]
131
+ # Output only. Kubernetes API server version string as reported by `/version`.
132
+ # @!attribute [r] node_provider_id
133
+ # @return [::String]
134
+ # Output only. Node providerID as reported by the first node in the list of nodes on
135
+ # the Kubernetes endpoint. On Kubernetes platforms that support zero-node
136
+ # clusters (like GKE-on-GCP), the node_count will be zero and the
137
+ # node_provider_id will be empty.
138
+ # @!attribute [r] node_count
139
+ # @return [::Integer]
140
+ # Output only. Node count as reported by Kubernetes nodes resources.
141
+ # @!attribute [r] vcpu_count
142
+ # @return [::Integer]
143
+ # Output only. vCPU count as reported by Kubernetes nodes resources.
144
+ # @!attribute [r] memory_mb
145
+ # @return [::Integer]
146
+ # Output only. The total memory capacity as reported by the sum of all Kubernetes nodes
147
+ # resources, defined in MB.
148
+ # @!attribute [r] update_time
149
+ # @return [::Google::Protobuf::Timestamp]
150
+ # Output only. The time at which these details were last updated. This update_time is
151
+ # different from the Membership-level update_time since EndpointDetails are
152
+ # updated internally for API consumers.
153
+ class KubernetesMetadata
154
+ include ::Google::Protobuf::MessageExts
155
+ extend ::Google::Protobuf::MessageExts::ClassMethods
156
+ end
157
+
158
+ # MembershipState describes the state of a Membership resource.
159
+ # @!attribute [r] code
160
+ # @return [::Google::Cloud::GkeHub::V1::MembershipState::Code]
161
+ # Output only. The current state of the Membership resource.
162
+ class MembershipState
163
+ include ::Google::Protobuf::MessageExts
164
+ extend ::Google::Protobuf::MessageExts::ClassMethods
165
+
166
+ # Code describes the state of a Membership resource.
167
+ module Code
168
+ # The code is not set.
169
+ CODE_UNSPECIFIED = 0
170
+
171
+ # The cluster is being registered.
172
+ CREATING = 1
173
+
174
+ # The cluster is registered.
175
+ READY = 2
176
+
177
+ # The cluster is being unregistered.
178
+ DELETING = 3
179
+
180
+ # The Membership is being updated.
181
+ UPDATING = 4
182
+
183
+ # The Membership is being updated by the Hub Service.
184
+ SERVICE_UPDATING = 5
185
+ end
186
+ end
187
+
188
+ # Authority encodes how Google will recognize identities from this Membership.
189
+ # See the workload identity documentation for more details:
190
+ # https://cloud.google.com/kubernetes-engine/docs/how-to/workload-identity
191
+ # @!attribute [rw] issuer
192
+ # @return [::String]
193
+ # Optional. A JSON Web Token (JWT) issuer URI. `issuer` must start with `https://` and
194
+ # be a valid URL with length <2000 characters.
195
+ #
196
+ # If set, then Google will allow valid OIDC tokens from this issuer to
197
+ # authenticate within the workload_identity_pool. OIDC discovery will be
198
+ # performed on this URI to validate tokens from the issuer.
199
+ #
200
+ # Clearing `issuer` disables Workload Identity. `issuer` cannot be directly
201
+ # modified; it must be cleared (and Workload Identity disabled) before using
202
+ # a new issuer (and re-enabling Workload Identity).
203
+ # @!attribute [r] workload_identity_pool
204
+ # @return [::String]
205
+ # Output only. The name of the workload identity pool in which `issuer` will be
206
+ # recognized.
207
+ #
208
+ # There is a single Workload Identity Pool per Hub that is shared
209
+ # between all Memberships that belong to that Hub. For a Hub hosted in
210
+ # \\{PROJECT_ID}, the workload pool format is `{PROJECT_ID}.hub.id.goog`,
211
+ # although this is subject to change in newer versions of this API.
212
+ # @!attribute [r] identity_provider
213
+ # @return [::String]
214
+ # Output only. An identity provider that reflects the `issuer` in the workload identity
215
+ # pool.
216
+ # @!attribute [rw] oidc_jwks
217
+ # @return [::String]
218
+ # Optional. OIDC verification keys for this Membership in JWKS format (RFC 7517).
219
+ #
220
+ # When this field is set, OIDC discovery will NOT be performed on `issuer`,
221
+ # and instead OIDC tokens will be validated using this field.
222
+ class Authority
223
+ include ::Google::Protobuf::MessageExts
224
+ extend ::Google::Protobuf::MessageExts::ClassMethods
225
+ end
226
+ end
227
+ end
228
+ end
229
+ end
@@ -0,0 +1,39 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2021 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Cloud
22
+ module GkeHub
23
+ module MultiClusterIngress
24
+ module V1
25
+ # **Multi-cluster Ingress**: The configuration for the MultiClusterIngress
26
+ # feature.
27
+ # @!attribute [rw] config_membership
28
+ # @return [::String]
29
+ # Fully-qualified Membership name which hosts the MultiClusterIngress CRD.
30
+ # Example: `projects/foo-proj/locations/global/memberships/bar`
31
+ class FeatureSpec
32
+ include ::Google::Protobuf::MessageExts
33
+ extend ::Google::Protobuf::MessageExts::ClassMethods
34
+ end
35
+ end
36
+ end
37
+ end
38
+ end
39
+ end