google-cloud-dataproc-v1 0.22.0 → 0.23.1

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 (33) hide show
  1. checksums.yaml +4 -4
  2. data/AUTHENTICATION.md +72 -101
  3. data/lib/google/cloud/dataproc/v1/autoscaling_policy_service/client.rb +38 -14
  4. data/lib/google/cloud/dataproc/v1/autoscaling_policy_service/rest/client.rb +36 -9
  5. data/lib/google/cloud/dataproc/v1/autoscaling_policy_service/rest/service_stub.rb +23 -2
  6. data/lib/google/cloud/dataproc/v1/batch_controller/client.rb +39 -14
  7. data/lib/google/cloud/dataproc/v1/batch_controller/operations.rb +28 -6
  8. data/lib/google/cloud/dataproc/v1/batch_controller/rest/client.rb +37 -9
  9. data/lib/google/cloud/dataproc/v1/batch_controller/rest/operations.rb +33 -8
  10. data/lib/google/cloud/dataproc/v1/batch_controller/rest/service_stub.rb +23 -2
  11. data/lib/google/cloud/dataproc/v1/cluster_controller/client.rb +39 -14
  12. data/lib/google/cloud/dataproc/v1/cluster_controller/operations.rb +28 -6
  13. data/lib/google/cloud/dataproc/v1/cluster_controller/rest/client.rb +37 -9
  14. data/lib/google/cloud/dataproc/v1/cluster_controller/rest/operations.rb +33 -8
  15. data/lib/google/cloud/dataproc/v1/cluster_controller/rest/service_stub.rb +23 -2
  16. data/lib/google/cloud/dataproc/v1/job_controller/client.rb +39 -14
  17. data/lib/google/cloud/dataproc/v1/job_controller/operations.rb +28 -6
  18. data/lib/google/cloud/dataproc/v1/job_controller/rest/client.rb +37 -9
  19. data/lib/google/cloud/dataproc/v1/job_controller/rest/operations.rb +33 -8
  20. data/lib/google/cloud/dataproc/v1/job_controller/rest/service_stub.rb +23 -2
  21. data/lib/google/cloud/dataproc/v1/node_group_controller/client.rb +39 -14
  22. data/lib/google/cloud/dataproc/v1/node_group_controller/operations.rb +28 -6
  23. data/lib/google/cloud/dataproc/v1/node_group_controller/rest/client.rb +37 -9
  24. data/lib/google/cloud/dataproc/v1/node_group_controller/rest/operations.rb +33 -8
  25. data/lib/google/cloud/dataproc/v1/node_group_controller/rest/service_stub.rb +23 -2
  26. data/lib/google/cloud/dataproc/v1/version.rb +1 -1
  27. data/lib/google/cloud/dataproc/v1/workflow_template_service/client.rb +39 -14
  28. data/lib/google/cloud/dataproc/v1/workflow_template_service/operations.rb +28 -6
  29. data/lib/google/cloud/dataproc/v1/workflow_template_service/rest/client.rb +37 -9
  30. data/lib/google/cloud/dataproc/v1/workflow_template_service/rest/operations.rb +33 -8
  31. data/lib/google/cloud/dataproc/v1/workflow_template_service/rest/service_stub.rb +23 -2
  32. data/proto_docs/google/api/client.rb +14 -0
  33. metadata +7 -7
@@ -32,6 +32,9 @@ module Google
32
32
  # of Compute Engine managed instances.
33
33
  #
34
34
  class Client
35
+ # @private
36
+ DEFAULT_ENDPOINT_TEMPLATE = "dataproc.$UNIVERSE_DOMAIN$"
37
+
35
38
  include Paths
36
39
 
37
40
  # @private
@@ -92,6 +95,15 @@ module Google
92
95
  @config
93
96
  end
94
97
 
98
+ ##
99
+ # The effective universe domain
100
+ #
101
+ # @return [String]
102
+ #
103
+ def universe_domain
104
+ @node_group_controller_stub.universe_domain
105
+ end
106
+
95
107
  ##
96
108
  # Create a new NodeGroupController client object.
97
109
  #
@@ -125,8 +137,9 @@ module Google
125
137
  credentials = @config.credentials
126
138
  # Use self-signed JWT if the endpoint is unchanged from default,
127
139
  # but only if the default endpoint does not have a region prefix.
128
- enable_self_signed_jwt = @config.endpoint == Configuration::DEFAULT_ENDPOINT &&
129
- !@config.endpoint.split(".").first.include?("-")
140
+ enable_self_signed_jwt = @config.endpoint.nil? ||
141
+ (@config.endpoint == Configuration::DEFAULT_ENDPOINT &&
142
+ !@config.endpoint.split(".").first.include?("-"))
130
143
  credentials ||= Credentials.default scope: @config.scope,
131
144
  enable_self_signed_jwt: enable_self_signed_jwt
132
145
  if credentials.is_a?(::String) || credentials.is_a?(::Hash)
@@ -139,22 +152,26 @@ module Google
139
152
  config.credentials = credentials
140
153
  config.quota_project = @quota_project_id
141
154
  config.endpoint = @config.endpoint
142
- end
143
-
144
- @iam_policy_client = Google::Iam::V1::IAMPolicy::Client.new do |config|
145
- config.credentials = credentials
146
- config.quota_project = @quota_project_id
147
- config.endpoint = @config.endpoint
155
+ config.universe_domain = @config.universe_domain
148
156
  end
149
157
 
150
158
  @node_group_controller_stub = ::Gapic::ServiceStub.new(
151
159
  ::Google::Cloud::Dataproc::V1::NodeGroupController::Stub,
152
- credentials: credentials,
153
- endpoint: @config.endpoint,
160
+ credentials: credentials,
161
+ endpoint: @config.endpoint,
162
+ endpoint_template: DEFAULT_ENDPOINT_TEMPLATE,
163
+ universe_domain: @config.universe_domain,
154
164
  channel_args: @config.channel_args,
155
165
  interceptors: @config.interceptors,
156
166
  channel_pool_config: @config.channel_pool
157
167
  )
168
+
169
+ @iam_policy_client = Google::Iam::V1::IAMPolicy::Client.new do |config|
170
+ config.credentials = credentials
171
+ config.quota_project = @quota_project_id
172
+ config.endpoint = @node_group_controller_stub.endpoint
173
+ config.universe_domain = @node_group_controller_stub.universe_domain
174
+ end
158
175
  end
159
176
 
160
177
  ##
@@ -535,9 +552,9 @@ module Google
535
552
  # end
536
553
  #
537
554
  # @!attribute [rw] endpoint
538
- # The hostname or hostname:port of the service endpoint.
539
- # Defaults to `"dataproc.googleapis.com"`.
540
- # @return [::String]
555
+ # A custom service endpoint, as a hostname or hostname:port. The default is
556
+ # nil, indicating to use the default endpoint in the current universe domain.
557
+ # @return [::String,nil]
541
558
  # @!attribute [rw] credentials
542
559
  # Credentials to send with calls. You may provide any of the following types:
543
560
  # * (`String`) The path to a service account key file in JSON format
@@ -583,13 +600,20 @@ module Google
583
600
  # @!attribute [rw] quota_project
584
601
  # A separate project against which to charge quota.
585
602
  # @return [::String]
603
+ # @!attribute [rw] universe_domain
604
+ # The universe domain within which to make requests. This determines the
605
+ # default endpoint URL. The default value of nil uses the environment
606
+ # universe (usually the default "googleapis.com" universe).
607
+ # @return [::String,nil]
586
608
  #
587
609
  class Configuration
588
610
  extend ::Gapic::Config
589
611
 
612
+ # @private
613
+ # The endpoint specific to the default "googleapis.com" universe. Deprecated.
590
614
  DEFAULT_ENDPOINT = "dataproc.googleapis.com"
591
615
 
592
- config_attr :endpoint, DEFAULT_ENDPOINT, ::String
616
+ config_attr :endpoint, nil, ::String, nil
593
617
  config_attr :credentials, nil do |value|
594
618
  allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
595
619
  allowed += [::GRPC::Core::Channel, ::GRPC::Core::ChannelCredentials] if defined? ::GRPC
@@ -604,6 +628,7 @@ module Google
604
628
  config_attr :metadata, nil, ::Hash, nil
605
629
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
606
630
  config_attr :quota_project, nil, ::String, nil
631
+ config_attr :universe_domain, nil, ::String, nil
607
632
 
608
633
  # @private
609
634
  def initialize parent_config = nil
@@ -26,6 +26,9 @@ module Google
26
26
  module NodeGroupController
27
27
  # Service that implements Longrunning Operations API.
28
28
  class Operations
29
+ # @private
30
+ DEFAULT_ENDPOINT_TEMPLATE = "dataproc.$UNIVERSE_DOMAIN$"
31
+
29
32
  # @private
30
33
  attr_reader :operations_stub
31
34
 
@@ -60,6 +63,15 @@ module Google
60
63
  @config
61
64
  end
62
65
 
66
+ ##
67
+ # The effective universe domain
68
+ #
69
+ # @return [String]
70
+ #
71
+ def universe_domain
72
+ @operations_stub.universe_domain
73
+ end
74
+
63
75
  ##
64
76
  # Create a new Operations client object.
65
77
  #
@@ -90,8 +102,10 @@ module Google
90
102
 
91
103
  @operations_stub = ::Gapic::ServiceStub.new(
92
104
  ::Google::Longrunning::Operations::Stub,
93
- credentials: credentials,
94
- endpoint: @config.endpoint,
105
+ credentials: credentials,
106
+ endpoint: @config.endpoint,
107
+ endpoint_template: DEFAULT_ENDPOINT_TEMPLATE,
108
+ universe_domain: @config.universe_domain,
95
109
  channel_args: @config.channel_args,
96
110
  interceptors: @config.interceptors,
97
111
  channel_pool_config: @config.channel_pool
@@ -613,9 +627,9 @@ module Google
613
627
  # end
614
628
  #
615
629
  # @!attribute [rw] endpoint
616
- # The hostname or hostname:port of the service endpoint.
617
- # Defaults to `"dataproc.googleapis.com"`.
618
- # @return [::String]
630
+ # A custom service endpoint, as a hostname or hostname:port. The default is
631
+ # nil, indicating to use the default endpoint in the current universe domain.
632
+ # @return [::String,nil]
619
633
  # @!attribute [rw] credentials
620
634
  # Credentials to send with calls. You may provide any of the following types:
621
635
  # * (`String`) The path to a service account key file in JSON format
@@ -661,13 +675,20 @@ module Google
661
675
  # @!attribute [rw] quota_project
662
676
  # A separate project against which to charge quota.
663
677
  # @return [::String]
678
+ # @!attribute [rw] universe_domain
679
+ # The universe domain within which to make requests. This determines the
680
+ # default endpoint URL. The default value of nil uses the environment
681
+ # universe (usually the default "googleapis.com" universe).
682
+ # @return [::String,nil]
664
683
  #
665
684
  class Configuration
666
685
  extend ::Gapic::Config
667
686
 
687
+ # @private
688
+ # The endpoint specific to the default "googleapis.com" universe. Deprecated.
668
689
  DEFAULT_ENDPOINT = "dataproc.googleapis.com"
669
690
 
670
- config_attr :endpoint, DEFAULT_ENDPOINT, ::String
691
+ config_attr :endpoint, nil, ::String, nil
671
692
  config_attr :credentials, nil do |value|
672
693
  allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
673
694
  allowed += [::GRPC::Core::Channel, ::GRPC::Core::ChannelCredentials] if defined? ::GRPC
@@ -682,6 +703,7 @@ module Google
682
703
  config_attr :metadata, nil, ::Hash, nil
683
704
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
684
705
  config_attr :quota_project, nil, ::String, nil
706
+ config_attr :universe_domain, nil, ::String, nil
685
707
 
686
708
  # @private
687
709
  def initialize parent_config = nil
@@ -34,6 +34,9 @@ module Google
34
34
  # of Compute Engine managed instances.
35
35
  #
36
36
  class Client
37
+ # @private
38
+ DEFAULT_ENDPOINT_TEMPLATE = "dataproc.$UNIVERSE_DOMAIN$"
39
+
37
40
  include Paths
38
41
 
39
42
  # @private
@@ -94,6 +97,15 @@ module Google
94
97
  @config
95
98
  end
96
99
 
100
+ ##
101
+ # The effective universe domain
102
+ #
103
+ # @return [String]
104
+ #
105
+ def universe_domain
106
+ @node_group_controller_stub.universe_domain
107
+ end
108
+
97
109
  ##
98
110
  # Create a new NodeGroupController REST client object.
99
111
  #
@@ -121,8 +133,9 @@ module Google
121
133
  credentials = @config.credentials
122
134
  # Use self-signed JWT if the endpoint is unchanged from default,
123
135
  # but only if the default endpoint does not have a region prefix.
124
- enable_self_signed_jwt = @config.endpoint == Configuration::DEFAULT_ENDPOINT &&
125
- !@config.endpoint.split(".").first.include?("-")
136
+ enable_self_signed_jwt = @config.endpoint.nil? ||
137
+ (@config.endpoint == Configuration::DEFAULT_ENDPOINT &&
138
+ !@config.endpoint.split(".").first.include?("-"))
126
139
  credentials ||= Credentials.default scope: @config.scope,
127
140
  enable_self_signed_jwt: enable_self_signed_jwt
128
141
  if credentials.is_a?(::String) || credentials.is_a?(::Hash)
@@ -136,16 +149,23 @@ module Google
136
149
  config.credentials = credentials
137
150
  config.quota_project = @quota_project_id
138
151
  config.endpoint = @config.endpoint
152
+ config.universe_domain = @config.universe_domain
139
153
  end
140
154
 
155
+ @node_group_controller_stub = ::Google::Cloud::Dataproc::V1::NodeGroupController::Rest::ServiceStub.new(
156
+ endpoint: @config.endpoint,
157
+ endpoint_template: DEFAULT_ENDPOINT_TEMPLATE,
158
+ universe_domain: @config.universe_domain,
159
+ credentials: credentials
160
+ )
161
+
141
162
  @iam_policy_client = Google::Iam::V1::IAMPolicy::Rest::Client.new do |config|
142
163
  config.credentials = credentials
143
164
  config.quota_project = @quota_project_id
144
- config.endpoint = @config.endpoint
165
+ config.endpoint = @node_group_controller_stub.endpoint
166
+ config.universe_domain = @node_group_controller_stub.universe_domain
145
167
  config.bindings_override = @config.bindings_override
146
168
  end
147
-
148
- @node_group_controller_stub = ::Google::Cloud::Dataproc::V1::NodeGroupController::Rest::ServiceStub.new endpoint: @config.endpoint, credentials: credentials
149
169
  end
150
170
 
151
171
  ##
@@ -505,9 +525,9 @@ module Google
505
525
  # end
506
526
  #
507
527
  # @!attribute [rw] endpoint
508
- # The hostname or hostname:port of the service endpoint.
509
- # Defaults to `"dataproc.googleapis.com"`.
510
- # @return [::String]
528
+ # A custom service endpoint, as a hostname or hostname:port. The default is
529
+ # nil, indicating to use the default endpoint in the current universe domain.
530
+ # @return [::String,nil]
511
531
  # @!attribute [rw] credentials
512
532
  # Credentials to send with calls. You may provide any of the following types:
513
533
  # * (`String`) The path to a service account key file in JSON format
@@ -544,13 +564,20 @@ module Google
544
564
  # @!attribute [rw] quota_project
545
565
  # A separate project against which to charge quota.
546
566
  # @return [::String]
567
+ # @!attribute [rw] universe_domain
568
+ # The universe domain within which to make requests. This determines the
569
+ # default endpoint URL. The default value of nil uses the environment
570
+ # universe (usually the default "googleapis.com" universe).
571
+ # @return [::String,nil]
547
572
  #
548
573
  class Configuration
549
574
  extend ::Gapic::Config
550
575
 
576
+ # @private
577
+ # The endpoint specific to the default "googleapis.com" universe. Deprecated.
551
578
  DEFAULT_ENDPOINT = "dataproc.googleapis.com"
552
579
 
553
- config_attr :endpoint, DEFAULT_ENDPOINT, ::String
580
+ config_attr :endpoint, nil, ::String, nil
554
581
  config_attr :credentials, nil do |value|
555
582
  allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
556
583
  allowed.any? { |klass| klass === value }
@@ -562,6 +589,7 @@ module Google
562
589
  config_attr :metadata, nil, ::Hash, nil
563
590
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
564
591
  config_attr :quota_project, nil, ::String, nil
592
+ config_attr :universe_domain, nil, ::String, nil
565
593
 
566
594
  # @private
567
595
  # Overrides for http bindings for the RPCs of this service
@@ -26,6 +26,9 @@ module Google
26
26
  module Rest
27
27
  # Service that implements Longrunning Operations API.
28
28
  class Operations
29
+ # @private
30
+ DEFAULT_ENDPOINT_TEMPLATE = "dataproc.$UNIVERSE_DOMAIN$"
31
+
29
32
  # @private
30
33
  attr_reader :operations_stub
31
34
 
@@ -60,6 +63,15 @@ module Google
60
63
  @config
61
64
  end
62
65
 
66
+ ##
67
+ # The effective universe domain
68
+ #
69
+ # @return [String]
70
+ #
71
+ def universe_domain
72
+ @operations_stub.universe_domain
73
+ end
74
+
63
75
  ##
64
76
  # Create a new Operations client object.
65
77
  #
@@ -84,8 +96,10 @@ module Google
84
96
  @quota_project_id ||= credentials.quota_project_id if credentials.respond_to? :quota_project_id
85
97
 
86
98
  @operations_stub = OperationsServiceStub.new(
87
- endpoint: @config.endpoint,
88
- credentials: credentials
99
+ endpoint: @config.endpoint,
100
+ endpoint_template: DEFAULT_ENDPOINT_TEMPLATE,
101
+ universe_domain: @config.universe_domain,
102
+ credentials: credentials
89
103
  )
90
104
 
91
105
  # Used by an LRO wrapper for some methods of this service
@@ -478,9 +492,9 @@ module Google
478
492
  # end
479
493
  #
480
494
  # @!attribute [rw] endpoint
481
- # The hostname or hostname:port of the service endpoint.
482
- # Defaults to `"dataproc.googleapis.com"`.
483
- # @return [::String]
495
+ # A custom service endpoint, as a hostname or hostname:port. The default is
496
+ # nil, indicating to use the default endpoint in the current universe domain.
497
+ # @return [::String,nil]
484
498
  # @!attribute [rw] credentials
485
499
  # Credentials to send with calls. You may provide any of the following types:
486
500
  # * (`String`) The path to a service account key file in JSON format
@@ -517,13 +531,20 @@ module Google
517
531
  # @!attribute [rw] quota_project
518
532
  # A separate project against which to charge quota.
519
533
  # @return [::String]
534
+ # @!attribute [rw] universe_domain
535
+ # The universe domain within which to make requests. This determines the
536
+ # default endpoint URL. The default value of nil uses the environment
537
+ # universe (usually the default "googleapis.com" universe).
538
+ # @return [::String,nil]
520
539
  #
521
540
  class Configuration
522
541
  extend ::Gapic::Config
523
542
 
543
+ # @private
544
+ # The endpoint specific to the default "googleapis.com" universe. Deprecated.
524
545
  DEFAULT_ENDPOINT = "dataproc.googleapis.com"
525
546
 
526
- config_attr :endpoint, DEFAULT_ENDPOINT, ::String
547
+ config_attr :endpoint, nil, ::String, nil
527
548
  config_attr :credentials, nil do |value|
528
549
  allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
529
550
  allowed.any? { |klass| klass === value }
@@ -535,6 +556,7 @@ module Google
535
556
  config_attr :metadata, nil, ::Hash, nil
536
557
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
537
558
  config_attr :quota_project, nil, ::String, nil
559
+ config_attr :universe_domain, nil, ::String, nil
538
560
 
539
561
  # @private
540
562
  def initialize parent_config = nil
@@ -617,12 +639,15 @@ module Google
617
639
  # Service stub contains baseline method implementations
618
640
  # including transcoding, making the REST call, and deserialing the response.
619
641
  class OperationsServiceStub
620
- def initialize endpoint:, credentials:
642
+ def initialize endpoint:, endpoint_template:, universe_domain:, credentials:
621
643
  # These require statements are intentionally placed here to initialize
622
644
  # the REST modules only when it's required.
623
645
  require "gapic/rest"
624
646
 
625
- @client_stub = ::Gapic::Rest::ClientStub.new endpoint: endpoint, credentials: credentials
647
+ @client_stub = ::Gapic::Rest::ClientStub.new endpoint: endpoint,
648
+ endpoint_template: endpoint_template,
649
+ universe_domain: universe_domain,
650
+ credentials: credentials
626
651
  end
627
652
 
628
653
  ##
@@ -30,16 +30,37 @@ module Google
30
30
  # including transcoding, making the REST call, and deserialing the response.
31
31
  #
32
32
  class ServiceStub
33
- def initialize endpoint:, credentials:
33
+ def initialize endpoint:, endpoint_template:, universe_domain:, credentials:
34
34
  # These require statements are intentionally placed here to initialize
35
35
  # the REST modules only when it's required.
36
36
  require "gapic/rest"
37
37
 
38
- @client_stub = ::Gapic::Rest::ClientStub.new endpoint: endpoint, credentials: credentials,
38
+ @client_stub = ::Gapic::Rest::ClientStub.new endpoint: endpoint,
39
+ endpoint_template: endpoint_template,
40
+ universe_domain: universe_domain,
41
+ credentials: credentials,
39
42
  numeric_enums: true,
40
43
  raise_faraday_errors: false
41
44
  end
42
45
 
46
+ ##
47
+ # The effective universe domain
48
+ #
49
+ # @return [String]
50
+ #
51
+ def universe_domain
52
+ @client_stub.universe_domain
53
+ end
54
+
55
+ ##
56
+ # The effective endpoint
57
+ #
58
+ # @return [String]
59
+ #
60
+ def endpoint
61
+ @client_stub.endpoint
62
+ end
63
+
43
64
  ##
44
65
  # Baseline implementation for the create_node_group REST call
45
66
  #
@@ -21,7 +21,7 @@ module Google
21
21
  module Cloud
22
22
  module Dataproc
23
23
  module V1
24
- VERSION = "0.22.0"
24
+ VERSION = "0.23.1"
25
25
  end
26
26
  end
27
27
  end
@@ -32,6 +32,9 @@ module Google
32
32
  # Dataproc API.
33
33
  #
34
34
  class Client
35
+ # @private
36
+ DEFAULT_ENDPOINT_TEMPLATE = "dataproc.$UNIVERSE_DOMAIN$"
37
+
35
38
  include Paths
36
39
 
37
40
  # @private
@@ -127,6 +130,15 @@ module Google
127
130
  @config
128
131
  end
129
132
 
133
+ ##
134
+ # The effective universe domain
135
+ #
136
+ # @return [String]
137
+ #
138
+ def universe_domain
139
+ @workflow_template_service_stub.universe_domain
140
+ end
141
+
130
142
  ##
131
143
  # Create a new WorkflowTemplateService client object.
132
144
  #
@@ -160,8 +172,9 @@ module Google
160
172
  credentials = @config.credentials
161
173
  # Use self-signed JWT if the endpoint is unchanged from default,
162
174
  # but only if the default endpoint does not have a region prefix.
163
- enable_self_signed_jwt = @config.endpoint == Configuration::DEFAULT_ENDPOINT &&
164
- !@config.endpoint.split(".").first.include?("-")
175
+ enable_self_signed_jwt = @config.endpoint.nil? ||
176
+ (@config.endpoint == Configuration::DEFAULT_ENDPOINT &&
177
+ !@config.endpoint.split(".").first.include?("-"))
165
178
  credentials ||= Credentials.default scope: @config.scope,
166
179
  enable_self_signed_jwt: enable_self_signed_jwt
167
180
  if credentials.is_a?(::String) || credentials.is_a?(::Hash)
@@ -174,22 +187,26 @@ module Google
174
187
  config.credentials = credentials
175
188
  config.quota_project = @quota_project_id
176
189
  config.endpoint = @config.endpoint
177
- end
178
-
179
- @iam_policy_client = Google::Iam::V1::IAMPolicy::Client.new do |config|
180
- config.credentials = credentials
181
- config.quota_project = @quota_project_id
182
- config.endpoint = @config.endpoint
190
+ config.universe_domain = @config.universe_domain
183
191
  end
184
192
 
185
193
  @workflow_template_service_stub = ::Gapic::ServiceStub.new(
186
194
  ::Google::Cloud::Dataproc::V1::WorkflowTemplateService::Stub,
187
- credentials: credentials,
188
- endpoint: @config.endpoint,
195
+ credentials: credentials,
196
+ endpoint: @config.endpoint,
197
+ endpoint_template: DEFAULT_ENDPOINT_TEMPLATE,
198
+ universe_domain: @config.universe_domain,
189
199
  channel_args: @config.channel_args,
190
200
  interceptors: @config.interceptors,
191
201
  channel_pool_config: @config.channel_pool
192
202
  )
203
+
204
+ @iam_policy_client = Google::Iam::V1::IAMPolicy::Client.new do |config|
205
+ config.credentials = credentials
206
+ config.quota_project = @quota_project_id
207
+ config.endpoint = @workflow_template_service_stub.endpoint
208
+ config.universe_domain = @workflow_template_service_stub.universe_domain
209
+ end
193
210
  end
194
211
 
195
212
  ##
@@ -1005,9 +1022,9 @@ module Google
1005
1022
  # end
1006
1023
  #
1007
1024
  # @!attribute [rw] endpoint
1008
- # The hostname or hostname:port of the service endpoint.
1009
- # Defaults to `"dataproc.googleapis.com"`.
1010
- # @return [::String]
1025
+ # A custom service endpoint, as a hostname or hostname:port. The default is
1026
+ # nil, indicating to use the default endpoint in the current universe domain.
1027
+ # @return [::String,nil]
1011
1028
  # @!attribute [rw] credentials
1012
1029
  # Credentials to send with calls. You may provide any of the following types:
1013
1030
  # * (`String`) The path to a service account key file in JSON format
@@ -1053,13 +1070,20 @@ module Google
1053
1070
  # @!attribute [rw] quota_project
1054
1071
  # A separate project against which to charge quota.
1055
1072
  # @return [::String]
1073
+ # @!attribute [rw] universe_domain
1074
+ # The universe domain within which to make requests. This determines the
1075
+ # default endpoint URL. The default value of nil uses the environment
1076
+ # universe (usually the default "googleapis.com" universe).
1077
+ # @return [::String,nil]
1056
1078
  #
1057
1079
  class Configuration
1058
1080
  extend ::Gapic::Config
1059
1081
 
1082
+ # @private
1083
+ # The endpoint specific to the default "googleapis.com" universe. Deprecated.
1060
1084
  DEFAULT_ENDPOINT = "dataproc.googleapis.com"
1061
1085
 
1062
- config_attr :endpoint, DEFAULT_ENDPOINT, ::String
1086
+ config_attr :endpoint, nil, ::String, nil
1063
1087
  config_attr :credentials, nil do |value|
1064
1088
  allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
1065
1089
  allowed += [::GRPC::Core::Channel, ::GRPC::Core::ChannelCredentials] if defined? ::GRPC
@@ -1074,6 +1098,7 @@ module Google
1074
1098
  config_attr :metadata, nil, ::Hash, nil
1075
1099
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
1076
1100
  config_attr :quota_project, nil, ::String, nil
1101
+ config_attr :universe_domain, nil, ::String, nil
1077
1102
 
1078
1103
  # @private
1079
1104
  def initialize parent_config = nil
@@ -26,6 +26,9 @@ module Google
26
26
  module WorkflowTemplateService
27
27
  # Service that implements Longrunning Operations API.
28
28
  class Operations
29
+ # @private
30
+ DEFAULT_ENDPOINT_TEMPLATE = "dataproc.$UNIVERSE_DOMAIN$"
31
+
29
32
  # @private
30
33
  attr_reader :operations_stub
31
34
 
@@ -60,6 +63,15 @@ module Google
60
63
  @config
61
64
  end
62
65
 
66
+ ##
67
+ # The effective universe domain
68
+ #
69
+ # @return [String]
70
+ #
71
+ def universe_domain
72
+ @operations_stub.universe_domain
73
+ end
74
+
63
75
  ##
64
76
  # Create a new Operations client object.
65
77
  #
@@ -90,8 +102,10 @@ module Google
90
102
 
91
103
  @operations_stub = ::Gapic::ServiceStub.new(
92
104
  ::Google::Longrunning::Operations::Stub,
93
- credentials: credentials,
94
- endpoint: @config.endpoint,
105
+ credentials: credentials,
106
+ endpoint: @config.endpoint,
107
+ endpoint_template: DEFAULT_ENDPOINT_TEMPLATE,
108
+ universe_domain: @config.universe_domain,
95
109
  channel_args: @config.channel_args,
96
110
  interceptors: @config.interceptors,
97
111
  channel_pool_config: @config.channel_pool
@@ -613,9 +627,9 @@ module Google
613
627
  # end
614
628
  #
615
629
  # @!attribute [rw] endpoint
616
- # The hostname or hostname:port of the service endpoint.
617
- # Defaults to `"dataproc.googleapis.com"`.
618
- # @return [::String]
630
+ # A custom service endpoint, as a hostname or hostname:port. The default is
631
+ # nil, indicating to use the default endpoint in the current universe domain.
632
+ # @return [::String,nil]
619
633
  # @!attribute [rw] credentials
620
634
  # Credentials to send with calls. You may provide any of the following types:
621
635
  # * (`String`) The path to a service account key file in JSON format
@@ -661,13 +675,20 @@ module Google
661
675
  # @!attribute [rw] quota_project
662
676
  # A separate project against which to charge quota.
663
677
  # @return [::String]
678
+ # @!attribute [rw] universe_domain
679
+ # The universe domain within which to make requests. This determines the
680
+ # default endpoint URL. The default value of nil uses the environment
681
+ # universe (usually the default "googleapis.com" universe).
682
+ # @return [::String,nil]
664
683
  #
665
684
  class Configuration
666
685
  extend ::Gapic::Config
667
686
 
687
+ # @private
688
+ # The endpoint specific to the default "googleapis.com" universe. Deprecated.
668
689
  DEFAULT_ENDPOINT = "dataproc.googleapis.com"
669
690
 
670
- config_attr :endpoint, DEFAULT_ENDPOINT, ::String
691
+ config_attr :endpoint, nil, ::String, nil
671
692
  config_attr :credentials, nil do |value|
672
693
  allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
673
694
  allowed += [::GRPC::Core::Channel, ::GRPC::Core::ChannelCredentials] if defined? ::GRPC
@@ -682,6 +703,7 @@ module Google
682
703
  config_attr :metadata, nil, ::Hash, nil
683
704
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
684
705
  config_attr :quota_project, nil, ::String, nil
706
+ config_attr :universe_domain, nil, ::String, nil
685
707
 
686
708
  # @private
687
709
  def initialize parent_config = nil