google-cloud-org_policy-v2 0.6.0 → 0.8.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.
@@ -29,23 +29,23 @@ module Google
29
29
  #
30
30
  # An interface for managing organization policies.
31
31
  #
32
- # The Cloud Org Policy service provides a simple mechanism for organizations to
33
- # restrict the allowed configurations across their entire Cloud Resource
34
- # hierarchy.
32
+ # The Organization Policy Service provides a simple mechanism for
33
+ # organizations to restrict the allowed configurations across their entire
34
+ # resource hierarchy.
35
35
  #
36
- # You can use a `policy` to configure restrictions in Cloud resources. For
37
- # example, you can enforce a `policy` that restricts which Google
38
- # Cloud Platform APIs can be activated in a certain part of your resource
39
- # hierarchy, or prevents serial port access to VM instances in a particular
40
- # folder.
36
+ # You can use a policy to configure restrictions on resources. For
37
+ # example, you can enforce a policy that restricts which Google
38
+ # Cloud APIs can be activated in a certain part of your resource
39
+ # hierarchy, or prevents serial port access to VM instances in a
40
+ # particular folder.
41
41
  #
42
- # `Policies` are inherited down through the resource hierarchy. A `policy`
42
+ # Policies are inherited down through the resource hierarchy. A policy
43
43
  # applied to a parent resource automatically applies to all its child resources
44
- # unless overridden with a `policy` lower in the hierarchy.
44
+ # unless overridden with a policy lower in the hierarchy.
45
45
  #
46
- # A `constraint` defines an aspect of a resource's configuration that can be
47
- # controlled by an organization's policy administrator. `Policies` are a
48
- # collection of `constraints` that defines their allowable configuration on a
46
+ # A constraint defines an aspect of a resource's configuration that can be
47
+ # controlled by an organization's policy administrator. Policies are a
48
+ # collection of constraints that defines their allowable configuration on a
49
49
  # particular resource and its child resources.
50
50
  #
51
51
  class Client
@@ -118,6 +118,31 @@ module Google
118
118
  initial_delay: 1.0, max_delay: 10.0, multiplier: 1.3, retry_codes: [14, 4]
119
119
  }
120
120
 
121
+ default_config.rpcs.create_custom_constraint.timeout = 60.0
122
+ default_config.rpcs.create_custom_constraint.retry_policy = {
123
+ initial_delay: 1.0, max_delay: 10.0, multiplier: 1.3, retry_codes: [14, 4]
124
+ }
125
+
126
+ default_config.rpcs.update_custom_constraint.timeout = 60.0
127
+ default_config.rpcs.update_custom_constraint.retry_policy = {
128
+ initial_delay: 1.0, max_delay: 10.0, multiplier: 1.3, retry_codes: [14, 4]
129
+ }
130
+
131
+ default_config.rpcs.get_custom_constraint.timeout = 60.0
132
+ default_config.rpcs.get_custom_constraint.retry_policy = {
133
+ initial_delay: 1.0, max_delay: 10.0, multiplier: 1.3, retry_codes: [14, 4]
134
+ }
135
+
136
+ default_config.rpcs.list_custom_constraints.timeout = 60.0
137
+ default_config.rpcs.list_custom_constraints.retry_policy = {
138
+ initial_delay: 1.0, max_delay: 10.0, multiplier: 1.3, retry_codes: [14, 4]
139
+ }
140
+
141
+ default_config.rpcs.delete_custom_constraint.timeout = 60.0
142
+ default_config.rpcs.delete_custom_constraint.retry_policy = {
143
+ initial_delay: 1.0, max_delay: 10.0, multiplier: 1.3, retry_codes: [14, 4]
144
+ }
145
+
121
146
  default_config
122
147
  end
123
148
  yield @configure if block_given?
@@ -192,14 +217,15 @@ module Google
192
217
  credentials: credentials,
193
218
  endpoint: @config.endpoint,
194
219
  channel_args: @config.channel_args,
195
- interceptors: @config.interceptors
220
+ interceptors: @config.interceptors,
221
+ channel_pool_config: @config.channel_pool
196
222
  )
197
223
  end
198
224
 
199
225
  # Service calls
200
226
 
201
227
  ##
202
- # Lists `Constraints` that could be applied on the specified resource.
228
+ # Lists constraints that could be applied on the specified resource.
203
229
  #
204
230
  # @overload list_constraints(request, options = nil)
205
231
  # Pass arguments to `list_constraints` via a request object, either of type
@@ -217,8 +243,9 @@ module Google
217
243
  # the default parameter values, pass an empty Hash as a request object (see above).
218
244
  #
219
245
  # @param parent [::String]
220
- # Required. The Cloud resource that parents the constraint. Must be in one of
221
- # the following forms:
246
+ # Required. The Google Cloud resource that parents the constraint. Must be in
247
+ # one of the following forms:
248
+ #
222
249
  # * `projects/{project_number}`
223
250
  # * `projects/{project_id}`
224
251
  # * `folders/{folder_id}`
@@ -301,7 +328,7 @@ module Google
301
328
  end
302
329
 
303
330
  ##
304
- # Retrieves all of the `Policies` that exist on a particular resource.
331
+ # Retrieves all of the policies that exist on a particular resource.
305
332
  #
306
333
  # @overload list_policies(request, options = nil)
307
334
  # Pass arguments to `list_policies` via a request object, either of type
@@ -319,9 +346,10 @@ module Google
319
346
  # the default parameter values, pass an empty Hash as a request object (see above).
320
347
  #
321
348
  # @param parent [::String]
322
- # Required. The target Cloud resource that parents the set of constraints and
323
- # policies that will be returned from this call. Must be in one of the
324
- # following forms:
349
+ # Required. The target Google Cloud resource that parents the set of
350
+ # constraints and policies that will be returned from this call. Must be in
351
+ # one of the following forms:
352
+ #
325
353
  # * `projects/{project_number}`
326
354
  # * `projects/{project_id}`
327
355
  # * `folders/{folder_id}`
@@ -404,11 +432,11 @@ module Google
404
432
  end
405
433
 
406
434
  ##
407
- # Gets a `Policy` on a resource.
435
+ # Gets a policy on a resource.
408
436
  #
409
- # If no `Policy` is set on the resource, NOT_FOUND is returned. The
437
+ # If no policy is set on the resource, `NOT_FOUND` is returned. The
410
438
  # `etag` value can be used with `UpdatePolicy()` to update a
411
- # `Policy` during read-modify-write.
439
+ # policy during read-modify-write.
412
440
  #
413
441
  # @overload get_policy(request, options = nil)
414
442
  # Pass arguments to `get_policy` via a request object, either of type
@@ -426,8 +454,8 @@ module Google
426
454
  # the default parameter values, pass an empty Hash as a request object (see above).
427
455
  #
428
456
  # @param name [::String]
429
- # Required. Resource name of the policy. See `Policy` for naming
430
- # requirements.
457
+ # Required. Resource name of the policy. See
458
+ # {::Google::Cloud::OrgPolicy::V2::Policy Policy} for naming requirements.
431
459
  #
432
460
  # @yield [response, operation] Access the result along with the RPC operation
433
461
  # @yieldparam response [::Google::Cloud::OrgPolicy::V2::Policy]
@@ -494,10 +522,10 @@ module Google
494
522
  end
495
523
 
496
524
  ##
497
- # Gets the effective `Policy` on a resource. This is the result of merging
498
- # `Policies` in the resource hierarchy and evaluating conditions. The
499
- # returned `Policy` will not have an `etag` or `condition` set because it is
500
- # a computed `Policy` across multiple resources.
525
+ # Gets the effective policy on a resource. This is the result of merging
526
+ # policies in the resource hierarchy and evaluating conditions. The
527
+ # returned policy will not have an `etag` or `condition` set because it is
528
+ # an evaluated policy across multiple resources.
501
529
  # Subtrees of Resource Manager resource hierarchy with 'under:' prefix will
502
530
  # not be expanded.
503
531
  #
@@ -517,7 +545,8 @@ module Google
517
545
  # the default parameter values, pass an empty Hash as a request object (see above).
518
546
  #
519
547
  # @param name [::String]
520
- # Required. The effective policy to compute. See `Policy` for naming rules.
548
+ # Required. The effective policy to compute. See
549
+ # {::Google::Cloud::OrgPolicy::V2::Policy Policy} for naming requirements.
521
550
  #
522
551
  # @yield [response, operation] Access the result along with the RPC operation
523
552
  # @yieldparam response [::Google::Cloud::OrgPolicy::V2::Policy]
@@ -584,12 +613,12 @@ module Google
584
613
  end
585
614
 
586
615
  ##
587
- # Creates a Policy.
616
+ # Creates a policy.
588
617
  #
589
618
  # Returns a `google.rpc.Status` with `google.rpc.Code.NOT_FOUND` if the
590
619
  # constraint does not exist.
591
620
  # Returns a `google.rpc.Status` with `google.rpc.Code.ALREADY_EXISTS` if the
592
- # policy already exists on the given Cloud resource.
621
+ # policy already exists on the given Google Cloud resource.
593
622
  #
594
623
  # @overload create_policy(request, options = nil)
595
624
  # Pass arguments to `create_policy` via a request object, either of type
@@ -607,14 +636,15 @@ module Google
607
636
  # the default parameter values, pass an empty Hash as a request object (see above).
608
637
  #
609
638
  # @param parent [::String]
610
- # Required. The Cloud resource that will parent the new Policy. Must be in
611
- # one of the following forms:
639
+ # Required. The Google Cloud resource that will parent the new policy. Must
640
+ # be in one of the following forms:
641
+ #
612
642
  # * `projects/{project_number}`
613
643
  # * `projects/{project_id}`
614
644
  # * `folders/{folder_id}`
615
645
  # * `organizations/{organization_id}`
616
646
  # @param policy [::Google::Cloud::OrgPolicy::V2::Policy, ::Hash]
617
- # Required. `Policy` to create.
647
+ # Required. Policy to create.
618
648
  #
619
649
  # @yield [response, operation] Access the result along with the RPC operation
620
650
  # @yieldparam response [::Google::Cloud::OrgPolicy::V2::Policy]
@@ -681,7 +711,7 @@ module Google
681
711
  end
682
712
 
683
713
  ##
684
- # Updates a Policy.
714
+ # Updates a policy.
685
715
  #
686
716
  # Returns a `google.rpc.Status` with `google.rpc.Code.NOT_FOUND` if the
687
717
  # constraint or the policy do not exist.
@@ -707,7 +737,7 @@ module Google
707
737
  # the default parameter values, pass an empty Hash as a request object (see above).
708
738
  #
709
739
  # @param policy [::Google::Cloud::OrgPolicy::V2::Policy, ::Hash]
710
- # Required. `Policy` to update.
740
+ # Required. Policy to update.
711
741
  # @param update_mask [::Google::Protobuf::FieldMask, ::Hash]
712
742
  # Field mask used to specify the fields to be overwritten in the policy
713
743
  # by the set. The fields specified in the update_mask are relative to the
@@ -778,10 +808,10 @@ module Google
778
808
  end
779
809
 
780
810
  ##
781
- # Deletes a Policy.
811
+ # Deletes a policy.
782
812
  #
783
813
  # Returns a `google.rpc.Status` with `google.rpc.Code.NOT_FOUND` if the
784
- # constraint or Org Policy does not exist.
814
+ # constraint or organization policy does not exist.
785
815
  #
786
816
  # @overload delete_policy(request, options = nil)
787
817
  # Pass arguments to `delete_policy` via a request object, either of type
@@ -793,14 +823,18 @@ module Google
793
823
  # @param options [::Gapic::CallOptions, ::Hash]
794
824
  # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
795
825
  #
796
- # @overload delete_policy(name: nil)
826
+ # @overload delete_policy(name: nil, etag: nil)
797
827
  # Pass arguments to `delete_policy` via keyword arguments. Note that at
798
828
  # least one keyword argument is required. To specify no parameters, or to keep all
799
829
  # the default parameter values, pass an empty Hash as a request object (see above).
800
830
  #
801
831
  # @param name [::String]
802
832
  # Required. Name of the policy to delete.
803
- # See `Policy` for naming rules.
833
+ # See the policy entry for naming rules.
834
+ # @param etag [::String]
835
+ # Optional. The current etag of policy. If an etag is provided and does not
836
+ # match the current etag of the policy, deletion will be blocked and an
837
+ # ABORTED error will be returned.
804
838
  #
805
839
  # @yield [response, operation] Access the result along with the RPC operation
806
840
  # @yieldparam response [::Google::Protobuf::Empty]
@@ -866,6 +900,471 @@ module Google
866
900
  raise ::Google::Cloud::Error.from_error(e)
867
901
  end
868
902
 
903
+ ##
904
+ # Creates a custom constraint.
905
+ #
906
+ # Returns a `google.rpc.Status` with `google.rpc.Code.NOT_FOUND` if the
907
+ # organization does not exist.
908
+ # Returns a `google.rpc.Status` with `google.rpc.Code.ALREADY_EXISTS` if the
909
+ # constraint already exists on the given organization.
910
+ #
911
+ # @overload create_custom_constraint(request, options = nil)
912
+ # Pass arguments to `create_custom_constraint` via a request object, either of type
913
+ # {::Google::Cloud::OrgPolicy::V2::CreateCustomConstraintRequest} or an equivalent Hash.
914
+ #
915
+ # @param request [::Google::Cloud::OrgPolicy::V2::CreateCustomConstraintRequest, ::Hash]
916
+ # A request object representing the call parameters. Required. To specify no
917
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
918
+ # @param options [::Gapic::CallOptions, ::Hash]
919
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
920
+ #
921
+ # @overload create_custom_constraint(parent: nil, custom_constraint: nil)
922
+ # Pass arguments to `create_custom_constraint` via keyword arguments. Note that at
923
+ # least one keyword argument is required. To specify no parameters, or to keep all
924
+ # the default parameter values, pass an empty Hash as a request object (see above).
925
+ #
926
+ # @param parent [::String]
927
+ # Required. Must be in the following form:
928
+ #
929
+ # * `organizations/{organization_id}`
930
+ # @param custom_constraint [::Google::Cloud::OrgPolicy::V2::CustomConstraint, ::Hash]
931
+ # Required. Custom constraint to create.
932
+ #
933
+ # @yield [response, operation] Access the result along with the RPC operation
934
+ # @yieldparam response [::Google::Cloud::OrgPolicy::V2::CustomConstraint]
935
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
936
+ #
937
+ # @return [::Google::Cloud::OrgPolicy::V2::CustomConstraint]
938
+ #
939
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
940
+ #
941
+ # @example Basic example
942
+ # require "google/cloud/org_policy/v2"
943
+ #
944
+ # # Create a client object. The client can be reused for multiple calls.
945
+ # client = Google::Cloud::OrgPolicy::V2::OrgPolicy::Client.new
946
+ #
947
+ # # Create a request. To set request fields, pass in keyword arguments.
948
+ # request = Google::Cloud::OrgPolicy::V2::CreateCustomConstraintRequest.new
949
+ #
950
+ # # Call the create_custom_constraint method.
951
+ # result = client.create_custom_constraint request
952
+ #
953
+ # # The returned object is of type Google::Cloud::OrgPolicy::V2::CustomConstraint.
954
+ # p result
955
+ #
956
+ def create_custom_constraint request, options = nil
957
+ raise ::ArgumentError, "request must be provided" if request.nil?
958
+
959
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::OrgPolicy::V2::CreateCustomConstraintRequest
960
+
961
+ # Converts hash and nil to an options object
962
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
963
+
964
+ # Customize the options with defaults
965
+ metadata = @config.rpcs.create_custom_constraint.metadata.to_h
966
+
967
+ # Set x-goog-api-client and x-goog-user-project headers
968
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
969
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
970
+ gapic_version: ::Google::Cloud::OrgPolicy::V2::VERSION
971
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
972
+
973
+ header_params = {}
974
+ if request.parent
975
+ header_params["parent"] = request.parent
976
+ end
977
+
978
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
979
+ metadata[:"x-goog-request-params"] ||= request_params_header
980
+
981
+ options.apply_defaults timeout: @config.rpcs.create_custom_constraint.timeout,
982
+ metadata: metadata,
983
+ retry_policy: @config.rpcs.create_custom_constraint.retry_policy
984
+
985
+ options.apply_defaults timeout: @config.timeout,
986
+ metadata: @config.metadata,
987
+ retry_policy: @config.retry_policy
988
+
989
+ @org_policy_stub.call_rpc :create_custom_constraint, request, options: options do |response, operation|
990
+ yield response, operation if block_given?
991
+ return response
992
+ end
993
+ rescue ::GRPC::BadStatus => e
994
+ raise ::Google::Cloud::Error.from_error(e)
995
+ end
996
+
997
+ ##
998
+ # Updates a custom constraint.
999
+ #
1000
+ # Returns a `google.rpc.Status` with `google.rpc.Code.NOT_FOUND` if the
1001
+ # constraint does not exist.
1002
+ #
1003
+ # Note: the supplied policy will perform a full overwrite of all
1004
+ # fields.
1005
+ #
1006
+ # @overload update_custom_constraint(request, options = nil)
1007
+ # Pass arguments to `update_custom_constraint` via a request object, either of type
1008
+ # {::Google::Cloud::OrgPolicy::V2::UpdateCustomConstraintRequest} or an equivalent Hash.
1009
+ #
1010
+ # @param request [::Google::Cloud::OrgPolicy::V2::UpdateCustomConstraintRequest, ::Hash]
1011
+ # A request object representing the call parameters. Required. To specify no
1012
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
1013
+ # @param options [::Gapic::CallOptions, ::Hash]
1014
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1015
+ #
1016
+ # @overload update_custom_constraint(custom_constraint: nil)
1017
+ # Pass arguments to `update_custom_constraint` via keyword arguments. Note that at
1018
+ # least one keyword argument is required. To specify no parameters, or to keep all
1019
+ # the default parameter values, pass an empty Hash as a request object (see above).
1020
+ #
1021
+ # @param custom_constraint [::Google::Cloud::OrgPolicy::V2::CustomConstraint, ::Hash]
1022
+ # Required. `CustomConstraint` to update.
1023
+ #
1024
+ # @yield [response, operation] Access the result along with the RPC operation
1025
+ # @yieldparam response [::Google::Cloud::OrgPolicy::V2::CustomConstraint]
1026
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
1027
+ #
1028
+ # @return [::Google::Cloud::OrgPolicy::V2::CustomConstraint]
1029
+ #
1030
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
1031
+ #
1032
+ # @example Basic example
1033
+ # require "google/cloud/org_policy/v2"
1034
+ #
1035
+ # # Create a client object. The client can be reused for multiple calls.
1036
+ # client = Google::Cloud::OrgPolicy::V2::OrgPolicy::Client.new
1037
+ #
1038
+ # # Create a request. To set request fields, pass in keyword arguments.
1039
+ # request = Google::Cloud::OrgPolicy::V2::UpdateCustomConstraintRequest.new
1040
+ #
1041
+ # # Call the update_custom_constraint method.
1042
+ # result = client.update_custom_constraint request
1043
+ #
1044
+ # # The returned object is of type Google::Cloud::OrgPolicy::V2::CustomConstraint.
1045
+ # p result
1046
+ #
1047
+ def update_custom_constraint request, options = nil
1048
+ raise ::ArgumentError, "request must be provided" if request.nil?
1049
+
1050
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::OrgPolicy::V2::UpdateCustomConstraintRequest
1051
+
1052
+ # Converts hash and nil to an options object
1053
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1054
+
1055
+ # Customize the options with defaults
1056
+ metadata = @config.rpcs.update_custom_constraint.metadata.to_h
1057
+
1058
+ # Set x-goog-api-client and x-goog-user-project headers
1059
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1060
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1061
+ gapic_version: ::Google::Cloud::OrgPolicy::V2::VERSION
1062
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1063
+
1064
+ header_params = {}
1065
+ if request.custom_constraint&.name
1066
+ header_params["custom_constraint.name"] = request.custom_constraint.name
1067
+ end
1068
+
1069
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
1070
+ metadata[:"x-goog-request-params"] ||= request_params_header
1071
+
1072
+ options.apply_defaults timeout: @config.rpcs.update_custom_constraint.timeout,
1073
+ metadata: metadata,
1074
+ retry_policy: @config.rpcs.update_custom_constraint.retry_policy
1075
+
1076
+ options.apply_defaults timeout: @config.timeout,
1077
+ metadata: @config.metadata,
1078
+ retry_policy: @config.retry_policy
1079
+
1080
+ @org_policy_stub.call_rpc :update_custom_constraint, request, options: options do |response, operation|
1081
+ yield response, operation if block_given?
1082
+ return response
1083
+ end
1084
+ rescue ::GRPC::BadStatus => e
1085
+ raise ::Google::Cloud::Error.from_error(e)
1086
+ end
1087
+
1088
+ ##
1089
+ # Gets a custom constraint.
1090
+ #
1091
+ # Returns a `google.rpc.Status` with `google.rpc.Code.NOT_FOUND` if the
1092
+ # custom constraint does not exist.
1093
+ #
1094
+ # @overload get_custom_constraint(request, options = nil)
1095
+ # Pass arguments to `get_custom_constraint` via a request object, either of type
1096
+ # {::Google::Cloud::OrgPolicy::V2::GetCustomConstraintRequest} or an equivalent Hash.
1097
+ #
1098
+ # @param request [::Google::Cloud::OrgPolicy::V2::GetCustomConstraintRequest, ::Hash]
1099
+ # A request object representing the call parameters. Required. To specify no
1100
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
1101
+ # @param options [::Gapic::CallOptions, ::Hash]
1102
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1103
+ #
1104
+ # @overload get_custom_constraint(name: nil)
1105
+ # Pass arguments to `get_custom_constraint` via keyword arguments. Note that at
1106
+ # least one keyword argument is required. To specify no parameters, or to keep all
1107
+ # the default parameter values, pass an empty Hash as a request object (see above).
1108
+ #
1109
+ # @param name [::String]
1110
+ # Required. Resource name of the custom constraint. See the custom constraint
1111
+ # entry for naming requirements.
1112
+ #
1113
+ # @yield [response, operation] Access the result along with the RPC operation
1114
+ # @yieldparam response [::Google::Cloud::OrgPolicy::V2::CustomConstraint]
1115
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
1116
+ #
1117
+ # @return [::Google::Cloud::OrgPolicy::V2::CustomConstraint]
1118
+ #
1119
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
1120
+ #
1121
+ # @example Basic example
1122
+ # require "google/cloud/org_policy/v2"
1123
+ #
1124
+ # # Create a client object. The client can be reused for multiple calls.
1125
+ # client = Google::Cloud::OrgPolicy::V2::OrgPolicy::Client.new
1126
+ #
1127
+ # # Create a request. To set request fields, pass in keyword arguments.
1128
+ # request = Google::Cloud::OrgPolicy::V2::GetCustomConstraintRequest.new
1129
+ #
1130
+ # # Call the get_custom_constraint method.
1131
+ # result = client.get_custom_constraint request
1132
+ #
1133
+ # # The returned object is of type Google::Cloud::OrgPolicy::V2::CustomConstraint.
1134
+ # p result
1135
+ #
1136
+ def get_custom_constraint request, options = nil
1137
+ raise ::ArgumentError, "request must be provided" if request.nil?
1138
+
1139
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::OrgPolicy::V2::GetCustomConstraintRequest
1140
+
1141
+ # Converts hash and nil to an options object
1142
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1143
+
1144
+ # Customize the options with defaults
1145
+ metadata = @config.rpcs.get_custom_constraint.metadata.to_h
1146
+
1147
+ # Set x-goog-api-client and x-goog-user-project headers
1148
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1149
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1150
+ gapic_version: ::Google::Cloud::OrgPolicy::V2::VERSION
1151
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1152
+
1153
+ header_params = {}
1154
+ if request.name
1155
+ header_params["name"] = request.name
1156
+ end
1157
+
1158
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
1159
+ metadata[:"x-goog-request-params"] ||= request_params_header
1160
+
1161
+ options.apply_defaults timeout: @config.rpcs.get_custom_constraint.timeout,
1162
+ metadata: metadata,
1163
+ retry_policy: @config.rpcs.get_custom_constraint.retry_policy
1164
+
1165
+ options.apply_defaults timeout: @config.timeout,
1166
+ metadata: @config.metadata,
1167
+ retry_policy: @config.retry_policy
1168
+
1169
+ @org_policy_stub.call_rpc :get_custom_constraint, request, options: options do |response, operation|
1170
+ yield response, operation if block_given?
1171
+ return response
1172
+ end
1173
+ rescue ::GRPC::BadStatus => e
1174
+ raise ::Google::Cloud::Error.from_error(e)
1175
+ end
1176
+
1177
+ ##
1178
+ # Retrieves all of the custom constraints that exist on a particular
1179
+ # organization resource.
1180
+ #
1181
+ # @overload list_custom_constraints(request, options = nil)
1182
+ # Pass arguments to `list_custom_constraints` via a request object, either of type
1183
+ # {::Google::Cloud::OrgPolicy::V2::ListCustomConstraintsRequest} or an equivalent Hash.
1184
+ #
1185
+ # @param request [::Google::Cloud::OrgPolicy::V2::ListCustomConstraintsRequest, ::Hash]
1186
+ # A request object representing the call parameters. Required. To specify no
1187
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
1188
+ # @param options [::Gapic::CallOptions, ::Hash]
1189
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1190
+ #
1191
+ # @overload list_custom_constraints(parent: nil, page_size: nil, page_token: nil)
1192
+ # Pass arguments to `list_custom_constraints` via keyword arguments. Note that at
1193
+ # least one keyword argument is required. To specify no parameters, or to keep all
1194
+ # the default parameter values, pass an empty Hash as a request object (see above).
1195
+ #
1196
+ # @param parent [::String]
1197
+ # Required. The target Google Cloud resource that parents the set of custom
1198
+ # constraints that will be returned from this call. Must be in one of the
1199
+ # following forms:
1200
+ #
1201
+ # * `organizations/{organization_id}`
1202
+ # @param page_size [::Integer]
1203
+ # Size of the pages to be returned. This is currently unsupported and will
1204
+ # be ignored. The server may at any point start using this field to limit
1205
+ # page size.
1206
+ # @param page_token [::String]
1207
+ # Page token used to retrieve the next page. This is currently unsupported
1208
+ # and will be ignored. The server may at any point start using this field.
1209
+ #
1210
+ # @yield [response, operation] Access the result along with the RPC operation
1211
+ # @yieldparam response [::Gapic::PagedEnumerable<::Google::Cloud::OrgPolicy::V2::CustomConstraint>]
1212
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
1213
+ #
1214
+ # @return [::Gapic::PagedEnumerable<::Google::Cloud::OrgPolicy::V2::CustomConstraint>]
1215
+ #
1216
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
1217
+ #
1218
+ # @example Basic example
1219
+ # require "google/cloud/org_policy/v2"
1220
+ #
1221
+ # # Create a client object. The client can be reused for multiple calls.
1222
+ # client = Google::Cloud::OrgPolicy::V2::OrgPolicy::Client.new
1223
+ #
1224
+ # # Create a request. To set request fields, pass in keyword arguments.
1225
+ # request = Google::Cloud::OrgPolicy::V2::ListCustomConstraintsRequest.new
1226
+ #
1227
+ # # Call the list_custom_constraints method.
1228
+ # result = client.list_custom_constraints request
1229
+ #
1230
+ # # The returned object is of type Gapic::PagedEnumerable. You can iterate
1231
+ # # over elements, and API calls will be issued to fetch pages as needed.
1232
+ # result.each do |item|
1233
+ # # Each element is of type ::Google::Cloud::OrgPolicy::V2::CustomConstraint.
1234
+ # p item
1235
+ # end
1236
+ #
1237
+ def list_custom_constraints request, options = nil
1238
+ raise ::ArgumentError, "request must be provided" if request.nil?
1239
+
1240
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::OrgPolicy::V2::ListCustomConstraintsRequest
1241
+
1242
+ # Converts hash and nil to an options object
1243
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1244
+
1245
+ # Customize the options with defaults
1246
+ metadata = @config.rpcs.list_custom_constraints.metadata.to_h
1247
+
1248
+ # Set x-goog-api-client and x-goog-user-project headers
1249
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1250
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1251
+ gapic_version: ::Google::Cloud::OrgPolicy::V2::VERSION
1252
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1253
+
1254
+ header_params = {}
1255
+ if request.parent
1256
+ header_params["parent"] = request.parent
1257
+ end
1258
+
1259
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
1260
+ metadata[:"x-goog-request-params"] ||= request_params_header
1261
+
1262
+ options.apply_defaults timeout: @config.rpcs.list_custom_constraints.timeout,
1263
+ metadata: metadata,
1264
+ retry_policy: @config.rpcs.list_custom_constraints.retry_policy
1265
+
1266
+ options.apply_defaults timeout: @config.timeout,
1267
+ metadata: @config.metadata,
1268
+ retry_policy: @config.retry_policy
1269
+
1270
+ @org_policy_stub.call_rpc :list_custom_constraints, request, options: options do |response, operation|
1271
+ response = ::Gapic::PagedEnumerable.new @org_policy_stub, :list_custom_constraints, request, response, operation, options
1272
+ yield response, operation if block_given?
1273
+ return response
1274
+ end
1275
+ rescue ::GRPC::BadStatus => e
1276
+ raise ::Google::Cloud::Error.from_error(e)
1277
+ end
1278
+
1279
+ ##
1280
+ # Deletes a custom constraint.
1281
+ #
1282
+ # Returns a `google.rpc.Status` with `google.rpc.Code.NOT_FOUND` if the
1283
+ # constraint does not exist.
1284
+ #
1285
+ # @overload delete_custom_constraint(request, options = nil)
1286
+ # Pass arguments to `delete_custom_constraint` via a request object, either of type
1287
+ # {::Google::Cloud::OrgPolicy::V2::DeleteCustomConstraintRequest} or an equivalent Hash.
1288
+ #
1289
+ # @param request [::Google::Cloud::OrgPolicy::V2::DeleteCustomConstraintRequest, ::Hash]
1290
+ # A request object representing the call parameters. Required. To specify no
1291
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
1292
+ # @param options [::Gapic::CallOptions, ::Hash]
1293
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1294
+ #
1295
+ # @overload delete_custom_constraint(name: nil)
1296
+ # Pass arguments to `delete_custom_constraint` via keyword arguments. Note that at
1297
+ # least one keyword argument is required. To specify no parameters, or to keep all
1298
+ # the default parameter values, pass an empty Hash as a request object (see above).
1299
+ #
1300
+ # @param name [::String]
1301
+ # Required. Name of the custom constraint to delete.
1302
+ # See the custom constraint entry for naming rules.
1303
+ #
1304
+ # @yield [response, operation] Access the result along with the RPC operation
1305
+ # @yieldparam response [::Google::Protobuf::Empty]
1306
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
1307
+ #
1308
+ # @return [::Google::Protobuf::Empty]
1309
+ #
1310
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
1311
+ #
1312
+ # @example Basic example
1313
+ # require "google/cloud/org_policy/v2"
1314
+ #
1315
+ # # Create a client object. The client can be reused for multiple calls.
1316
+ # client = Google::Cloud::OrgPolicy::V2::OrgPolicy::Client.new
1317
+ #
1318
+ # # Create a request. To set request fields, pass in keyword arguments.
1319
+ # request = Google::Cloud::OrgPolicy::V2::DeleteCustomConstraintRequest.new
1320
+ #
1321
+ # # Call the delete_custom_constraint method.
1322
+ # result = client.delete_custom_constraint request
1323
+ #
1324
+ # # The returned object is of type Google::Protobuf::Empty.
1325
+ # p result
1326
+ #
1327
+ def delete_custom_constraint request, options = nil
1328
+ raise ::ArgumentError, "request must be provided" if request.nil?
1329
+
1330
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::OrgPolicy::V2::DeleteCustomConstraintRequest
1331
+
1332
+ # Converts hash and nil to an options object
1333
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1334
+
1335
+ # Customize the options with defaults
1336
+ metadata = @config.rpcs.delete_custom_constraint.metadata.to_h
1337
+
1338
+ # Set x-goog-api-client and x-goog-user-project headers
1339
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1340
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1341
+ gapic_version: ::Google::Cloud::OrgPolicy::V2::VERSION
1342
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1343
+
1344
+ header_params = {}
1345
+ if request.name
1346
+ header_params["name"] = request.name
1347
+ end
1348
+
1349
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
1350
+ metadata[:"x-goog-request-params"] ||= request_params_header
1351
+
1352
+ options.apply_defaults timeout: @config.rpcs.delete_custom_constraint.timeout,
1353
+ metadata: metadata,
1354
+ retry_policy: @config.rpcs.delete_custom_constraint.retry_policy
1355
+
1356
+ options.apply_defaults timeout: @config.timeout,
1357
+ metadata: @config.metadata,
1358
+ retry_policy: @config.retry_policy
1359
+
1360
+ @org_policy_stub.call_rpc :delete_custom_constraint, request, options: options do |response, operation|
1361
+ yield response, operation if block_given?
1362
+ return response
1363
+ end
1364
+ rescue ::GRPC::BadStatus => e
1365
+ raise ::Google::Cloud::Error.from_error(e)
1366
+ end
1367
+
869
1368
  ##
870
1369
  # Configuration class for the OrgPolicy API.
871
1370
  #
@@ -985,6 +1484,14 @@ module Google
985
1484
  end
986
1485
  end
987
1486
 
1487
+ ##
1488
+ # Configuration for the channel pool
1489
+ # @return [::Gapic::ServiceStub::ChannelPool::Configuration]
1490
+ #
1491
+ def channel_pool
1492
+ @channel_pool ||= ::Gapic::ServiceStub::ChannelPool::Configuration.new
1493
+ end
1494
+
988
1495
  ##
989
1496
  # Configuration RPC class for the OrgPolicy API.
990
1497
  #
@@ -1038,6 +1545,31 @@ module Google
1038
1545
  # @return [::Gapic::Config::Method]
1039
1546
  #
1040
1547
  attr_reader :delete_policy
1548
+ ##
1549
+ # RPC-specific configuration for `create_custom_constraint`
1550
+ # @return [::Gapic::Config::Method]
1551
+ #
1552
+ attr_reader :create_custom_constraint
1553
+ ##
1554
+ # RPC-specific configuration for `update_custom_constraint`
1555
+ # @return [::Gapic::Config::Method]
1556
+ #
1557
+ attr_reader :update_custom_constraint
1558
+ ##
1559
+ # RPC-specific configuration for `get_custom_constraint`
1560
+ # @return [::Gapic::Config::Method]
1561
+ #
1562
+ attr_reader :get_custom_constraint
1563
+ ##
1564
+ # RPC-specific configuration for `list_custom_constraints`
1565
+ # @return [::Gapic::Config::Method]
1566
+ #
1567
+ attr_reader :list_custom_constraints
1568
+ ##
1569
+ # RPC-specific configuration for `delete_custom_constraint`
1570
+ # @return [::Gapic::Config::Method]
1571
+ #
1572
+ attr_reader :delete_custom_constraint
1041
1573
 
1042
1574
  # @private
1043
1575
  def initialize parent_rpcs = nil
@@ -1055,6 +1587,16 @@ module Google
1055
1587
  @update_policy = ::Gapic::Config::Method.new update_policy_config
1056
1588
  delete_policy_config = parent_rpcs.delete_policy if parent_rpcs.respond_to? :delete_policy
1057
1589
  @delete_policy = ::Gapic::Config::Method.new delete_policy_config
1590
+ create_custom_constraint_config = parent_rpcs.create_custom_constraint if parent_rpcs.respond_to? :create_custom_constraint
1591
+ @create_custom_constraint = ::Gapic::Config::Method.new create_custom_constraint_config
1592
+ update_custom_constraint_config = parent_rpcs.update_custom_constraint if parent_rpcs.respond_to? :update_custom_constraint
1593
+ @update_custom_constraint = ::Gapic::Config::Method.new update_custom_constraint_config
1594
+ get_custom_constraint_config = parent_rpcs.get_custom_constraint if parent_rpcs.respond_to? :get_custom_constraint
1595
+ @get_custom_constraint = ::Gapic::Config::Method.new get_custom_constraint_config
1596
+ list_custom_constraints_config = parent_rpcs.list_custom_constraints if parent_rpcs.respond_to? :list_custom_constraints
1597
+ @list_custom_constraints = ::Gapic::Config::Method.new list_custom_constraints_config
1598
+ delete_custom_constraint_config = parent_rpcs.delete_custom_constraint if parent_rpcs.respond_to? :delete_custom_constraint
1599
+ @delete_custom_constraint = ::Gapic::Config::Method.new delete_custom_constraint_config
1058
1600
 
1059
1601
  yield self if block_given?
1060
1602
  end