google-cloud-container-v1 0.2.3 → 0.4.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1e87bc90cbb050e9698ecc8e09d0204e0f032eac0fc4c273ab8952068d344dc3
4
- data.tar.gz: 7c99151ea60e1f1000d59034ba8de849def7f603c6b7d5266548872ac57a8581
3
+ metadata.gz: 7f4f8b94dd8f80d552a65a635d6fd81610e277832b8a394789502d5b7924f91e
4
+ data.tar.gz: f5fd834067554b714721fce1651a1074e862ac9295a8a247be539430e0a955bf
5
5
  SHA512:
6
- metadata.gz: 32eed4da1f7313a6f688ce0713a5ab8b2c1dcc689ef34fd9b1351e9366eb7ec206e873da3ecfc328bf49f8b84235435a5708f56642c0f3db15199e18fb9c2cbd
7
- data.tar.gz: cdeb1d64b142342560c84ce35282e3d421aee13082e52091f3a48ae6d110b78861bf2a33dc701fb5952cc46ebdf2084bf97c7980a1d7a053c808f96c092d58c3
6
+ metadata.gz: 981b79482f8ef14314bb3481a2faee6af5a48e4b7f3c3a8b65bdb71f70efd974e9d62dc6f1210485a3b317bb81bc8be77ee22a22ef3b39dd3ebceddd366e1476
7
+ data.tar.gz: 56d6afd267a0d30b8dc5206b35619d6983c20d6aada07c2f93782f802c950ef277d58a5ef562084352a746fcade7cd7d3d6cdea2d2fce101b8e91efb64292398
data/README.md CHANGED
@@ -6,6 +6,12 @@ Builds and manages container-based applications, powered by the open source Kube
6
6
 
7
7
  https://github.com/googleapis/google-cloud-ruby
8
8
 
9
+ This gem is a _versioned_ client. It provides basic client classes for a
10
+ specific version of the Kubernetes Engine V1 API. Most users should consider using
11
+ the main client gem,
12
+ [google-cloud-container](https://rubygems.org/gems/google-cloud-container).
13
+ See the section below titled *Which client should I use?* for more information.
14
+
9
15
  ## Installation
10
16
 
11
17
  ```
@@ -73,3 +79,61 @@ in security maintenance, and not end of life. Currently, this means Ruby 2.4
73
79
  and later. Older versions of Ruby _may_ still work, but are unsupported and not
74
80
  recommended. See https://www.ruby-lang.org/en/downloads/branches/ for details
75
81
  about the Ruby support schedule.
82
+
83
+ ## Which client should I use?
84
+
85
+ Most modern Ruby client libraries for Google APIs come in two flavors: the main
86
+ client library with a name such as `google-cloud-container`,
87
+ and lower-level _versioned_ client libraries with names such as
88
+ `google-cloud-container-v1`.
89
+ _In most cases, you should install the main client._
90
+
91
+ ### What's the difference between the main client and a versioned client?
92
+
93
+ A _versioned client_ provides a basic set of data types and client classes for
94
+ a _single version_ of a specific service. (That is, for a service with multiple
95
+ versions, there might be a separate versioned client for each service version.)
96
+ Most versioned clients are written and maintained by a code generator.
97
+
98
+ The _main client_ is designed to provide you with the _recommended_ client
99
+ interfaces for the service. There will be only one main client for any given
100
+ service, even a service with multiple versions. The main client includes
101
+ factory methods for constructing the client objects we recommend for most
102
+ users. In some cases, those will be classes provided by an underlying versioned
103
+ client; in other cases, they will be handwritten higher-level client objects
104
+ with additional capabilities, convenience methods, or best practices built in.
105
+ Generally, the main client will default to a recommended service version,
106
+ although in some cases you can override this if you need to talk to a specific
107
+ service version.
108
+
109
+ ### Why would I want to use the main client?
110
+
111
+ We recommend that most users install the main client gem for a service. You can
112
+ identify this gem as the one _without_ a version in its name, e.g.
113
+ `google-cloud-container`.
114
+ The main client is recommended because it will embody the best practices for
115
+ accessing the service, and may also provide more convenient interfaces or
116
+ tighter integration into frameworks and third-party libraries. In addition, the
117
+ documentation and samples published by Google will generally demonstrate use of
118
+ the main client.
119
+
120
+ ### Why would I want to use a versioned client?
121
+
122
+ You can use a versioned client if you are content with a possibly lower-level
123
+ class interface, you explicitly want to avoid features provided by the main
124
+ client, or you want to access a specific service version not be covered by the
125
+ main client. You can identify versioned client gems because the service version
126
+ is part of the name, e.g. `google-cloud-container-v1`.
127
+
128
+ ### What about the google-apis-<name> clients?
129
+
130
+ Client library gems with names that begin with `google-apis-` are based on an
131
+ older code generation technology. They talk to a REST/JSON backend (whereas
132
+ most modern clients talk to a [gRPC](https://grpc.io/) backend) and they may
133
+ not offer the same performance, features, and ease of use provided by more
134
+ modern clients.
135
+
136
+ The `google-apis-` clients have wide coverage across Google services, so you
137
+ might need to use one if there is no modern client available for the service.
138
+ However, if a modern client is available, we generally recommend it over the
139
+ older `google-apis-` clients.
@@ -33,3 +33,6 @@ module Google
33
33
  end
34
34
  end
35
35
  end
36
+
37
+ helper_path = ::File.join __dir__, "v1", "_helpers.rb"
38
+ require "google/cloud/container/v1/_helpers" if ::File.file? helper_path
@@ -68,7 +68,7 @@ module Google
68
68
  initial_delay: 0.1,
69
69
  max_delay: 60.0,
70
70
  multiplier: 1.3,
71
- retry_codes: ["UNAVAILABLE", "DEADLINE_EXCEEDED"]
71
+ retry_codes: [14, 4]
72
72
  }
73
73
 
74
74
  default_config.rpcs.get_cluster.timeout = 20.0
@@ -76,7 +76,7 @@ module Google
76
76
  initial_delay: 0.1,
77
77
  max_delay: 60.0,
78
78
  multiplier: 1.3,
79
- retry_codes: ["UNAVAILABLE", "DEADLINE_EXCEEDED"]
79
+ retry_codes: [14, 4]
80
80
  }
81
81
 
82
82
  default_config.rpcs.create_cluster.timeout = 45.0
@@ -104,7 +104,7 @@ module Google
104
104
  initial_delay: 0.1,
105
105
  max_delay: 60.0,
106
106
  multiplier: 1.3,
107
- retry_codes: ["UNAVAILABLE", "DEADLINE_EXCEEDED"]
107
+ retry_codes: [14, 4]
108
108
  }
109
109
 
110
110
  default_config.rpcs.list_operations.timeout = 20.0
@@ -112,7 +112,7 @@ module Google
112
112
  initial_delay: 0.1,
113
113
  max_delay: 60.0,
114
114
  multiplier: 1.3,
115
- retry_codes: ["UNAVAILABLE", "DEADLINE_EXCEEDED"]
115
+ retry_codes: [14, 4]
116
116
  }
117
117
 
118
118
  default_config.rpcs.get_operation.timeout = 20.0
@@ -120,7 +120,7 @@ module Google
120
120
  initial_delay: 0.1,
121
121
  max_delay: 60.0,
122
122
  multiplier: 1.3,
123
- retry_codes: ["UNAVAILABLE", "DEADLINE_EXCEEDED"]
123
+ retry_codes: [14, 4]
124
124
  }
125
125
 
126
126
  default_config.rpcs.cancel_operation.timeout = 45.0
@@ -130,7 +130,7 @@ module Google
130
130
  initial_delay: 0.1,
131
131
  max_delay: 60.0,
132
132
  multiplier: 1.3,
133
- retry_codes: ["UNAVAILABLE", "DEADLINE_EXCEEDED"]
133
+ retry_codes: [14, 4]
134
134
  }
135
135
 
136
136
  default_config.rpcs.list_node_pools.timeout = 20.0
@@ -138,7 +138,7 @@ module Google
138
138
  initial_delay: 0.1,
139
139
  max_delay: 60.0,
140
140
  multiplier: 1.3,
141
- retry_codes: ["UNAVAILABLE", "DEADLINE_EXCEEDED"]
141
+ retry_codes: [14, 4]
142
142
  }
143
143
 
144
144
  default_config.rpcs.get_node_pool.timeout = 20.0
@@ -146,7 +146,7 @@ module Google
146
146
  initial_delay: 0.1,
147
147
  max_delay: 60.0,
148
148
  multiplier: 1.3,
149
- retry_codes: ["UNAVAILABLE", "DEADLINE_EXCEEDED"]
149
+ retry_codes: [14, 4]
150
150
  }
151
151
 
152
152
  default_config.rpcs.create_node_pool.timeout = 45.0
@@ -156,7 +156,7 @@ module Google
156
156
  initial_delay: 0.1,
157
157
  max_delay: 60.0,
158
158
  multiplier: 1.3,
159
- retry_codes: ["UNAVAILABLE", "DEADLINE_EXCEEDED"]
159
+ retry_codes: [14, 4]
160
160
  }
161
161
 
162
162
  default_config.rpcs.rollback_node_pool_upgrade.timeout = 45.0
@@ -238,7 +238,13 @@ module Google
238
238
 
239
239
  # Create credentials
240
240
  credentials = @config.credentials
241
- credentials ||= Credentials.default scope: @config.scope
241
+ # Use self-signed JWT if the scope and endpoint are unchanged from default,
242
+ # but only if the default endpoint does not have a region prefix.
243
+ enable_self_signed_jwt = @config.scope == Client.configure.scope &&
244
+ @config.endpoint == Client.configure.endpoint &&
245
+ !@config.endpoint.split(".").first.include?("-")
246
+ credentials ||= Credentials.default scope: @config.scope,
247
+ enable_self_signed_jwt: enable_self_signed_jwt
242
248
  if credentials.is_a?(String) || credentials.is_a?(Hash)
243
249
  credentials = Credentials.new credentials, scope: @config.scope
244
250
  end
@@ -281,9 +287,9 @@ module Google
281
287
  # This field has been deprecated and replaced by the parent field.
282
288
  # @param zone [::String]
283
289
  # Deprecated. The name of the Google Compute Engine
284
- # [zone](https://cloud.google.com/compute/docs/zones#available) in which the cluster
285
- # resides, or "-" for all zones.
286
- # This field has been deprecated and replaced by the parent field.
290
+ # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
291
+ # cluster resides, or "-" for all zones. This field has been deprecated and
292
+ # replaced by the parent field.
287
293
  # @param parent [::String]
288
294
  # The parent (project and location) where the clusters will be listed.
289
295
  # Specified in the format `projects/*/locations/*`.
@@ -358,9 +364,9 @@ module Google
358
364
  # This field has been deprecated and replaced by the name field.
359
365
  # @param zone [::String]
360
366
  # Deprecated. The name of the Google Compute Engine
361
- # [zone](https://cloud.google.com/compute/docs/zones#available) in which the cluster
362
- # resides.
363
- # This field has been deprecated and replaced by the name field.
367
+ # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
368
+ # cluster resides. This field has been deprecated and replaced by the name
369
+ # field.
364
370
  # @param cluster_id [::String]
365
371
  # Deprecated. The name of the cluster to retrieve.
366
372
  # This field has been deprecated and replaced by the name field.
@@ -418,7 +424,8 @@ module Google
418
424
  # Compute Engine instances.
419
425
  #
420
426
  # By default, the cluster is created in the project's
421
- # [default network](https://cloud.google.com/compute/docs/networks-and-firewalls#networks).
427
+ # [default
428
+ # network](https://cloud.google.com/compute/docs/networks-and-firewalls#networks).
422
429
  #
423
430
  # One firewall is added for the cluster. After cluster creation,
424
431
  # the Kubelet creates routes for each node to allow the containers
@@ -449,12 +456,12 @@ module Google
449
456
  # This field has been deprecated and replaced by the parent field.
450
457
  # @param zone [::String]
451
458
  # Deprecated. The name of the Google Compute Engine
452
- # [zone](https://cloud.google.com/compute/docs/zones#available) in which the cluster
453
- # resides.
454
- # This field has been deprecated and replaced by the parent field.
459
+ # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
460
+ # cluster resides. This field has been deprecated and replaced by the parent
461
+ # field.
455
462
  # @param cluster [::Google::Cloud::Container::V1::Cluster, ::Hash]
456
463
  # Required. A [cluster
457
- # resource](https://cloud.google.com/container-engine/reference/rest/v1/projects.zones.clusters)
464
+ # resource](https://cloud.google.com/container-engine/reference/rest/v1/projects.locations.clusters)
458
465
  # @param parent [::String]
459
466
  # The parent (project and location) where the cluster will be created.
460
467
  # Specified in the format `projects/*/locations/*`.
@@ -528,9 +535,9 @@ module Google
528
535
  # This field has been deprecated and replaced by the name field.
529
536
  # @param zone [::String]
530
537
  # Deprecated. The name of the Google Compute Engine
531
- # [zone](https://cloud.google.com/compute/docs/zones#available) in which the cluster
532
- # resides.
533
- # This field has been deprecated and replaced by the name field.
538
+ # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
539
+ # cluster resides. This field has been deprecated and replaced by the name
540
+ # field.
534
541
  # @param cluster_id [::String]
535
542
  # Deprecated. The name of the cluster to upgrade.
536
543
  # This field has been deprecated and replaced by the name field.
@@ -598,7 +605,7 @@ module Google
598
605
  # @param options [::Gapic::CallOptions, ::Hash]
599
606
  # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
600
607
  #
601
- # @overload update_node_pool(project_id: nil, zone: nil, cluster_id: nil, node_pool_id: nil, node_version: nil, image_type: nil, name: nil)
608
+ # @overload update_node_pool(project_id: nil, zone: nil, cluster_id: nil, node_pool_id: nil, node_version: nil, image_type: nil, name: nil, locations: nil, workload_metadata_config: nil, upgrade_settings: nil)
602
609
  # Pass arguments to `update_node_pool` via keyword arguments. Note that at
603
610
  # least one keyword argument is required. To specify no parameters, or to keep all
604
611
  # the default parameter values, pass an empty Hash as a request object (see above).
@@ -609,9 +616,9 @@ module Google
609
616
  # This field has been deprecated and replaced by the name field.
610
617
  # @param zone [::String]
611
618
  # Deprecated. The name of the Google Compute Engine
612
- # [zone](https://cloud.google.com/compute/docs/zones#available) in which the cluster
613
- # resides.
614
- # This field has been deprecated and replaced by the name field.
619
+ # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
620
+ # cluster resides. This field has been deprecated and replaced by the name
621
+ # field.
615
622
  # @param cluster_id [::String]
616
623
  # Deprecated. The name of the cluster to upgrade.
617
624
  # This field has been deprecated and replaced by the name field.
@@ -636,6 +643,16 @@ module Google
636
643
  # The name (project, location, cluster, node pool) of the node pool to
637
644
  # update. Specified in the format
638
645
  # `projects/*/locations/*/clusters/*/nodePools/*`.
646
+ # @param locations [::Array<::String>]
647
+ # The desired list of Google Compute Engine
648
+ # [zones](https://cloud.google.com/compute/docs/zones#available) in which the
649
+ # node pool's nodes should be located. Changing the locations for a node pool
650
+ # will result in nodes being either created or removed from the node pool,
651
+ # depending on whether locations are being added or removed.
652
+ # @param workload_metadata_config [::Google::Cloud::Container::V1::WorkloadMetadataConfig, ::Hash]
653
+ # The desired workload metadata config for the node pool.
654
+ # @param upgrade_settings [::Google::Cloud::Container::V1::NodePool::UpgradeSettings, ::Hash]
655
+ # Upgrade settings control disruption and speed of the upgrade.
639
656
  #
640
657
  # @yield [response, operation] Access the result along with the RPC operation
641
658
  # @yieldparam response [::Google::Cloud::Container::V1::Operation]
@@ -706,9 +723,9 @@ module Google
706
723
  # This field has been deprecated and replaced by the name field.
707
724
  # @param zone [::String]
708
725
  # Deprecated. The name of the Google Compute Engine
709
- # [zone](https://cloud.google.com/compute/docs/zones#available) in which the cluster
710
- # resides.
711
- # This field has been deprecated and replaced by the name field.
726
+ # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
727
+ # cluster resides. This field has been deprecated and replaced by the name
728
+ # field.
712
729
  # @param cluster_id [::String]
713
730
  # Deprecated. The name of the cluster to upgrade.
714
731
  # This field has been deprecated and replaced by the name field.
@@ -791,18 +808,24 @@ module Google
791
808
  # This field has been deprecated and replaced by the name field.
792
809
  # @param zone [::String]
793
810
  # Deprecated. The name of the Google Compute Engine
794
- # [zone](https://cloud.google.com/compute/docs/zones#available) in which the cluster
795
- # resides.
796
- # This field has been deprecated and replaced by the name field.
811
+ # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
812
+ # cluster resides. This field has been deprecated and replaced by the name
813
+ # field.
797
814
  # @param cluster_id [::String]
798
815
  # Deprecated. The name of the cluster to upgrade.
799
816
  # This field has been deprecated and replaced by the name field.
800
817
  # @param logging_service [::String]
801
- # Required. The logging service the cluster should use to write metrics.
818
+ # Required. The logging service the cluster should use to write logs.
802
819
  # Currently available options:
803
820
  #
804
- # * "logging.googleapis.com" - the Google Cloud Logging service
805
- # * "none" - no metrics will be exported from the cluster
821
+ # * `logging.googleapis.com/kubernetes` - The Cloud Logging
822
+ # service with a Kubernetes-native resource model
823
+ # * `logging.googleapis.com` - The legacy Cloud Logging service (no longer
824
+ # available as of GKE 1.15).
825
+ # * `none` - no logs will be exported from the cluster.
826
+ #
827
+ # If left as an empty string,`logging.googleapis.com/kubernetes` will be
828
+ # used for GKE 1.14+ or `logging.googleapis.com` for earlier versions.
806
829
  # @param name [::String]
807
830
  # The name (project, location, cluster) of the cluster to set logging.
808
831
  # Specified in the format `projects/*/locations/*/clusters/*`.
@@ -876,9 +899,9 @@ module Google
876
899
  # This field has been deprecated and replaced by the name field.
877
900
  # @param zone [::String]
878
901
  # Deprecated. The name of the Google Compute Engine
879
- # [zone](https://cloud.google.com/compute/docs/zones#available) in which the cluster
880
- # resides.
881
- # This field has been deprecated and replaced by the name field.
902
+ # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
903
+ # cluster resides. This field has been deprecated and replaced by the name
904
+ # field.
882
905
  # @param cluster_id [::String]
883
906
  # Deprecated. The name of the cluster to upgrade.
884
907
  # This field has been deprecated and replaced by the name field.
@@ -886,10 +909,14 @@ module Google
886
909
  # Required. The monitoring service the cluster should use to write metrics.
887
910
  # Currently available options:
888
911
  #
889
- # * "monitoring.googleapis.com/kubernetes" - the Google Cloud Monitoring
890
- # service with Kubernetes-native resource model
891
- # * "monitoring.googleapis.com" - the Google Cloud Monitoring service
892
- # * "none" - no metrics will be exported from the cluster
912
+ # * "monitoring.googleapis.com/kubernetes" - The Cloud Monitoring
913
+ # service with a Kubernetes-native resource model
914
+ # * `monitoring.googleapis.com` - The legacy Cloud Monitoring service (no
915
+ # longer available as of GKE 1.15).
916
+ # * `none` - No metrics will be exported from the cluster.
917
+ #
918
+ # If left as an empty string,`monitoring.googleapis.com/kubernetes` will be
919
+ # used for GKE 1.14+ or `monitoring.googleapis.com` for earlier versions.
893
920
  # @param name [::String]
894
921
  # The name (project, location, cluster) of the cluster to set monitoring.
895
922
  # Specified in the format `projects/*/locations/*/clusters/*`.
@@ -963,9 +990,9 @@ module Google
963
990
  # This field has been deprecated and replaced by the name field.
964
991
  # @param zone [::String]
965
992
  # Deprecated. The name of the Google Compute Engine
966
- # [zone](https://cloud.google.com/compute/docs/zones#available) in which the cluster
967
- # resides.
968
- # This field has been deprecated and replaced by the name field.
993
+ # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
994
+ # cluster resides. This field has been deprecated and replaced by the name
995
+ # field.
969
996
  # @param cluster_id [::String]
970
997
  # Deprecated. The name of the cluster to upgrade.
971
998
  # This field has been deprecated and replaced by the name field.
@@ -1023,6 +1050,9 @@ module Google
1023
1050
 
1024
1051
  ##
1025
1052
  # Sets the locations for a specific cluster.
1053
+ # Deprecated. Use
1054
+ # [projects.locations.clusters.update](https://cloud.google.com/kubernetes-engine/docs/reference/rest/v1/projects.locations.clusters/update)
1055
+ # instead.
1026
1056
  #
1027
1057
  # @overload set_locations(request, options = nil)
1028
1058
  # Pass arguments to `set_locations` via a request object, either of type
@@ -1045,18 +1075,18 @@ module Google
1045
1075
  # This field has been deprecated and replaced by the name field.
1046
1076
  # @param zone [::String]
1047
1077
  # Deprecated. The name of the Google Compute Engine
1048
- # [zone](https://cloud.google.com/compute/docs/zones#available) in which the cluster
1049
- # resides.
1050
- # This field has been deprecated and replaced by the name field.
1078
+ # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
1079
+ # cluster resides. This field has been deprecated and replaced by the name
1080
+ # field.
1051
1081
  # @param cluster_id [::String]
1052
1082
  # Deprecated. The name of the cluster to upgrade.
1053
1083
  # This field has been deprecated and replaced by the name field.
1054
1084
  # @param locations [::Array<::String>]
1055
1085
  # Required. The desired list of Google Compute Engine
1056
- # [zones](https://cloud.google.com/compute/docs/zones#available) in which the cluster's nodes
1057
- # should be located. Changing the locations a cluster is in will result
1058
- # in nodes being either created or removed from the cluster, depending on
1059
- # whether locations are being added or removed.
1086
+ # [zones](https://cloud.google.com/compute/docs/zones#available) in which the
1087
+ # cluster's nodes should be located. Changing the locations a cluster is in
1088
+ # will result in nodes being either created or removed from the cluster,
1089
+ # depending on whether locations are being added or removed.
1060
1090
  #
1061
1091
  # This list must always include the cluster's primary zone.
1062
1092
  # @param name [::String]
@@ -1132,9 +1162,9 @@ module Google
1132
1162
  # This field has been deprecated and replaced by the name field.
1133
1163
  # @param zone [::String]
1134
1164
  # Deprecated. The name of the Google Compute Engine
1135
- # [zone](https://cloud.google.com/compute/docs/zones#available) in which the cluster
1136
- # resides.
1137
- # This field has been deprecated and replaced by the name field.
1165
+ # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
1166
+ # cluster resides. This field has been deprecated and replaced by the name
1167
+ # field.
1138
1168
  # @param cluster_id [::String]
1139
1169
  # Deprecated. The name of the cluster to upgrade.
1140
1170
  # This field has been deprecated and replaced by the name field.
@@ -1224,9 +1254,9 @@ module Google
1224
1254
  # This field has been deprecated and replaced by the name field.
1225
1255
  # @param zone [::String]
1226
1256
  # Deprecated. The name of the Google Compute Engine
1227
- # [zone](https://cloud.google.com/compute/docs/zones#available) in which the cluster
1228
- # resides.
1229
- # This field has been deprecated and replaced by the name field.
1257
+ # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
1258
+ # cluster resides. This field has been deprecated and replaced by the name
1259
+ # field.
1230
1260
  # @param cluster_id [::String]
1231
1261
  # Deprecated. The name of the cluster to upgrade.
1232
1262
  # This field has been deprecated and replaced by the name field.
@@ -1315,9 +1345,9 @@ module Google
1315
1345
  # This field has been deprecated and replaced by the name field.
1316
1346
  # @param zone [::String]
1317
1347
  # Deprecated. The name of the Google Compute Engine
1318
- # [zone](https://cloud.google.com/compute/docs/zones#available) in which the cluster
1319
- # resides.
1320
- # This field has been deprecated and replaced by the name field.
1348
+ # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
1349
+ # cluster resides. This field has been deprecated and replaced by the name
1350
+ # field.
1321
1351
  # @param cluster_id [::String]
1322
1352
  # Deprecated. The name of the cluster to delete.
1323
1353
  # This field has been deprecated and replaced by the name field.
@@ -1394,8 +1424,9 @@ module Google
1394
1424
  # This field has been deprecated and replaced by the parent field.
1395
1425
  # @param zone [::String]
1396
1426
  # Deprecated. The name of the Google Compute Engine
1397
- # [zone](https://cloud.google.com/compute/docs/zones#available) to return operations for, or `-` for
1398
- # all zones. This field has been deprecated and replaced by the parent field.
1427
+ # [zone](https://cloud.google.com/compute/docs/zones#available) to return
1428
+ # operations for, or `-` for all zones. This field has been deprecated and
1429
+ # replaced by the parent field.
1399
1430
  # @param parent [::String]
1400
1431
  # The parent (project and location) where the operations will be listed.
1401
1432
  # Specified in the format `projects/*/locations/*`.
@@ -1470,9 +1501,9 @@ module Google
1470
1501
  # This field has been deprecated and replaced by the name field.
1471
1502
  # @param zone [::String]
1472
1503
  # Deprecated. The name of the Google Compute Engine
1473
- # [zone](https://cloud.google.com/compute/docs/zones#available) in which the cluster
1474
- # resides.
1475
- # This field has been deprecated and replaced by the name field.
1504
+ # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
1505
+ # cluster resides. This field has been deprecated and replaced by the name
1506
+ # field.
1476
1507
  # @param operation_id [::String]
1477
1508
  # Deprecated. The server-assigned `name` of the operation.
1478
1509
  # This field has been deprecated and replaced by the name field.
@@ -1549,8 +1580,9 @@ module Google
1549
1580
  # This field has been deprecated and replaced by the name field.
1550
1581
  # @param zone [::String]
1551
1582
  # Deprecated. The name of the Google Compute Engine
1552
- # [zone](https://cloud.google.com/compute/docs/zones#available) in which the operation resides.
1553
- # This field has been deprecated and replaced by the name field.
1583
+ # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
1584
+ # operation resides. This field has been deprecated and replaced by the name
1585
+ # field.
1554
1586
  # @param operation_id [::String]
1555
1587
  # Deprecated. The server-assigned `name` of the operation.
1556
1588
  # This field has been deprecated and replaced by the name field.
@@ -1627,8 +1659,9 @@ module Google
1627
1659
  # This field has been deprecated and replaced by the name field.
1628
1660
  # @param zone [::String]
1629
1661
  # Deprecated. The name of the Google Compute Engine
1630
- # [zone](https://cloud.google.com/compute/docs/zones#available) to return operations for.
1631
- # This field has been deprecated and replaced by the name field.
1662
+ # [zone](https://cloud.google.com/compute/docs/zones#available) to return
1663
+ # operations for. This field has been deprecated and replaced by the name
1664
+ # field.
1632
1665
  # @param name [::String]
1633
1666
  # The name (project and location) of the server config to get,
1634
1667
  # specified in the format `projects/*/locations/*`.
@@ -1678,6 +1711,76 @@ module Google
1678
1711
  raise ::Google::Cloud::Error.from_error(e)
1679
1712
  end
1680
1713
 
1714
+ ##
1715
+ # Gets the public component of the cluster signing keys in
1716
+ # JSON Web Key format.
1717
+ # This API is not yet intended for general use, and is not available for all
1718
+ # clusters.
1719
+ #
1720
+ # @overload get_json_web_keys(request, options = nil)
1721
+ # Pass arguments to `get_json_web_keys` via a request object, either of type
1722
+ # {::Google::Cloud::Container::V1::GetJSONWebKeysRequest} or an equivalent Hash.
1723
+ #
1724
+ # @param request [::Google::Cloud::Container::V1::GetJSONWebKeysRequest, ::Hash]
1725
+ # A request object representing the call parameters. Required. To specify no
1726
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
1727
+ # @param options [::Gapic::CallOptions, ::Hash]
1728
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1729
+ #
1730
+ # @overload get_json_web_keys(parent: nil)
1731
+ # Pass arguments to `get_json_web_keys` via keyword arguments. Note that at
1732
+ # least one keyword argument is required. To specify no parameters, or to keep all
1733
+ # the default parameter values, pass an empty Hash as a request object (see above).
1734
+ #
1735
+ # @param parent [::String]
1736
+ # The cluster (project, location, cluster id) to get keys for. Specified in
1737
+ # the format `projects/*/locations/*/clusters/*`.
1738
+ #
1739
+ # @yield [response, operation] Access the result along with the RPC operation
1740
+ # @yieldparam response [::Google::Cloud::Container::V1::GetJSONWebKeysResponse]
1741
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
1742
+ #
1743
+ # @return [::Google::Cloud::Container::V1::GetJSONWebKeysResponse]
1744
+ #
1745
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
1746
+ #
1747
+ def get_json_web_keys request, options = nil
1748
+ raise ::ArgumentError, "request must be provided" if request.nil?
1749
+
1750
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Container::V1::GetJSONWebKeysRequest
1751
+
1752
+ # Converts hash and nil to an options object
1753
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1754
+
1755
+ # Customize the options with defaults
1756
+ metadata = @config.rpcs.get_json_web_keys.metadata.to_h
1757
+
1758
+ # Set x-goog-api-client and x-goog-user-project headers
1759
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1760
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1761
+ gapic_version: ::Google::Cloud::Container::V1::VERSION
1762
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1763
+
1764
+ header_params = {
1765
+ "parent" => request.parent
1766
+ }
1767
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
1768
+ metadata[:"x-goog-request-params"] ||= request_params_header
1769
+
1770
+ options.apply_defaults timeout: @config.rpcs.get_json_web_keys.timeout,
1771
+ metadata: metadata,
1772
+ retry_policy: @config.rpcs.get_json_web_keys.retry_policy
1773
+ options.apply_defaults metadata: @config.metadata,
1774
+ retry_policy: @config.retry_policy
1775
+
1776
+ @cluster_manager_stub.call_rpc :get_json_web_keys, request, options: options do |response, operation|
1777
+ yield response, operation if block_given?
1778
+ return response
1779
+ end
1780
+ rescue ::GRPC::BadStatus => e
1781
+ raise ::Google::Cloud::Error.from_error(e)
1782
+ end
1783
+
1681
1784
  ##
1682
1785
  # Lists the node pools for a cluster.
1683
1786
  #
@@ -1702,9 +1805,9 @@ module Google
1702
1805
  # This field has been deprecated and replaced by the parent field.
1703
1806
  # @param zone [::String]
1704
1807
  # Deprecated. The name of the Google Compute Engine
1705
- # [zone](https://cloud.google.com/compute/docs/zones#available) in which the cluster
1706
- # resides.
1707
- # This field has been deprecated and replaced by the parent field.
1808
+ # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
1809
+ # cluster resides. This field has been deprecated and replaced by the parent
1810
+ # field.
1708
1811
  # @param cluster_id [::String]
1709
1812
  # Deprecated. The name of the cluster.
1710
1813
  # This field has been deprecated and replaced by the parent field.
@@ -1781,9 +1884,9 @@ module Google
1781
1884
  # This field has been deprecated and replaced by the name field.
1782
1885
  # @param zone [::String]
1783
1886
  # Deprecated. The name of the Google Compute Engine
1784
- # [zone](https://cloud.google.com/compute/docs/zones#available) in which the cluster
1785
- # resides.
1786
- # This field has been deprecated and replaced by the name field.
1887
+ # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
1888
+ # cluster resides. This field has been deprecated and replaced by the name
1889
+ # field.
1787
1890
  # @param cluster_id [::String]
1788
1891
  # Deprecated. The name of the cluster.
1789
1892
  # This field has been deprecated and replaced by the name field.
@@ -1864,9 +1967,9 @@ module Google
1864
1967
  # This field has been deprecated and replaced by the parent field.
1865
1968
  # @param zone [::String]
1866
1969
  # Deprecated. The name of the Google Compute Engine
1867
- # [zone](https://cloud.google.com/compute/docs/zones#available) in which the cluster
1868
- # resides.
1869
- # This field has been deprecated and replaced by the parent field.
1970
+ # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
1971
+ # cluster resides. This field has been deprecated and replaced by the parent
1972
+ # field.
1870
1973
  # @param cluster_id [::String]
1871
1974
  # Deprecated. The name of the cluster.
1872
1975
  # This field has been deprecated and replaced by the parent field.
@@ -1946,9 +2049,9 @@ module Google
1946
2049
  # This field has been deprecated and replaced by the name field.
1947
2050
  # @param zone [::String]
1948
2051
  # Deprecated. The name of the Google Compute Engine
1949
- # [zone](https://cloud.google.com/compute/docs/zones#available) in which the cluster
1950
- # resides.
1951
- # This field has been deprecated and replaced by the name field.
2052
+ # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
2053
+ # cluster resides. This field has been deprecated and replaced by the name
2054
+ # field.
1952
2055
  # @param cluster_id [::String]
1953
2056
  # Deprecated. The name of the cluster.
1954
2057
  # This field has been deprecated and replaced by the name field.
@@ -2030,9 +2133,9 @@ module Google
2030
2133
  # This field has been deprecated and replaced by the name field.
2031
2134
  # @param zone [::String]
2032
2135
  # Deprecated. The name of the Google Compute Engine
2033
- # [zone](https://cloud.google.com/compute/docs/zones#available) in which the cluster
2034
- # resides.
2035
- # This field has been deprecated and replaced by the name field.
2136
+ # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
2137
+ # cluster resides. This field has been deprecated and replaced by the name
2138
+ # field.
2036
2139
  # @param cluster_id [::String]
2037
2140
  # Deprecated. The name of the cluster to rollback.
2038
2141
  # This field has been deprecated and replaced by the name field.
@@ -2113,9 +2216,9 @@ module Google
2113
2216
  # This field has been deprecated and replaced by the name field.
2114
2217
  # @param zone [::String]
2115
2218
  # Deprecated. The name of the Google Compute Engine
2116
- # [zone](https://cloud.google.com/compute/docs/zones#available) in which the cluster
2117
- # resides.
2118
- # This field has been deprecated and replaced by the name field.
2219
+ # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
2220
+ # cluster resides. This field has been deprecated and replaced by the name
2221
+ # field.
2119
2222
  # @param cluster_id [::String]
2120
2223
  # Deprecated. The name of the cluster to update.
2121
2224
  # This field has been deprecated and replaced by the name field.
@@ -2198,9 +2301,9 @@ module Google
2198
2301
  # This field has been deprecated and replaced by the name field.
2199
2302
  # @param zone [::String]
2200
2303
  # Deprecated. The name of the Google Compute Engine
2201
- # [zone](https://cloud.google.com/compute/docs/zones#available) in which the cluster
2202
- # resides.
2203
- # This field has been deprecated and replaced by the name field.
2304
+ # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
2305
+ # cluster resides. This field has been deprecated and replaced by the name
2306
+ # field.
2204
2307
  # @param cluster_id [::String]
2205
2308
  # Deprecated. The name of the cluster.
2206
2309
  # This field has been deprecated and replaced by the name field.
@@ -2211,7 +2314,7 @@ module Google
2211
2314
  # used to detect conflicts. The fingerprint is initially generated by
2212
2315
  # Kubernetes Engine and changes after every request to modify or update
2213
2316
  # labels. You must always provide an up-to-date fingerprint hash when
2214
- # updating or changing labels. Make a <code>get()</code> request to the
2317
+ # updating or changing labels. Make a `get()` request to the
2215
2318
  # resource to get the latest fingerprint.
2216
2319
  # @param name [::String]
2217
2320
  # The name (project, location, cluster id) of the cluster to set labels.
@@ -2286,9 +2389,9 @@ module Google
2286
2389
  # This field has been deprecated and replaced by the name field.
2287
2390
  # @param zone [::String]
2288
2391
  # Deprecated. The name of the Google Compute Engine
2289
- # [zone](https://cloud.google.com/compute/docs/zones#available) in which the cluster
2290
- # resides.
2291
- # This field has been deprecated and replaced by the name field.
2392
+ # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
2393
+ # cluster resides. This field has been deprecated and replaced by the name
2394
+ # field.
2292
2395
  # @param cluster_id [::String]
2293
2396
  # Deprecated. The name of the cluster to update.
2294
2397
  # This field has been deprecated and replaced by the name field.
@@ -2367,9 +2470,9 @@ module Google
2367
2470
  # This field has been deprecated and replaced by the name field.
2368
2471
  # @param zone [::String]
2369
2472
  # Deprecated. The name of the Google Compute Engine
2370
- # [zone](https://cloud.google.com/compute/docs/zones#available) in which the cluster
2371
- # resides.
2372
- # This field has been deprecated and replaced by the name field.
2473
+ # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
2474
+ # cluster resides. This field has been deprecated and replaced by the name
2475
+ # field.
2373
2476
  # @param cluster_id [::String]
2374
2477
  # Deprecated. The name of the cluster.
2375
2478
  # This field has been deprecated and replaced by the name field.
@@ -2448,9 +2551,9 @@ module Google
2448
2551
  # This field has been deprecated and replaced by the name field.
2449
2552
  # @param zone [::String]
2450
2553
  # Deprecated. The name of the Google Compute Engine
2451
- # [zone](https://cloud.google.com/compute/docs/zones#available) in which the cluster
2452
- # resides.
2453
- # This field has been deprecated and replaced by the name field.
2554
+ # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
2555
+ # cluster resides. This field has been deprecated and replaced by the name
2556
+ # field.
2454
2557
  # @param cluster_id [::String]
2455
2558
  # Deprecated. The name of the cluster.
2456
2559
  # This field has been deprecated and replaced by the name field.
@@ -2527,9 +2630,9 @@ module Google
2527
2630
  # This field has been deprecated and replaced by the name field.
2528
2631
  # @param zone [::String]
2529
2632
  # Deprecated. The name of the Google Compute Engine
2530
- # [zone](https://cloud.google.com/compute/docs/zones#available) in which the cluster
2531
- # resides.
2532
- # This field has been deprecated and replaced by the name field.
2633
+ # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
2634
+ # cluster resides. This field has been deprecated and replaced by the name
2635
+ # field.
2533
2636
  # @param cluster_id [::String]
2534
2637
  # Deprecated. The name of the cluster to update.
2535
2638
  # This field has been deprecated and replaced by the name field.
@@ -2612,9 +2715,9 @@ module Google
2612
2715
  # This field has been deprecated and replaced by the name field.
2613
2716
  # @param zone [::String]
2614
2717
  # Deprecated. The name of the Google Compute Engine
2615
- # [zone](https://cloud.google.com/compute/docs/zones#available) in which the cluster
2616
- # resides.
2617
- # This field has been deprecated and replaced by the name field.
2718
+ # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
2719
+ # cluster resides. This field has been deprecated and replaced by the name
2720
+ # field.
2618
2721
  # @param cluster_id [::String]
2619
2722
  # Deprecated. The name of the cluster.
2620
2723
  # This field has been deprecated and replaced by the name field.
@@ -2692,8 +2795,8 @@ module Google
2692
2795
  # number](https://support.google.com/cloud/answer/6158840).
2693
2796
  # @param zone [::String]
2694
2797
  # Required. The name of the Google Compute Engine
2695
- # [zone](https://cloud.google.com/compute/docs/zones#available) in which the cluster
2696
- # resides.
2798
+ # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
2799
+ # cluster resides.
2697
2800
  # @param cluster_id [::String]
2698
2801
  # Required. The name of the cluster to update.
2699
2802
  # @param maintenance_policy [::Google::Cloud::Container::V1::MaintenancePolicy, ::Hash]
@@ -2915,7 +3018,7 @@ module Google
2915
3018
 
2916
3019
  config_attr :endpoint, "container.googleapis.com", ::String
2917
3020
  config_attr :credentials, nil do |value|
2918
- allowed = [::String, ::Hash, ::Proc, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
3021
+ allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
2919
3022
  allowed += [::GRPC::Core::Channel, ::GRPC::Core::ChannelCredentials] if defined? ::GRPC
2920
3023
  allowed.any? { |klass| klass === value }
2921
3024
  end
@@ -2955,7 +3058,7 @@ module Google
2955
3058
  # Each configuration object is of type `Gapic::Config::Method` and includes
2956
3059
  # the following configuration fields:
2957
3060
  #
2958
- # * `timeout` (*type:* `Numeric`) - The call timeout in milliseconds
3061
+ # * `timeout` (*type:* `Numeric`) - The call timeout in seconds
2959
3062
  # * `metadata` (*type:* `Hash{Symbol=>String}`) - Additional gRPC headers
2960
3063
  # * `retry_policy (*type:* `Hash`) - The retry policy. The policy fields
2961
3064
  # include the following keys:
@@ -3052,6 +3155,11 @@ module Google
3052
3155
  #
3053
3156
  attr_reader :get_server_config
3054
3157
  ##
3158
+ # RPC-specific configuration for `get_json_web_keys`
3159
+ # @return [::Gapic::Config::Method]
3160
+ #
3161
+ attr_reader :get_json_web_keys
3162
+ ##
3055
3163
  # RPC-specific configuration for `list_node_pools`
3056
3164
  # @return [::Gapic::Config::Method]
3057
3165
  #
@@ -3158,6 +3266,8 @@ module Google
3158
3266
  @cancel_operation = ::Gapic::Config::Method.new cancel_operation_config
3159
3267
  get_server_config_config = parent_rpcs&.get_server_config if parent_rpcs&.respond_to? :get_server_config
3160
3268
  @get_server_config = ::Gapic::Config::Method.new get_server_config_config
3269
+ get_json_web_keys_config = parent_rpcs&.get_json_web_keys if parent_rpcs&.respond_to? :get_json_web_keys
3270
+ @get_json_web_keys = ::Gapic::Config::Method.new get_json_web_keys_config
3161
3271
  list_node_pools_config = parent_rpcs&.list_node_pools if parent_rpcs&.respond_to? :list_node_pools
3162
3272
  @list_node_pools = ::Gapic::Config::Method.new list_node_pools_config
3163
3273
  get_node_pool_config = parent_rpcs&.get_node_pool if parent_rpcs&.respond_to? :get_node_pool