google-cloud-gke_hub-v1 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
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